diff --git a/composer.json b/composer.json index 1eeac3d..e4b6116 100644 --- a/composer.json +++ b/composer.json @@ -10,6 +10,7 @@ "require": { "cleverage/doctrine-process-bundle": "dev-prepare-release", "cleverage/process-bundle": "dev-prepare-release", + "cleverage/soap-process-bundle": "dev-prepare-release", "cleverage/rest-process-bundle": "dev-prepare-release", "cleverage/ui-process-bundle": "dev-prepare-release", "symfony/flex": "^v2.3" diff --git a/config/bundles.php b/config/bundles.php index 2ac7593..b9ae9e9 100644 --- a/config/bundles.php +++ b/config/bundles.php @@ -15,5 +15,6 @@ Symfony\Bundle\WebProfilerBundle\WebProfilerBundle::class => ['dev' => true, 'test' => true], CleverAge\DoctrineProcessBundle\CleverAgeDoctrineProcessBundle::class => ['all' => true], Doctrine\Bundle\FixturesBundle\DoctrineFixturesBundle::class => ['dev' => true, 'test' => true], + CleverAge\SoapProcessBundle\CleverAgeSoapProcessBundle::class => ['all' => true], CleverAge\RestProcessBundle\CleverAgeRestProcessBundle::class => ['all' => true], ]; diff --git a/config/packages/process/demo.soap.yaml b/config/packages/process/demo.soap.yaml new file mode 100644 index 0000000..ced96ee --- /dev/null +++ b/config/packages/process/demo.soap.yaml @@ -0,0 +1,62 @@ +clever_age_process: + configurations: + demo.soap: + description: > + A simple process to use SoapProcessBundle + help: > + bin/console cleverage:process:execute demo.soap + options: + ui: + source: Bar + target: Foo + tasks: + entry: + service: '@CleverAge\SoapProcessBundle\Task\RequestTask' + error_strategy: 'stop' + options: + client: oorsprong_countryinfo + method: 'FullCountryInfoAllCountries' + outputs: [filter_europe] + filter_europe: + service: '@CleverAge\ProcessBundle\Task\TransformerTask' + options: + transformers: + property_accessor: + property_path: 'FullCountryInfoAllCountriesResult.tCountryInfo' + array_filter: + condition: + match: + sContinentCode: 'EU' + outputs: [phone_code, iso_code] + phone_code: + service: '@CleverAge\ProcessBundle\Task\TransformerTask' + options: + transformers: + array_map: + transformers: + cast: # Convert stdClass to array + type: 'array' + mapping: + mapping: + phoneCode: + code: '[sPhoneCode]' + flag: + code: '[sCountryFlag]' + outputs: [debug] + iso_code: + service: '@CleverAge\ProcessBundle\Task\TransformerTask' + options: + transformers: + array_map: + transformers: + cast: # Convert stdClass to array + type: 'array' + mapping: + mapping: + isoCode: + code: '[sISOCode]' + name: + code: '[sName]' + outputs: [debug] + debug: + service: '@CleverAge\ProcessBundle\Task\Debug\DebugTask' diff --git a/config/services.yaml b/config/services.yaml index c260a1d..87002c4 100644 --- a/config/services.yaml +++ b/config/services.yaml @@ -34,6 +34,20 @@ services: # add more service definitions when explicit configuration is needed # please note that last definitions always *replace* previous ones + # For cleverage/soap-process-bundle + app.cleverage_soap_process.client.oorsprong_countryinfo: + class: CleverAge\SoapProcessBundle\Client\Client + bind: + $code: 'oorsprong_countryinfo' + $wsdl: 'http://webservices.oorsprong.org/websamples.countryinfo/CountryInfoService.wso?WSDL' + $options: + trace: true + exceptions: true + calls: + - [ setSoapOptions, [ { features: SOAP_SINGLE_ELEMENT_ARRAYS} ] ] + tags: + - { name: cleverage.soap.client } + # For cleverage/rest-process-bundle app.cleverage_rest_process.client.apicarto_ign: class: CleverAge\RestProcessBundle\Client\Client diff --git a/symfony.lock b/symfony.lock index 97bf400..5e9a38c 100644 --- a/symfony.lock +++ b/symfony.lock @@ -5,6 +5,9 @@ "cleverage/process-bundle": { "version": "dev-prepare-release" }, + "cleverage/soap-process-bundle": { + "version": "dev-prepare-release" + }, "cleverage/rest-process-bundle": { "version": "dev-prepare-release" },