public DelegatingServiceRefMetaData() { delegate = new UnifiedServiceRefMetaData(); }
public void setHandlerChain(String handlerChain) { delegate.setHandlerChain(handlerChain); }
public void setServiceInterface(String serviceInterface) { delegate.setServiceInterface(serviceInterface); }
static void processType(final UnifiedServiceRefMetaData serviceRefUMDM) { final boolean isJAXRPC = serviceRefUMDM.getMappingFile() != null || "javax.xml.rpc.Service".equals(serviceRefUMDM.getServiceInterface()); serviceRefUMDM.setType(isJAXRPC ? ServiceRefType.JAXRPC : ServiceRefType.JAXWS); }
private String getServiceClassName(final UnifiedServiceRefMetaData serviceRefMD) { final String serviceImplClassName = serviceRefMD.getServiceImplClass(); if (serviceImplClassName != null) return serviceImplClassName; final String serviceInterfaceName = serviceRefMD.getServiceInterface(); if (serviceInterfaceName != null) return serviceInterfaceName; return Service.class.getName(); // fallback }
private UnifiedServiceRefMetaData getUnifiedServiceRefMetaData(UnifiedVirtualFile vfsRoot, ServiceReferenceMetaData sref) UnifiedServiceRefMetaData result = new UnifiedServiceRefMetaData(vfsRoot); result.setServiceRefName(sref.getServiceRefName()); result.setServiceInterface(sref.getServiceInterface()); result.setServiceRefType(sref.getServiceRefType()); result.setWsdlFile(sref.getWsdlFile()); result.setMappingFile(sref.getJaxrpcMappingFile()); result.setServiceQName(sref.getServiceQname()); result.setAnnotatedElement(sref.getAnnotatedElement()); result.setProcessed(sref.isProcessed()); result.addPortComponentRef(upcRef); else log.warn("Ignore <port-component-ref> without <service-endpoint-interface> and <port-qname>: " + upcRef); result.addHandler(uHandlerMetaData); result.setHandlerChains(uHandlerChains); result.setServiceImplClass(jbRef.getServiceClass()); result.setConfigName(jbRef.getConfigName()); result.setConfigFile(jbRef.getConfigFile()); result.setWsdlOverride(jbRef.getWsdlOverride()); result.setHandlerChain(jbRef.getHandlerChain());
static UnifiedServiceRefMetaData translate(final ServiceReferenceMetaData serviceRefMD, final UnifiedServiceRefMetaData serviceRefUMDM) { serviceRefUMDM.setServiceRefName(serviceRefMD.getName()); serviceRefUMDM.setServiceRefType(serviceRefMD.getServiceRefType()); serviceRefUMDM.setServiceInterface(serviceRefMD.getServiceInterface()); serviceRefUMDM.setWsdlFile(serviceRefMD.getWsdlFile()); serviceRefUMDM.setMappingFile(serviceRefMD.getJaxrpcMappingFile()); serviceRefUMDM.setServiceQName(serviceRefMD.getServiceQname()); portComponentMD); if (portComponentUMDM.getServiceEndpointInterface() != null || portComponentUMDM.getPortQName() != null) { serviceRefUMDM.addPortComponentRef(portComponentUMDM); } else { ROOT_LOGGER.ignoringPortComponentRef(portComponentUMDM); for (final ServiceReferenceHandlerMetaData handlerMD : handlersMD) { final UnifiedHandlerMetaData handlerUMDM = getUnifiedHandlerMetaData(handlerMD); serviceRefUMDM.addHandler(handlerUMDM); if (handlerChainsMD != null) { final UnifiedHandlerChainsMetaData handlerChainsUMDM = getUnifiedHandlerChainsMetaData(handlerChainsMD); serviceRefUMDM.setHandlerChains(handlerChainsUMDM);
private static UnifiedServiceRefMetaData initServiceRef(final DeploymentUnit unit, final UnifiedServiceRefMetaData serviceRefUMDM, final String type, final WSRefAnnotationWrapper annotation) throws DeploymentUnitProcessingException { // wsdl location if (!isEmpty(annotation.wsdlLocation())) { serviceRefUMDM.setWsdlFile(annotation.wsdlLocation()); } // ref class type final Module module = unit.getAttachment(Attachments.MODULE); final Class<?> typeClass = getClass(module, type); serviceRefUMDM.setServiceRefType(typeClass.getName()); // ref service interface if (!isEmpty(annotation.value())) { serviceRefUMDM.setServiceInterface(annotation.value()); } else if (Service.class.isAssignableFrom(typeClass)) { serviceRefUMDM.setServiceInterface(typeClass.getName()); } else { serviceRefUMDM.setServiceInterface(Service.class.getName()); } return serviceRefUMDM; }
private static void processUnifiedJBossServiceRefMetaData(final UnifiedServiceRefMetaData serviceRefUMDM, final ServiceReferenceMetaData serviceRefMD) { final JBossServiceReferenceMetaData jbossServiceRefMD = (JBossServiceReferenceMetaData) serviceRefMD; serviceRefUMDM.setServiceImplClass(jbossServiceRefMD.getServiceClass()); serviceRefUMDM.setConfigName(jbossServiceRefMD.getConfigName()); serviceRefUMDM.setConfigFile(jbossServiceRefMD.getConfigFile()); serviceRefUMDM.setWsdlOverride(jbossServiceRefMD.getWsdlOverride()); serviceRefUMDM.setHandlerChain(jbossServiceRefMD.getHandlerChain()); }
private static void processServiceRefType(final AnnotatedElement anElement, final UnifiedServiceRefMetaData serviceRefUMDM) { if (anElement instanceof Field) { final Class<?> targetClass = ((Field) anElement).getType(); serviceRefUMDM.setServiceRefType(targetClass.getName()); if (Service.class.isAssignableFrom(targetClass)) serviceRefUMDM.setServiceInterface(targetClass.getName()); } else if (anElement instanceof Method) { final Class<?> targetClass = ((Method) anElement).getParameterTypes()[0]; serviceRefUMDM.setServiceRefType(targetClass.getName()); if (Service.class.isAssignableFrom(targetClass)) serviceRefUMDM.setServiceInterface(targetClass.getName()); } else { final WebServiceRef serviceRefAnnotation = getWebServiceRefAnnotation(anElement, serviceRefUMDM); Class<?> targetClass = null; if (serviceRefAnnotation != null && (serviceRefAnnotation.type() != Object.class)) { targetClass = serviceRefAnnotation.type(); serviceRefUMDM.setServiceRefType(targetClass.getName()); if (Service.class.isAssignableFrom(targetClass)) serviceRefUMDM.setServiceInterface(targetClass.getName()); } } }
@Override protected List<BindingConfiguration> processDescriptorEntries(final DeploymentUnit unit, final DeploymentDescriptorEnvironment environment, final ResourceInjectionTarget resourceInjectionTarget, final ComponentDescription componentDescription, final ClassLoader classLoader, final DeploymentReflectionIndex deploymentReflectionIndex, final EEApplicationClasses applicationClasses) throws DeploymentUnitProcessingException { final ServiceReferencesMetaData serviceRefsMD = environment.getEnvironment().getServiceReferences(); if (serviceRefsMD == null) { return Collections.<BindingConfiguration> emptyList(); } final List<BindingConfiguration> bindingDescriptions = new LinkedList<BindingConfiguration>(); for (final ServiceReferenceMetaData serviceRefMD : serviceRefsMD) { final UnifiedServiceRefMetaData serviceRefUMDM = getServiceRef(unit, componentDescription, serviceRefMD); final Module module = unit.getAttachment(Attachments.MODULE); final WSRefValueSource valueSource = new WSRefValueSource(serviceRefUMDM, module.getClassLoader()); final BindingConfiguration bindingConfiguration = new BindingConfiguration(serviceRefUMDM.getServiceRefName(), valueSource); bindingDescriptions.add(bindingConfiguration); final String serviceRefTypeName = serviceRefUMDM.getServiceRefType(); final Class<?> serviceRefType = getClass(classLoader, serviceRefTypeName); processInjectionTargets(resourceInjectionTarget, valueSource, classLoader, deploymentReflectionIndex, serviceRefMD, serviceRefType); } return bindingDescriptions; }
public String getServiceRefName() { return delegate.getServiceRefName(); }
URL wsdlLocation = serviceRef.getWsdlLocation(); if (wsdlLocation != null) QName serviceName = serviceRef.getServiceQName(); JavaWsdlMapping javaWsdlMapping = getJavaWsdlMapping(serviceRef); jaxrpcService = new ServiceImpl(serviceName, wsdlLocation, javaWsdlMapping, serviceRef); Class<?> siClass = SecurityActions.loadClass(contextCL, serviceRef.getServiceInterface()); if (Service.class.isAssignableFrom(siClass) == false) throw MESSAGES.interfaceDoesNotImplementJAXRPCService(siClass.getName()); for (UnifiedPortComponentRefMetaData pcr : serviceRef.getPortComponentRefs())
private static UnifiedServiceRefMetaData getServiceRef(final DeploymentUnit unit, final ComponentDescription componentDescription, final String serviceRefName) { final WSReferences wsRefRegistry = getWSRefRegistry(unit); final String cacheKey = getCacheKey(componentDescription, serviceRefName); UnifiedServiceRefMetaData serviceRefUMDM = wsRefRegistry.get(cacheKey); if (serviceRefUMDM == null) { serviceRefUMDM = new UnifiedServiceRefMetaData(getUnifiedVirtualFile(unit)); serviceRefUMDM.setServiceRefName(serviceRefName); wsRefRegistry.add(cacheKey, serviceRefUMDM); } return serviceRefUMDM; }
public void merge(ServiceRefMetaData sref) { UnifiedServiceRefMetaData sourceRef = (UnifiedServiceRefMetaData)sref; serviceImplClass = sourceRef.serviceImplClass; configName = sourceRef.configName; configFile = sourceRef.configFile; wsdlOverride = sourceRef.wsdlOverride; handlerChain = sourceRef.handlerChain; callProperties = sourceRef.callProperties; if (serviceQName == null && sourceRef.serviceQName != null) serviceQName = sourceRef.serviceQName; for (UnifiedPortComponentRefMetaData pcref : sourceRef.getPortComponentRefs()) { String seiName = pcref.getServiceEndpointInterface(); QName portQName = pcref.getPortQName(); UnifiedPortComponentRefMetaData targetPCRef = getPortComponentRef(seiName, portQName); if (targetPCRef == null) { log.warn("Cannot find port component ref: [sei=" + seiName + ",port=" + portQName + "]"); if (seiName != null) addPortComponentRef(pcref); else log.warn("Ingore port component ref without SEI declaration: " + pcref); targetPCRef = pcref; } targetPCRef.merge(pcref); } }
public void setWsdlFile(String wsdlFile) { delegate.setWsdlFile(wsdlFile); }
public void setServiceRefType(String serviceResType) { delegate.setServiceRefType(serviceResType); }
private String getTargetClassName(final UnifiedServiceRefMetaData serviceRefMD) { return serviceRefMD.getServiceRefType(); }
public void addPortComponentRef(DelegatingPortComponentRefMetaData data) { delegate.addPortComponentRef(data.delegate); }
public void addHandler(DelegatingHandlerMetaData data) { delegate.addHandler(data.delegate); }