com.sun.xml.ws.transport.tcp.client
Class WSConnectionManager

java.lang.Object
  extended by com.sun.xml.ws.transport.tcp.client.WSConnectionManager
All Implemented Interfaces:
ConnectionFinder<ConnectionSession>, SessionCloseListener<ConnectionSession>

public class WSConnectionManager
extends java.lang.Object
implements ConnectionFinder<ConnectionSession>, SessionCloseListener<ConnectionSession>


Method Summary
 void abortConnection(ConnectionSession connectionSession)
           
 void closeChannel(ChannelContext channelContext)
           
 ConnectionSession createConnectionSession(WSTCPURI tcpURI)
          Open new tcp connection and establish service virtual connection
 ConnectionSession find(ContactInfo<ConnectionSession> contactInfo, java.util.Collection<ConnectionSession> idleConnections, java.util.Collection<ConnectionSession> busyConnections)
          Method that searches idleConnections and busyConnections for the best connection.
 void freeConnection(ConnectionSession connectionSession)
           
static WSConnectionManager getInstance()
           
 void lockConnection(ConnectionSession connectionSession)
           
 void notifySessionClose(ConnectionSession connectionSession)
           
 ChannelContext openChannel(WSTCPURI uri, com.sun.xml.ws.api.WSService wsService, com.sun.xml.ws.api.WSBinding wsBinding, com.sun.xml.ws.api.pipe.Codec defaultCodec)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

getInstance

public static WSConnectionManager getInstance()

openChannel

@NotNull
public ChannelContext openChannel(@NotNull
                                          WSTCPURI uri,
                                          @NotNull
                                          com.sun.xml.ws.api.WSService wsService,
                                          @NotNull
                                          com.sun.xml.ws.api.WSBinding wsBinding,
                                          @NotNull
                                          com.sun.xml.ws.api.pipe.Codec defaultCodec)
                           throws java.lang.InterruptedException,
                                  java.io.IOException,
                                  ServiceChannelException,
                                  VersionMismatchException
Throws:
java.lang.InterruptedException
java.io.IOException
ServiceChannelException
VersionMismatchException

closeChannel

public void closeChannel(@NotNull
                         ChannelContext channelContext)

lockConnection

public void lockConnection(@NotNull
                           ConnectionSession connectionSession)
                    throws java.lang.InterruptedException,
                           SessionAbortedException
Throws:
java.lang.InterruptedException
SessionAbortedException

freeConnection

public void freeConnection(@NotNull
                           ConnectionSession connectionSession)

abortConnection

public void abortConnection(@NotNull
                            ConnectionSession connectionSession)

createConnectionSession

@NotNull
public ConnectionSession createConnectionSession(@NotNull
                                                         WSTCPURI tcpURI)
                                          throws VersionMismatchException,
                                                 ServiceChannelException
Open new tcp connection and establish service virtual connection

Throws:
VersionMismatchException
ServiceChannelException

find

public ConnectionSession find(ContactInfo<ConnectionSession> contactInfo,
                              java.util.Collection<ConnectionSession> idleConnections,
                              java.util.Collection<ConnectionSession> busyConnections)
                       throws java.io.IOException
Description copied from interface: ConnectionFinder
Method that searches idleConnections and busyConnections for the best connection. May return null if no best connections exists. May create a new connection and return it.

Specified by:
find in interface ConnectionFinder<ConnectionSession>
Throws:
java.io.IOException

notifySessionClose

public void notifySessionClose(ConnectionSession connectionSession)
Specified by:
notifySessionClose in interface SessionCloseListener<ConnectionSession>