diff --git a/src/BeSimple/SoapBundle/DependencyInjection/BeSimpleSoapExtension.php b/src/BeSimple/SoapBundle/DependencyInjection/BeSimpleSoapExtension.php index 941cbf0..45e5603 100644 --- a/src/BeSimple/SoapBundle/DependencyInjection/BeSimpleSoapExtension.php +++ b/src/BeSimple/SoapBundle/DependencyInjection/BeSimpleSoapExtension.php @@ -57,6 +57,11 @@ class BeSimpleSoapExtension extends Extension $container->setParameter('besimple.soap.definition.dumper.options.stylesheet', $config['wsdl_dumper']['stylesheet']); + $container + ->getDefinition('besimple.soap.server.classmap') + ->addMethodCall('set', array($config['services_classmap'])) + ; + foreach($config['services'] as $name => $serviceConfig) { $serviceConfig['name'] = $name; $this->createWebServiceContext($serviceConfig, $container); diff --git a/src/BeSimple/SoapBundle/DependencyInjection/Configuration.php b/src/BeSimple/SoapBundle/DependencyInjection/Configuration.php index f7fa94d..76c9809 100644 --- a/src/BeSimple/SoapBundle/DependencyInjection/Configuration.php +++ b/src/BeSimple/SoapBundle/DependencyInjection/Configuration.php @@ -97,6 +97,8 @@ class Configuration { $rootNode ->children() + + // "services" section ->arrayNode('services') ->useAttributeAsKey('name') ->prototype('array') @@ -120,6 +122,13 @@ class Configuration ->end() ->end() ->end() + + // "services_classmap" section + ->arrayNode('services_classmap') + ->useAttributeAsKey('name') + ->prototype('scalar')->end() + ->end() + ->end() ->end() ; }