use of org.jboss.wsf.spi.metadata.j2ee.serviceref.UnifiedHandlerChainsMetaData in project wildfly by wildfly.
the class WSHandlerChainAnnotationProcessor method getHandlers.
private static Set<String> getHandlers(final InputStream is) throws IOException {
final Set<String> retVal = new HashSet<String>();
final UnifiedHandlerChainsMetaData handlerChainsUMDM = UnifiedHandlerChainsMetaDataParser.parse(is);
if (handlerChainsUMDM != null) {
for (final UnifiedHandlerChainMetaData handlerChainUMDM : handlerChainsUMDM.getHandlerChains()) {
for (final UnifiedHandlerMetaData handlerUMDM : handlerChainUMDM.getHandlers()) {
retVal.add(handlerUMDM.getHandlerClass());
}
}
}
return retVal;
}
use of org.jboss.wsf.spi.metadata.j2ee.serviceref.UnifiedHandlerChainsMetaData in project wildfly by wildfly.
the class WSRefUtils method translate.
static UnifiedServiceRefMetaData translate(final ServiceReferenceMetaData serviceRefMD) {
UnifiedServiceRefMetaDataBuilder builder = new UnifiedServiceRefMetaDataBuilder();
builder.setServiceRefName(serviceRefMD.getName());
builder.setServiceRefType(serviceRefMD.getServiceRefType());
builder.setServiceInterface(serviceRefMD.getServiceInterface());
builder.setWsdlFile(serviceRefMD.getWsdlFile());
builder.setMappingFile(serviceRefMD.getJaxrpcMappingFile());
builder.setServiceQName(serviceRefMD.getServiceQname());
// propagate port components
final Collection<? extends PortComponentRef> portComponentsMD = serviceRefMD.getPortComponentRef();
if (portComponentsMD != null) {
for (final PortComponentRef portComponentMD : portComponentsMD) {
final UnifiedPortComponentRefMetaData portComponentUMDM = getUnifiedPortComponentRefMetaData(portComponentMD);
if (portComponentUMDM.getServiceEndpointInterface() != null || portComponentUMDM.getPortQName() != null) {
builder.addPortComponentRef(portComponentUMDM);
} else {
WSLogger.ROOT_LOGGER.ignoringPortComponentRef(portComponentUMDM);
}
}
}
// propagate handlers
final Collection<ServiceReferenceHandlerMetaData> handlersMD = serviceRefMD.getHandlers();
if (handlersMD != null) {
for (final ServiceReferenceHandlerMetaData handlerMD : handlersMD) {
final UnifiedHandlerMetaData handlerUMDM = getUnifiedHandlerMetaData(handlerMD);
builder.addHandler(handlerUMDM);
}
}
// propagate handler chains
ServiceReferenceHandlerChainsMetaData handlerChainsMD = serviceRefMD.getHandlerChains();
if (handlerChainsMD != null) {
final UnifiedHandlerChainsMetaData handlerChainsUMDM = getUnifiedHandlerChainsMetaData(handlerChainsMD);
builder.setHandlerChains(handlerChainsUMDM);
}
// propagate jboss specific MD
if (serviceRefMD instanceof JBossServiceReferenceMetaData) {
final JBossServiceReferenceMetaData jbossServiceRefMD = (JBossServiceReferenceMetaData) serviceRefMD;
builder.setServiceImplClass(jbossServiceRefMD.getServiceClass());
builder.setConfigName(jbossServiceRefMD.getConfigName());
builder.setConfigFile(jbossServiceRefMD.getConfigFile());
builder.setWsdlOverride(jbossServiceRefMD.getWsdlOverride());
builder.setHandlerChain(jbossServiceRefMD.getHandlerChain());
}
return builder.build();
}
use of org.jboss.wsf.spi.metadata.j2ee.serviceref.UnifiedHandlerChainsMetaData in project wildfly by wildfly.
the class XTSHandlerDeploymentProcessor method updateXTSEndpoint.
private boolean updateXTSEndpoint(final String endpoint, final EndpointMetaData endpointMetaData, final List<WebserviceDescriptionMetaData> webserviceDescriptions, final DeploymentUnit unit) {
if (endpointMetaData.isWebservice()) {
final List<String> handlers = new ArrayList<String>();
if (endpointMetaData.isBridgeEnabled()) {
handlers.add(TX_BRIDGE_HANDLER);
}
handlers.add(TX_CONTEXT_HANDLER);
if (!isAnyOfHandlersRegistered(unit, endpoint, handlers)) {
final UnifiedHandlerChainsMetaData unifiedHandlerChainsMetaData = buildHandlerChains(handlers);
final QName portQname = endpointMetaData.getWebServiceAnnotation().buildPortQName();
webserviceDescriptions.add(new WebserviceDescriptionMetaData(null, null, null, buildPortComponent(endpointMetaData.isEJB(), endpoint, portQname, unifiedHandlerChainsMetaData)));
registerHandlersWithAS(unit, endpoint, handlers);
return true;
}
}
return false;
}
use of org.jboss.wsf.spi.metadata.j2ee.serviceref.UnifiedHandlerChainsMetaData in project wildfly by wildfly.
the class WSRefUtils method getUnifiedHandlerChainsMetaData.
private static UnifiedHandlerChainsMetaData getUnifiedHandlerChainsMetaData(final ServiceReferenceHandlerChainsMetaData handlerChainsMD) {
List<UnifiedHandlerChainMetaData> uhcmds = new LinkedList<UnifiedHandlerChainMetaData>();
for (final ServiceReferenceHandlerChainMetaData handlerChainMD : handlerChainsMD.getHandlers()) {
List<UnifiedHandlerMetaData> uhmds = new LinkedList<UnifiedHandlerMetaData>();
for (final ServiceReferenceHandlerMetaData handlerMD : handlerChainMD.getHandler()) {
final UnifiedHandlerMetaData handlerUMDM = getUnifiedHandlerMetaData(handlerMD);
uhmds.add(handlerUMDM);
}
uhcmds.add(new UnifiedHandlerChainMetaData(handlerChainMD.getServiceNamePattern(), handlerChainMD.getPortNamePattern(), handlerChainMD.getProtocolBindings(), uhmds, false, null));
}
return new UnifiedHandlerChainsMetaData(uhcmds);
}
Aggregations