| Conditions | 4 |
| Paths | 5 |
| Total Lines | 27 |
| Code Lines | 15 |
| Lines | 0 |
| Ratio | 0 % |
| Tests | 0 |
| CRAP Score | 20 |
| Changes | 2 | ||
| Bugs | 0 | Features | 0 |
| 1 | <?php |
||
| 31 | public function build(array $taskConfigurations) |
||
| 32 | { |
||
| 33 | $resolver = new OptionsResolver(); |
||
| 34 | $tasks = []; |
||
| 35 | |||
| 36 | foreach ($taskConfigurations as $taskName => $taskConfiguration) { |
||
| 37 | $resolver->clear(); |
||
| 38 | |||
| 39 | // debug mode |
||
| 40 | if ($this->debug === true) { |
||
| 41 | $taskConfiguration['debug'] = $this->debug; |
||
| 42 | } |
||
| 43 | // add copy filter in last position if required |
||
| 44 | if (!$this->hasCopyFilter($taskConfiguration)) { |
||
| 45 | $taskConfiguration['filters'][] = 'copy'; |
||
| 46 | } |
||
| 47 | |||
| 48 | $configuration = new TaskConfiguration(); |
||
| 49 | $configuration->configureOptions($resolver); |
||
| 50 | $configuration->setParameters($resolver->resolve($taskConfiguration)); |
||
| 51 | |||
| 52 | $task = new Task($taskName, $configuration); |
||
| 53 | $tasks[$taskName] = $task; |
||
| 54 | } |
||
| 55 | |||
| 56 | return $tasks; |
||
| 57 | } |
||
| 58 | |||
| 72 |