* @see org.apache.tuscany.core.extension.ExternalServiceBuilderSupport#createExternalServiceContextFactory(org.apache.tuscany.model.assembly.ExternalService)
*/
@Override
protected ExternalServiceContextFactory createExternalServiceContextFactory(ExternalService externalService) {
WebServiceBinding wsBinding = (WebServiceBinding) externalService.getBindings().get(0);
Definition wsdlDefinition = wsBinding.getWSDLDefinition();
WebServicePortMetaData wsPortMetaData = new WebServicePortMetaData(wsdlDefinition, wsBinding.getWSDLPort(), wsBinding.getURI(), false);
ServiceClient serviceClient = createServiceClient(externalService.getName(), wsdlDefinition, wsPortMetaData);
TypeHelper typeHelper = wsBinding.getTypeHelper();
ClassLoader cl = wsBinding.getResourceLoader().getClassLoader();
Class serviceInterface = externalService.getConfiguredService().getPort().getServiceContract().getInterface();
Map<String, Axis2OperationInvoker> invokers = createOperationInvokers(serviceInterface, typeHelper, cl, wsPortMetaData);
Axis2ServiceInvoker axis2Client = new Axis2ServiceInvoker(serviceClient, invokers);