1 23 package com.sun.enterprise.jbi.serviceengine.bridge; 24 import com.sun.enterprise.deployment.ServiceRefPortInfo; 25 import com.sun.enterprise.jbi.serviceengine.ServiceEngineException; 26 import com.sun.enterprise.jbi.serviceengine.bridge.transport.JAXRPCClientTransportFactory; 27 import com.sun.enterprise.jbi.serviceengine.bridge.transport.NMRTransportFactory; 28 import com.sun.enterprise.webservice.spi.DefaultServiceDelegateFactory; 29 import com.sun.enterprise.webservice.spi.ServiceDelegateCreationListener; 30 import javax.xml.namespace.QName ; 31 import com.sun.enterprise.webservice.ServiceEngineFacade; 32 33 34 38 public class ServiceEngineFacadeImpl implements ServiceEngineFacade { 39 40 private static ServiceEngineFacadeImpl facade ; 41 private static ServiceDelegateCreationListener serviceCreationListenerImpl; 42 43 44 45 private ServiceEngineFacadeImpl() { 46 serviceCreationListenerImpl = new ServiceCreationListenerImpl(); 47 48 } 49 50 public static ServiceEngineFacadeImpl getInstance() { 51 if (facade == null) { 52 facade = new ServiceEngineFacadeImpl(); 53 ((DefaultServiceDelegateFactory)DefaultServiceDelegateFactory.getFactory()).addListener(serviceCreationListenerImpl); 54 } 55 return facade; 56 } 57 58 public Object getTransportFactory(ServiceRefPortInfo portInfo, 59 boolean jaxWSFlag, boolean oneWay) throws ServiceEngineException { 60 61 if(jaxWSFlag) 62 return new NMRTransportFactory(portInfo, oneWay); 63 else 64 return new JAXRPCClientTransportFactory(portInfo); 65 } 66 67 public void handleWebServiceEndpointEvent(String endpointRelativeURI, 68 boolean jbiEnabled) throws ServiceEngineException { 69 EndpointHelper.getInstance().toggleEndpointStatus(endpointRelativeURI, 70 jbiEnabled); 71 } 72 73 76 public ServiceDelegateCreationListener getServiceCreationListener() { 77 return serviceCreationListenerImpl; 78 } 79 } 80 | Popular Tags |