Class ManagedEndpoint<T>

  • Type Parameters:
    T - The implementation class of the endpoint.
    All Implemented Interfaces:
    com.sun.xml.ws.api.Component, com.sun.xml.ws.api.ComponentRegistry

    public class ManagedEndpoint<T>
    extends com.sun.xml.ws.api.server.WSEndpoint<T>
    Wraps an existing WSEndpoint instance and provides a method to swap the WSEndpoint instance. This class also brings up the management communication interfaces when it is instantiated. This class forwards all method invocations to the wrapped WSEndpoint instance.
    Author:
    Fabian Ritzmann, Martin Grebac
    • Constructor Detail

      • ManagedEndpoint

        public ManagedEndpoint​(com.sun.xml.ws.api.server.WSEndpoint<T> endpoint,
                               com.sun.xml.ws.api.config.management.EndpointCreationAttributes attributes)
        Initializes this endpoint.
        Parameters:
        endpoint - The wrapped WSEndpoint instance.
        attributes - Several attributes that were used to create the original WSEndpoint instance and that cannot be queried from WSEndpoint itself. This is used by the communication API to recreate WSEndpoint instances with the same parameters.
    • Method Detail

      • addNotifier

        public void addNotifier​(ReconfigNotifier notifier)
        Parameters:
        notifier - Callback object allows us to send a notification when the endpoint was reconfigured.
      • getCreationAttributes

        public com.sun.xml.ws.api.config.management.EndpointCreationAttributes getCreationAttributes()
        Returns attributes used for creation of this endpoint.
        Returns:
      • swapEndpointDelegate

        public void swapEndpointDelegate​(com.sun.xml.ws.api.server.WSEndpoint<T> endpoint)
        Sets a new WSEndpoint instance to which method calls will be forwarded from then on.
        Parameters:
        endpoint - The WSEndpoint instance. May not be null.
      • dispose

        public void dispose()
        Specified by:
        dispose in class com.sun.xml.ws.api.server.WSEndpoint<T>
      • createCodec

        public com.sun.xml.ws.api.pipe.Codec createCodec()
        Specified by:
        createCodec in class com.sun.xml.ws.api.server.WSEndpoint<T>
      • getServiceName

        public QName getServiceName()
        Specified by:
        getServiceName in class com.sun.xml.ws.api.server.WSEndpoint<T>
      • getPortName

        public QName getPortName()
        Specified by:
        getPortName in class com.sun.xml.ws.api.server.WSEndpoint<T>
      • getImplementationClass

        public Class<T> getImplementationClass()
        Specified by:
        getImplementationClass in class com.sun.xml.ws.api.server.WSEndpoint<T>
      • getBinding

        public com.sun.xml.ws.api.WSBinding getBinding()
        Specified by:
        getBinding in class com.sun.xml.ws.api.server.WSEndpoint<T>
      • getContainer

        public com.sun.xml.ws.api.server.Container getContainer()
        Specified by:
        getContainer in class com.sun.xml.ws.api.server.WSEndpoint<T>
      • getPort

        public com.sun.xml.ws.api.model.wsdl.WSDLPort getPort()
        Specified by:
        getPort in class com.sun.xml.ws.api.server.WSEndpoint<T>
      • setExecutor

        public void setExecutor​(Executor exec)
        Specified by:
        setExecutor in class com.sun.xml.ws.api.server.WSEndpoint<T>
      • schedule

        public void schedule​(com.sun.xml.ws.api.message.Packet request,
                             com.sun.xml.ws.api.server.WSEndpoint.CompletionCallback callback,
                             com.sun.xml.ws.api.pipe.FiberContextSwitchInterceptor interceptor)
        Specified by:
        schedule in class com.sun.xml.ws.api.server.WSEndpoint<T>
      • process

        public void process​(com.sun.xml.ws.api.message.Packet request,
                            com.sun.xml.ws.api.server.WSEndpoint.CompletionCallback callback,
                            com.sun.xml.ws.api.pipe.FiberContextSwitchInterceptor interceptor)
        Overrides:
        process in class com.sun.xml.ws.api.server.WSEndpoint<T>
      • createPipeHead

        public com.sun.xml.ws.api.server.WSEndpoint.PipeHead createPipeHead()
        Specified by:
        createPipeHead in class com.sun.xml.ws.api.server.WSEndpoint<T>
      • getServiceDefinition

        public com.sun.xml.ws.api.server.ServiceDefinition getServiceDefinition()
        Specified by:
        getServiceDefinition in class com.sun.xml.ws.api.server.WSEndpoint<T>
      • getComponentRegistry

        public Set<com.sun.xml.ws.api.server.EndpointComponent> getComponentRegistry()
        Specified by:
        getComponentRegistry in class com.sun.xml.ws.api.server.WSEndpoint<T>
      • getComponents

        @NotNull
        public Set<com.sun.xml.ws.api.Component> getComponents()
        Specified by:
        getComponents in interface com.sun.xml.ws.api.ComponentRegistry
        Overrides:
        getComponents in class com.sun.xml.ws.api.server.WSEndpoint<T>
      • getSEIModel

        public com.sun.xml.ws.api.model.SEIModel getSEIModel()
        Specified by:
        getSEIModel in class com.sun.xml.ws.api.server.WSEndpoint<T>
      • getPolicyMap

        public com.sun.xml.ws.policy.PolicyMap getPolicyMap()
        Specified by:
        getPolicyMap in class com.sun.xml.ws.api.server.WSEndpoint<T>
      • getManagedObjectManager

        public org.glassfish.gmbal.ManagedObjectManager getManagedObjectManager()
        Specified by:
        getManagedObjectManager in class com.sun.xml.ws.api.server.WSEndpoint<T>
      • closeManagedObjectManager

        public void closeManagedObjectManager()
        Specified by:
        closeManagedObjectManager in class com.sun.xml.ws.api.server.WSEndpoint<T>
      • getAssemblerContext

        public com.sun.xml.ws.api.pipe.ServerTubeAssemblerContext getAssemblerContext()
        Specified by:
        getAssemblerContext in class com.sun.xml.ws.api.server.WSEndpoint<T>
      • equalsProxiedInstance

        public boolean equalsProxiedInstance​(com.sun.xml.ws.api.server.WSEndpoint endpoint)
        Overrides:
        equalsProxiedInstance in class com.sun.xml.ws.api.server.WSEndpoint<T>
      • getEndpointReference

        public <T extends EndpointReference> T getEndpointReference​(Class<T> clazz,
                                                                    String address,
                                                                    String wsdlAddress,
                                                                    Element... referenceParameters)
        Specified by:
        getEndpointReference in class com.sun.xml.ws.api.server.WSEndpoint<T>
      • getEndpointReference

        public <T extends EndpointReference> T getEndpointReference​(Class<T> clazz,
                                                                    String address,
                                                                    String wsdlAddress,
                                                                    List<Element> metadata,
                                                                    List<Element> referenceParameters)
        Specified by:
        getEndpointReference in class com.sun.xml.ws.api.server.WSEndpoint<T>
      • getOperationDispatcher

        public com.sun.xml.ws.wsdl.OperationDispatcher getOperationDispatcher()
        Specified by:
        getOperationDispatcher in class com.sun.xml.ws.api.server.WSEndpoint<T>
      • createServiceResponseForException

        public com.sun.xml.ws.api.message.Packet createServiceResponseForException​(com.sun.xml.ws.api.pipe.ThrowableContainerPropertySet tcps,
                                                                                   com.sun.xml.ws.api.message.Packet packet,
                                                                                   com.sun.xml.ws.api.SOAPVersion soapv,
                                                                                   com.sun.xml.ws.api.model.wsdl.WSDLPort wsdlp,
                                                                                   com.sun.xml.ws.api.model.SEIModel seim,
                                                                                   com.sun.xml.ws.api.WSBinding wsb)
        Specified by:
        createServiceResponseForException in class com.sun.xml.ws.api.server.WSEndpoint<T>