Code Duplication    Length = 22-24 lines in 4 locations

src/generator/action/base/ModelCreateActionTraitGenerator.php 1 location

@@ 9-30 (lines=22) @@
6
use keeko\tools\generator\AbstractActionTraitGenerator;
7
use keeko\tools\utils\NameUtils;
8
9
class ModelCreateActionTraitGenerator extends AbstractActionTraitGenerator {
10
	
11
	/* (non-PHPdoc)
12
	 * @see \keeko\tools\generator\AbstractTraitGenerator::addMethods()
13
	 */
14
	protected function addMethods(PhpTrait $trait, ActionSchema $action) {
15
		$modelName = $this->modelService->getModelNameByAction($action);
16
		$modelVariableName = NameUtils::toCamelCase($modelName);
17
		$modelObjectName = NameUtils::toStudlyCase($modelName);
18
		$fullModelObjectName = $this->modelService->getFullModelObjectName($action);
19
20
		// method: run(Request $request)
21
		$trait->addUseStatement($fullModelObjectName);
22
		$trait->addUseStatement('keeko\\core\\exceptions\\ValidationException');
23
		$trait->addUseStatement('keeko\\core\\utils\\HydrateUtils');
24
		$trait->setMethod($this->generateRunMethod($this->twig->render('create-run.twig', [
25
			'model' => $modelVariableName,
26
			'class' => $modelObjectName,
27
			'fields' => $this->codegenService->getWriteFields($modelName)
28
		])));
29
	}
30
}

src/generator/action/base/ModelDeleteActionTraitGenerator.php 1 location

@@ 9-32 (lines=24) @@
6
use keeko\tools\generator\AbstractActionTraitGenerator;
7
use keeko\tools\utils\NameUtils;
8
9
class ModelDeleteActionTraitGenerator extends AbstractActionTraitGenerator {
10
11
	/* (non-PHPdoc)
12
	 * @see \keeko\tools\generator\AbstractTraitGenerator::addMethods()
13
	 */
14
	protected function addMethods(PhpTrait $trait, ActionSchema $action) {
15
		$modelName = $this->modelService->getModelNameByAction($action);
16
		$modelVariableName = NameUtils::toCamelCase($modelName);
17
		$modelObjectName = NameUtils::toStudlyCase($modelName);
18
		$fullModelObjectName = $this->modelService->getFullModelObjectName($action);
19
20
		// method: configureParams(OptionsResolver $resolver)
21
		$this->addConfigureParamsMethod($trait, $this->twig->render('delete-configureParams.twig'));
22
23
		// method: run(Request $request)
24
		$trait->addUseStatement($fullModelObjectName . 'Query');
25
		$trait->addUseStatement('Symfony\\Component\\Routing\\Exception\\ResourceNotFoundException');
26
		$trait->setMethod($this->generateRunMethod($this->twig->render('delete-run.twig', [
27
			'model' => $modelVariableName,
28
			'class' => $modelObjectName
29
		])));
30
	}
31
32
}
33

src/generator/action/base/ModelListActionTraitGenerator.php 1 location

@@ 9-31 (lines=23) @@
6
use keeko\tools\generator\AbstractActionTraitGenerator;
7
use keeko\tools\utils\NameUtils;
8
9
class ModelListActionTraitGenerator extends AbstractActionTraitGenerator {
10
		
11
	/* (non-PHPdoc)
12
	 * @see \keeko\tools\generator\AbstractTraitGenerator::addMethods()
13
	 */
14
	protected function addMethods(PhpTrait $trait, ActionSchema $action) {
15
		$modelName = $this->modelService->getModelNameByAction($action);
16
		$modelVariableName = NameUtils::toCamelCase($modelName);
17
		$modelObjectName = NameUtils::toStudlyCase($modelName);
18
		$fullModelObjectName = $this->modelService->getFullModelObjectName($action);
19
		
20
		// method: configureParams(OptionsResolver $resolver)
21
		$this->addConfigureParamsMethod($trait, $this->twig->render('list-configureParams.twig'));
22
		
23
		// method: run(Request $request)
24
		$trait->addUseStatement($fullModelObjectName . 'Query');
25
		$trait->setMethod($this->generateRunMethod($this->twig->render('list-run.twig', [
26
			'model' => $modelVariableName,
27
			'class' => $modelObjectName
28
		])));
29
	}
30
31
}
32

src/generator/action/base/ModelReadActionTraitGenerator.php 1 location

@@ 9-32 (lines=24) @@
6
use keeko\tools\generator\AbstractActionTraitGenerator;
7
use keeko\tools\utils\NameUtils;
8
9
class ModelReadActionTraitGenerator extends AbstractActionTraitGenerator {
10
	
11
	/* (non-PHPdoc)
12
	 * @see \keeko\tools\generator\AbstractTraitGenerator::addMethods()
13
	 */
14
	protected function addMethods(PhpTrait $trait, ActionSchema $action) {
15
		$modelName = $this->modelService->getModelNameByAction($action);
16
		$modelVariableName = NameUtils::toCamelCase($modelName);
17
		$modelObjectName = NameUtils::toStudlyCase($modelName);
18
		$fullModelObjectName = $this->modelService->getFullModelObjectName($action);
19
	
20
		// method: configureParams(OptionsResolver $resolver)
21
		$this->addConfigureParamsMethod($trait, $this->twig->render('read-configureParams.twig'));
22
	
23
		// method: run(Request $request)
24
		$trait->addUseStatement($fullModelObjectName . 'Query');
25
		$trait->addUseStatement('Symfony\\Component\\Routing\\Exception\\ResourceNotFoundException');
26
		$trait->setMethod($this->generateRunMethod($this->twig->render('read-run.twig', [
27
			'model' => $modelVariableName,
28
			'class' => $modelObjectName
29
		])));
30
	}
31
	
32
}