FileDocCategorySizeDatePackage
RuntimeEndpointInfoRegistryImpl.javaAPI DocGlassfish v2 API4328Fri May 04 22:30:26 BST 2007com.sun.enterprise.jbi.serviceengine.bridge

RuntimeEndpointInfoRegistryImpl

public class RuntimeEndpointInfoRegistryImpl extends Object implements RuntimeEndpointInfoRegistry
Endpoint Name to JAXWS RuntimeEndpointInfo mapping
author
Manisha Umbarje

Fields Summary
private Hashtable
store
private static RuntimeEndpointInfoRegistry
registry
private com.sun.enterprise.jbi.serviceengine.core.EndpointRegistry
endpointRegistry
Constructors Summary
private RuntimeEndpointInfoRegistryImpl()
Creates a new instance of RuntimeEndpointInfoRegistry


           
      
        store = new Hashtable(5);
        endpointRegistry = EndpointRegistry.getInstance();
    
Methods Summary
public voiddeleteRuntimeEndpointInfo(javax.xml.namespace.QName service, java.lang.String endpoint)

        
        if(endpoint != null) {
            Map runtimeInfoTable = (Map)store.get(service);
            
            if((runtimeInfoTable != null) &&
                    (runtimeInfoTable.get(endpoint) != null))
                runtimeInfoTable.remove(endpoint);
        }
    
public static RuntimeEndpointInfoRegistrygetInstance()

        return registry;
    
public java.lang.ObjectgetRuntimeEndpointInfo(javax.xml.namespace.QName service, java.lang.String endpoint)
This method is used only for JAX-RPC invocation.

        ServiceEngineEndpoint endpt = endpointRegistry.get(service,  endpoint);
      
        if(endpt != null) {
            Map runtimeEndpointInfoTable = (Map)store.get(service);
            if(runtimeEndpointInfoTable == null) {
                runtimeEndpointInfoTable = new Hashtable();
                store.put(service, runtimeEndpointInfoTable);
            }
            
            Object runtimeInfo = runtimeEndpointInfoTable.get(endpoint);
      
            if(runtimeInfo == null) {
                runtimeInfo = JAXRPCRuntimeEndpointHelper.populateRuntimeInfo(endpt);
                runtimeEndpointInfoTable.put(endpoint, runtimeInfo);
            }
            return runtimeInfo;
        }
        throw new ServiceEngineException("Endpoint " +  endpoint + "not deployed in JBI");