Completed
Push — master ( cac1be...eadaa3 )
by Thomas
04:35
created

GeneratorFactory   A

Complexity

Total Complexity 12

Size/Duplication

Total Lines 53
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 10

Test Coverage

Coverage 91.67%

Importance

Changes 3
Bugs 0 Features 0
Metric Value
wmc 12
c 3
b 0
f 0
lcom 0
cbo 10
dl 0
loc 53
ccs 22
cts 24
cp 0.9167
rs 10

2 Methods

Rating   Name   Duplication   Size   Complexity  
B createActionTraitGenerator() 0 18 6
B createJsonResponseGenerator() 0 18 6
1
<?php
2
namespace keeko\tools\generator;
3
4
use keeko\tools\services\CommandService;
5
6
class GeneratorFactory {
7
	
8
	/**
9
	 * Creates a generator for the given trait type
10
	 * 
11
	 * @param string $type
12
	 * @return AbstractActionTraitGenerator
13
	 */
14 5
	public static function createActionTraitGenerator($type, CommandService $service) {
15
		switch ($type) {
16 5
			case 'list':
17 4
				return new ListActionTraitGenerator($service);
18
				
19 5
			case 'create':
20 5
				return new CreateActionTraitGenerator($service);
21
				
22 3
			case 'update':
23 3
				return new UpdateActionTraitGenerator($service);
24
				
25 3
			case 'read':
26 3
				return new ReadActionTraitGenerator($service);
27
				
28 3
			case 'delete':
29 3
				return new DeleteActionTraitGenerator($service);
30
		}
31
	}
32
	
33
	/**
34
	 * Creates a generator for the given json respose
35
	 * 
36
	 * @param string $type
37
	 * @param CommandService $service
38
	 */
39 2
	public static function createJsonResponseGenerator($type, CommandService $service) {
40
		switch ($type) {
41 2
			case 'list':
42 1
				return new ListJsonResponseGenerator($service);
43
		
44 2
			case 'create':
45 2
				return new CreateJsonResponseGenerator($service);
46
		
47 1
			case 'update':
48 1
				return new UpdateJsonResponseGenerator($service);
49
		
50 1
			case 'read':
51 1
				return new ReadJsonResponseGenerator($service);
52
		
53 1
			case 'delete':
54 1
				return new DeleteJsonResponseGenerator($service);
55
		}
56
	}
57
58
}
59