Package org.eclipse.net4j.connector
Interface IConnector
-
- All Superinterfaces:
org.eclipse.net4j.util.collection.Closeable
,IChannelMultiplexer
,org.eclipse.net4j.util.container.IContainer<IChannel>
,ILocationAware
,org.eclipse.net4j.util.event.INotifier
,org.eclipse.net4j.util.properties.IPropertiesContainer
,org.eclipse.net4j.util.security.IUserAware
- All Known Subinterfaces:
IJVMConnector
,InternalConnector
,IServerConnector
,ITCPConnector
,IWSConnector
- All Known Implementing Classes:
Connector
public interface IConnector extends IChannelMultiplexer, org.eclipse.net4j.util.security.IUserAware, org.eclipse.net4j.util.collection.Closeable
One endpoint of a physical connection of arbitrary nature between two communicating parties. AIConnector
encapsulates the process of establishing and closing such connections and has alocation
ofCLIENT
orSERVER
with respect to this process. Once a connection is established either party can use its connector to open multipleIChannel
s to asynchronously exchangeIBuffer
s.This interface is not intended to be implemented by clients. Providers of connectors for new physical connection types have to implement org.eclipse.internal.net4j.connector.InternalConnector.
- Author:
- Eike Stepper
- No Implement
- This interface is not intended to be implemented by clients.
- No Extend
- This interface is not intended to be extended by clients.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.eclipse.net4j.util.container.IContainer
org.eclipse.net4j.util.container.IContainer.Modifiable<E extends java.lang.Object>, org.eclipse.net4j.util.container.IContainer.Persistable<E extends java.lang.Object>, org.eclipse.net4j.util.container.IContainer.Persistence<E extends java.lang.Object>
-
Nested classes/interfaces inherited from interface org.eclipse.net4j.ILocationAware
ILocationAware.Location
-
-
Field Summary
Fields Modifier and Type Field Description static long
NO_TIMEOUT
-
Fields inherited from interface org.eclipse.net4j.channel.IChannelMultiplexer
DEFAULT_OPEN_CHANNEL_TIMEOUT, NO_CHANNEL_TIMEOUT
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
connect()
Synchronous connect with infinite timeout value.void
connect(long timeout)
Synchronous connect.void
connectAsync()
Asynchronous connect.ConnectorState
getState()
Returns the current state of this connector.java.lang.String
getURL()
boolean
isConnected()
Same as
.getState()
==ConnectorState.CONNECTED
void
waitForConnection(long timeout)
Blocks until
or the given timeout expired.isConnected()
== true-
Methods inherited from interface org.eclipse.net4j.channel.IChannelMultiplexer
getChannels, getOpenChannelTimeout, openChannel, openChannel, openChannel, setOpenChannelTimeout
-
Methods inherited from interface org.eclipse.net4j.ILocationAware
getLocation, isClient, isServer
-
-
-
-
Field Detail
-
NO_TIMEOUT
static final long NO_TIMEOUT
- Since:
- 2.0
- See Also:
- Constant Field Values
-
-
Method Detail
-
getURL
java.lang.String getURL()
-
getState
ConnectorState getState()
Returns the current state of this connector.
-
isConnected
boolean isConnected()
Same as
.getState()
==ConnectorState.CONNECTED
-
connect
void connect() throws ConnectorException
Synchronous connect with infinite timeout value. Same asconnect(NO_TIMEOUT)
.- Throws:
ConnectorException
- Since:
- 4.0
-
connect
void connect(long timeout) throws ConnectorException
Synchronous connect. Blocks until
or the given timeout expired.isConnected()
== true- Parameters:
timeout
- The maximum number of milli seconds to block orNO_TIMEOUT
to block indefinetely in case no connection occurs.- Throws:
ConnectorException
- Since:
- 4.0
-
connectAsync
void connectAsync() throws ConnectorException
Asynchronous connect. May leave thisIConnector
in a state where
.isConnected()
== false- Throws:
ConnectorException
- See Also:
waitForConnection(long)
,connect(long)
-
waitForConnection
void waitForConnection(long timeout) throws ConnectorException
Blocks until
or the given timeout expired.isConnected()
== true- Parameters:
timeout
- The maximum number of milli seconds to block orNO_TIMEOUT
to block indefinetely in case no connection occurs.- Throws:
ConnectorException
- Since:
- 4.0
-
-