| @@ 89-115 (lines=27) @@ | ||
| 86 | * @param object $config configuration object to create argument from. |
|
| 87 | * @return mixed build argument |
|
| 88 | */ |
|
| 89 | protected function buildArg($config){
|
|
| 90 | if(trim((string)$config['value']) != ''){
|
|
| 91 | $arg = (string)$config['value']; |
|
| 92 | }elseif($config->getName() == 'value'){
|
|
| 93 | $arg = (string)$config; |
|
| 94 | }elseif($config->getName() == 'list'){
|
|
| 95 | $arg = array(); |
|
| 96 | foreach($config->children() as $entry){
|
|
| 97 | if($entry->getName() == 'value'){
|
|
| 98 | if($entry['key']){
|
|
| 99 | $arg[(string)$entry['key']] = (string)$entry; |
|
| 100 | }else{
|
|
| 101 | $arg[] = (string)$entry; |
|
| 102 | } |
|
| 103 | }elseif($entry->getName() == 'service'){
|
|
| 104 | $arg[] = $this->provideService($entry); |
|
| 105 | } |
|
| 106 | } |
|
| 107 | }elseif($config->getName() == 'service'){
|
|
| 108 | $arg = self::provideService($config); |
|
| 109 | }elseif($config->list){
|
|
| 110 | $arg = $this->buildArg($config->list); |
|
| 111 | }elseif($config->service){
|
|
| 112 | $arg = $this->buildArg($config->service); |
|
| 113 | } |
|
| 114 | return $arg; |
|
| 115 | } |
|
| 116 | ||
| 117 | /** |
|
| 118 | * Builds and modifies an arbitrary service/object instance from a config-obect. |
|
| @@ 655-681 (lines=27) @@ | ||
| 652 | * @param object $config configuration object to create argument from. |
|
| 653 | * @return mixed build argument |
|
| 654 | */ |
|
| 655 | protected function buildArg($config){
|
|
| 656 | if(trim((string)$config['value']) != ''){
|
|
| 657 | $arg = (string)$config['value']; |
|
| 658 | }elseif($config->getName() == 'value'){
|
|
| 659 | $arg = (string)$config; |
|
| 660 | }elseif($config->getName() == 'list'){
|
|
| 661 | $arg = array(); |
|
| 662 | foreach($config->children() as $entry){
|
|
| 663 | if($entry->getName() == 'value'){
|
|
| 664 | if($entry['key']){
|
|
| 665 | $arg[(string)$entry['key']] = (string)$entry; |
|
| 666 | }else{
|
|
| 667 | $arg[] = (string)$entry; |
|
| 668 | } |
|
| 669 | }elseif($entry->getName() == 'service'){
|
|
| 670 | $arg[] = $this->provideService($entry); |
|
| 671 | } |
|
| 672 | } |
|
| 673 | }elseif($config->getName() == 'service'){
|
|
| 674 | $arg = $this->provideService($config); |
|
| 675 | }elseif($config->list){
|
|
| 676 | $arg = $this->buildArg($config->list); |
|
| 677 | }elseif($config->service){
|
|
| 678 | $arg = $this->buildArg($config->service); |
|
| 679 | } |
|
| 680 | return $arg; |
|
| 681 | } |
|
| 682 | ||
| 683 | ||
| 684 | /** |
|