Conditions | 1 |
Paths | 1 |
Total Lines | 58 |
Lines | 0 |
Ratio | 0 % |
Changes | 0 |
Small methods make your code easier to understand, in particular if combined with a good name. Besides, if your method is small, finding a good name is usually much easier.
For example, if you find yourself adding comments to a method's body, this is usually a good sign to extract the commented part to a new method, and use the comment as a starting point when coming up with a good name for this new method.
Commonly applied refactorings include:
If many parameters/temporary variables are present:
1 | <?php |
||
49 | public function execute($input = null) |
||
50 | { |
||
51 | $this->validateInput($input); |
||
52 | |||
53 | $date = date('Y-m-d H:i:s'); |
||
54 | $filesystem = $this->filesystem; |
||
55 | $pathToApplication = $input[self::INPUT_KEY_PATH_TO_APPLICATION]; |
||
56 | $pathToAutoload = $input[self::INPUT_KEY_PATH_TO_AUTOLOAD]; |
||
57 | $pathToConfiguration = $input[self::INPUT_KEY_PATH_TO_CONFIGURATION]; |
||
58 | $pathToCli = dirname($input[self::INPUT_KEY_PATH_TO_CLI]); |
||
59 | $prefix = $input[self::INPUT_KEY_PREFIX_CLI]; |
||
60 | |||
61 | $pathFromCliToAutoload = DIRECTORY_SEPARATOR . $filesystem->makePathRelative($pathToAutoload, $pathToCli); |
||
62 | $pathFromCliToApplication = DIRECTORY_SEPARATOR . $filesystem->makePathRelative($pathToApplication, $pathToCli); |
||
63 | $pathFromCliToConfiguration = DIRECTORY_SEPARATOR . $filesystem->makePathRelative($pathToConfiguration, $pathToCli); |
||
64 | |||
65 | //@todo a bug in symfony filesystem? |
||
66 | $pathFromCliToAutoload = substr($pathFromCliToAutoload, 0, -1); |
||
67 | $pathFromCliToApplication = substr($pathFromCliToApplication, 0, -1); |
||
68 | $pathFromCliToConfiguration = substr($pathFromCliToConfiguration, 0, -1); |
||
69 | |||
70 | $output = <<<EOC |
||
71 | #!/usr/bin/env php |
||
72 | <?php |
||
73 | /** |
||
74 | * @author Net\Bazzline Zf Cli Generator |
||
75 | * @since $date |
||
76 | */ |
||
77 | |||
78 | use Net\Bazzline\Component\Cli\Readline\ManagerFactory; |
||
79 | |||
80 | require_once __DIR__ . '$pathFromCliToAutoload'; |
||
81 | |||
82 | try { |
||
83 | \$factory = new ManagerFactory(); |
||
84 | \$manager = \$factory->create(); |
||
85 | \$callApplication = function() { |
||
86 | \$line = readline_info('line_buffer'); |
||
87 | \$command = '/usr/bin/env php ' . |
||
88 | __DIR__ . '$pathFromCliToApplication ' . |
||
89 | \$line; |
||
90 | |||
91 | passthru(\$command); |
||
92 | }; |
||
93 | \$configuration = require_once(__DIR__ . '$pathFromCliToConfiguration'); |
||
94 | |||
95 | \$manager->setConfiguration(\$configuration); |
||
96 | \$manager->setPrompt('$prefix'); |
||
97 | \$manager->run(); |
||
98 | } catch (Exception \$exception) { |
||
99 | echo '----------------' . PHP_EOL; |
||
100 | echo \$exception->getMessage() . PHP_EOL; |
||
101 | return 1; |
||
102 | } |
||
103 | EOC; |
||
104 | |||
105 | return $output; |
||
106 | } |
||
107 | |||
163 |