use of org.jboss.wsf.spi.deployment.DeploymentAspect in project wildfly by wildfly.
the class EndpointPublisherImpl method getPublisherDeploymentAspects.
private static synchronized List<DeploymentAspect> getPublisherDeploymentAspects() {
if (publisherDepAspects == null) {
publisherDepAspects = new LinkedList<DeploymentAspect>();
// copy to replace the EndpointServiceDeploymentAspect
List<DeploymentAspect> serverAspects = DeploymentAspectsProvider.getSortedDeploymentAspects();
for (DeploymentAspect aspect : serverAspects) {
if (aspect instanceof EndpointServiceDeploymentAspect) {
final EndpointServiceDeploymentAspect a = (EndpointServiceDeploymentAspect) aspect;
EndpointServiceDeploymentAspect clone = (EndpointServiceDeploymentAspect) (a.clone());
clone.setStopServices(true);
publisherDepAspects.add(clone);
} else if (aspect instanceof EndpointHandlerDeploymentAspect) {
publisherDepAspects.add(aspect);
//add another aspect to set InvocationHandlerJAXWS to each endpoint
ForceJAXWSInvocationHandlerDeploymentAspect handlerAspect = new ForceJAXWSInvocationHandlerDeploymentAspect();
publisherDepAspects.add(handlerAspect);
} else {
publisherDepAspects.add(aspect);
}
}
}
return publisherDepAspects;
}
use of org.jboss.wsf.spi.deployment.DeploymentAspect in project wildfly by wildfly.
the class EndpointPublisherImpl method doDeploy.
/**
* Triggers the WS deployment aspects, which process the deployment and
* install the endpoint services.
*
* @param target
* @param unit
*/
protected void doDeploy(ServiceTarget target, DeploymentUnit unit) {
List<DeploymentAspect> aspects = getDeploymentAspects();
ClassLoader origClassLoader = WildFlySecurityManager.getCurrentContextClassLoaderPrivileged();
Deployment dep = null;
try {
WildFlySecurityManager.setCurrentContextClassLoaderPrivileged(ClassLoaderProvider.getDefaultProvider().getServerIntegrationClassLoader());
dep = unit.getAttachment(WSAttachmentKeys.DEPLOYMENT_KEY);
dep.addAttachment(ServiceTarget.class, target);
DeploymentAspectManager dam = new DeploymentAspectManagerImpl();
dam.setDeploymentAspects(aspects);
dam.deploy(dep);
} finally {
if (dep != null) {
dep.removeAttachment(ServiceTarget.class);
}
WildFlySecurityManager.setCurrentContextClassLoaderPrivileged(origClassLoader);
}
}
use of org.jboss.wsf.spi.deployment.DeploymentAspect in project wildfly by wildfly.
the class EndpointPublisherImpl method undeploy.
protected void undeploy(Deployment deployment) throws Exception {
List<DeploymentAspect> aspects = getDeploymentAspects();
ClassLoader origClassLoader = WildFlySecurityManager.getCurrentContextClassLoaderPrivileged();
try {
WildFlySecurityManager.setCurrentContextClassLoaderPrivileged(ClassLoaderProvider.getDefaultProvider().getServerIntegrationClassLoader());
DeploymentAspectManager dam = new DeploymentAspectManagerImpl();
dam.setDeploymentAspects(aspects);
dam.undeploy(deployment);
} finally {
WildFlySecurityManager.setCurrentContextClassLoaderPrivileged(origClassLoader);
}
}
Aggregations