Package org.eclipse.ecf.provider.generic
Class TCPServerSOContainer
- java.lang.Object
-
- org.eclipse.ecf.core.AbstractContainer
-
- org.eclipse.ecf.provider.generic.SOContainer
-
- org.eclipse.ecf.provider.generic.ServerSOContainer
-
- org.eclipse.ecf.provider.generic.TCPServerSOContainer
-
- All Implemented Interfaces:
org.eclipse.core.runtime.IAdaptable,IContainer,IIdentifiable,IReliableContainer,ISharedObjectContainer,ISharedObjectContainerGroupManager,IConnectRequestHandler
public class TCPServerSOContainer extends ServerSOContainer implements IConnectRequestHandler
-
-
Field Summary
Fields Modifier and Type Field Description static booleanDEFAULT_FALLBACK_PORTstatic java.lang.StringDEFAULT_HOSTstatic intDEFAULT_KEEPALIVEstatic java.lang.StringDEFAULT_NAMEstatic intDEFAULT_PORTstatic java.lang.StringDEFAULT_PROTOCOLprotected TCPServerSOContainerGroupgroupprotected booleanisSingleprotected intkeepAlive-
Fields inherited from class org.eclipse.ecf.provider.generic.ServerSOContainer
connectHandlerPolicy
-
Fields inherited from class org.eclipse.ecf.provider.generic.SOContainer
config, DEFAULT_OBJECT_ARG_KEY, DEFAULT_OBJECT_ARGTYPES_KEY, groupManager, isClosing, loadingThreadGroup, policy, receiver, sharedObjectManager, sharedObjectMessageSerializer, sharedObjectThreadGroup
-
-
Constructor Summary
Constructors Constructor Description TCPServerSOContainer(ISharedObjectContainerConfig config)TCPServerSOContainer(ISharedObjectContainerConfig config, int keepAlive)TCPServerSOContainer(ISharedObjectContainerConfig config, int port, java.net.InetAddress bindAddress, java.lang.String path, int keepAlive)TCPServerSOContainer(ISharedObjectContainerConfig config, java.net.InetAddress bindAddress, int keepAlive)TCPServerSOContainer(ISharedObjectContainerConfig config, TCPServerSOContainerGroup grp, int keepAlive)TCPServerSOContainer(ISharedObjectContainerConfig config, TCPServerSOContainerGroup listener, java.lang.String path, int keepAlive)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voiddispose()Dispose this IContainer instance.protected java.io.SerializablegetConnectDataFromInput(java.io.Serializable input)static java.lang.StringgetDefaultServerURL()protected intgetKeepAlive()static java.lang.StringgetServerURL(java.lang.String host, java.lang.String name)java.io.SerializablehandleConnectRequest(java.net.Socket socket, java.lang.String target, java.io.Serializable data, ISynchAsynchConnection conn)Handle a connect request from remote clientprotected voidinitialize(TCPServerSOContainerGroup listener, java.lang.String path, int ka)-
Methods inherited from class org.eclipse.ecf.provider.generic.ServerSOContainer
acceptNewClient, checkJoin, connect, disconnect, ejectAllGroupMembers, ejectGroupMember, forwardExcluding, forwardToRemote, getConnectedID, getConnectionForID, getIDForConnection, getSynchConnectionForID, handleLeaveGroupMessage, handleViewChangeMessage, isGroupManager, processDisconnect, queueContainerMessage, setConnectPolicy
-
Methods inherited from class org.eclipse.ecf.provider.generic.SOContainer
addNewRemoteMember, addSharedObject0, addSharedObjectAndWait, addSharedObjectWrapper, addToLoading, checkRemoteCreate, createContainerPropertiesForSharedObject, createRemoteSharedObjectConfig, createRemoteSharedObjectContext, createRemoteSharedObjectWrapper, createSharedObjectConfig, createSharedObjectContext, createSharedObjectWrapper, debug, defaultDeserializeSharedObjectMessage, defaultSerializeSharedObjectMessage, deserializeContainerMessage, deserializeSharedObjectMessage, destroySharedObject, disconnect, fireDelegateContainerEvent, forward, getAdapter, getArgsFromProperties, getArgTypesFromProperties, getClassLoaderForContainer, getClassLoaderForSharedObject, getConfig, getConnectNamespace, getGroupMemberIDs, getGroupMembershipLock, getID, getMaxGroupMembers, getMessageReceiver, getNewSharedObjectThread, getNextSequenceNumber, getOtherMemberIDs, getReceiver, getSharedObject, getSharedObjectIDs, getSharedObjectManager, getSharedObjectMessageSerializer, getSharedObjectWrapper, handleAsynchIOException, handleCreateMessage, handleCreateResponseMessage, handleLeave, handleSharedObjectDisposeMessage, handleSharedObjectMessage, handleUndeliveredSharedObjectMessage, handleUnidentifiedMessage, isClosing, load, moveFromLoadingToActive, notifySharedObjectActivated, notifySharedObjectDeactivated, printToSystemError, processAsynch, processSynch, removeFromLoading, removeRemoteMember, removeSharedObject, sendCreate, sendCreateResponse, sendCreateResponseSharedObjectMessage, sendCreateSharedObjectMessage, sendDispose, sendDisposeSharedObjectMessage, sendMessage, sendMessage, sendSharedObjectMessage, serialize, serializeSharedObjectMessage, setMaxGroupMembers, setRemoteAddPolicy, setSharedObjectMessageSerializer, traceStack, validateContainerMessage, verifySharedObjectMessageTarget, verifyToIDForSharedObjectMessage
-
Methods inherited from class org.eclipse.ecf.core.AbstractContainer
addListener, fireContainerEvent, getPasswordFromConnectContext, removeListener
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.eclipse.ecf.core.IContainer
addListener, removeListener
-
-
-
-
Field Detail
-
DEFAULT_PROTOCOL
public static final java.lang.String DEFAULT_PROTOCOL
- See Also:
- Constant Field Values
-
DEFAULT_PORT
public static final int DEFAULT_PORT
-
DEFAULT_KEEPALIVE
public static final int DEFAULT_KEEPALIVE
-
DEFAULT_NAME
public static final java.lang.String DEFAULT_NAME
-
DEFAULT_HOST
public static java.lang.String DEFAULT_HOST
-
DEFAULT_FALLBACK_PORT
public static final boolean DEFAULT_FALLBACK_PORT
- Since:
- 4.2
-
keepAlive
protected int keepAlive
-
group
protected TCPServerSOContainerGroup group
-
isSingle
protected boolean isSingle
-
-
Constructor Detail
-
TCPServerSOContainer
public TCPServerSOContainer(ISharedObjectContainerConfig config, int port, java.net.InetAddress bindAddress, java.lang.String path, int keepAlive) throws java.io.IOException
- Parameters:
config- configport- portbindAddress- bind addresspath- pathkeepAlive- keep alive- Throws:
java.io.IOException- if some problem creating- Since:
- 4.4
-
TCPServerSOContainer
public TCPServerSOContainer(ISharedObjectContainerConfig config, java.net.InetAddress bindAddress, int keepAlive) throws java.io.IOException, java.net.URISyntaxException
- Parameters:
config- configbindAddress- bind addresskeepAlive- keep alive- Throws:
java.io.IOException- if some problem creatingjava.net.URISyntaxException- if some problem creating- Since:
- 4.4
-
TCPServerSOContainer
public TCPServerSOContainer(ISharedObjectContainerConfig config, TCPServerSOContainerGroup grp, int keepAlive) throws java.io.IOException, java.net.URISyntaxException
- Throws:
java.io.IOExceptionjava.net.URISyntaxException
-
TCPServerSOContainer
public TCPServerSOContainer(ISharedObjectContainerConfig config, TCPServerSOContainerGroup listener, java.lang.String path, int keepAlive)
-
TCPServerSOContainer
public TCPServerSOContainer(ISharedObjectContainerConfig config) throws java.io.IOException, java.net.URISyntaxException
- Throws:
java.io.IOExceptionjava.net.URISyntaxException
-
TCPServerSOContainer
public TCPServerSOContainer(ISharedObjectContainerConfig config, int keepAlive) throws java.io.IOException, java.net.URISyntaxException
- Throws:
java.io.IOExceptionjava.net.URISyntaxException
-
-
Method Detail
-
getKeepAlive
protected int getKeepAlive()
-
getServerURL
public static java.lang.String getServerURL(java.lang.String host, java.lang.String name)
-
getDefaultServerURL
public static java.lang.String getDefaultServerURL()
-
initialize
protected void initialize(TCPServerSOContainerGroup listener, java.lang.String path, int ka)
-
dispose
public void dispose()
Description copied from interface:IContainerDispose this IContainer instance. The container instance will be made inactive after the completion of this method and will be unavailable for subsequent usage.- Specified by:
disposein interfaceIContainer- Overrides:
disposein classServerSOContainer
-
handleConnectRequest
public java.io.Serializable handleConnectRequest(java.net.Socket socket, java.lang.String target, java.io.Serializable data, ISynchAsynchConnection conn)Description copied from interface:IConnectRequestHandlerHandle a connect request from remote client- Specified by:
handleConnectRequestin interfaceIConnectRequestHandler- Parameters:
socket- the Socket that the request came in ontarget- the target that the request is intended fordata- any data that was sent along with request (e.g. password or other authentication data)conn- the connection instance that received the request- Returns:
- any data intended as a response. If null is returned, this typically means refusal of connect request
-
getConnectDataFromInput
protected java.io.Serializable getConnectDataFromInput(java.io.Serializable input) throws java.lang.Exception- Throws:
java.lang.Exception
-
-