com.sun.xml.ws.server.servlet
Class HttpSessionInstanceResolver<T>

java.lang.Object
  extended by com.sun.xml.ws.api.server.InstanceResolver<T>
      extended by com.sun.xml.ws.server.AbstractInstanceResolver<T>
          extended by com.sun.xml.ws.server.AbstractMultiInstanceResolver<T>
              extended by com.sun.xml.ws.server.servlet.HttpSessionInstanceResolver<T>

public class HttpSessionInstanceResolver<T>
extends AbstractMultiInstanceResolver<T>

Instance resolver that ties a service instance per HttpSession. TODO: how do we dispose instances?


Nested Class Summary
 
Nested classes/interfaces inherited from class com.sun.xml.ws.server.AbstractInstanceResolver
AbstractInstanceResolver.FieldInjectionPlan<T,R>, AbstractInstanceResolver.InjectionPlan<T,R>, AbstractInstanceResolver.MethodInjectionPlan<T,R>
 
Field Summary
 
Fields inherited from class com.sun.xml.ws.server.AbstractMultiInstanceResolver
clazz, owner
 
Constructor Summary
HttpSessionInstanceResolver(Class<T> clazz)
           
 
Method Summary
 T resolve(Packet request)
          Decides which instance of 'T' serves the given request message.
 
Methods inherited from class com.sun.xml.ws.server.AbstractMultiInstanceResolver
create, dispose, prepare, start
 
Methods inherited from class com.sun.xml.ws.server.AbstractInstanceResolver
buildInjectionPlan, findAnnotatedMethod, getResourceInjector, invokeMethod
 
Methods inherited from class com.sun.xml.ws.api.server.InstanceResolver
createDefault, createDefault, createInvoker, createNewInstance, createSingleton, dispose, postInvoke, start
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

HttpSessionInstanceResolver

public HttpSessionInstanceResolver(@NotNull
                                   Class<T> clazz)
Method Detail

resolve

@NotNull
public T resolve(Packet request)
Description copied from class: InstanceResolver
Decides which instance of 'T' serves the given request message.

This method is called concurrently by multiple threads. It is also on a criticail path that affects the performance. A good implementation should try to avoid any synchronization, and should minimize the amount of work as much as possible.

Specified by:
resolve in class InstanceResolver<T>
Parameters:
request - Always non-null. Represents the request message to be served. The caller may not consume the Message.