services() ->defaults() ->autowire() ->autoconfigure(); $services->set(SoapClientFactory::class) ->arg('$soapOptions', '%ednotif.soap_options%'); // SoapClient Guichet $services->set('ednotif.soap.guichet', SoapClient::class) ->factory([service(SoapClientFactory::class), 'create']) ->args(['%ednotif.guichet_wsdl%']); // SoapClient Métier $services->set('ednotif.soap.metier', SoapClient::class) ->factory([service(SoapClientFactory::class), 'create']) ->args(['%ednotif.metier_wsdl%']); $services->set(TokenProvider::class) ->args([ service('ednotif.soap.guichet'), '%ednotif.entreprise%', '%ednotif.zone%', '%ednotif.application%', '%ednotif.login%', '%ednotif.password%', '%ednotif.token_ttl_seconds%', service('cache.app'), ]); $services->set(BovinApi::class) ->args([ service(TokenProvider::class), service('ednotif.soap.metier'), ]); $services->alias(BovinApiInterface::class, BovinApi::class)->public(); };