|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.mina.core.service.AbstractIoService
org.apache.mina.core.service.AbstractIoConnector
org.apache.mina.proxy.ProxyConnector
public class ProxyConnector
ProxyConnector.java - Decorator for SocketConnector
to provide proxy support,
as suggested by MINA list discussions.
Operates by intercepting connect requests and replacing the endpoint address with the
proxy address, then adding a ProxyFilter
as the first IoFilter
which
performs any necessary handshaking with the proxy before allowing data to flow
normally. During the handshake, any outgoing write requests are buffered.
http://www.nabble.com/Meta-Transport%3A-an-idea-on-implementing-reconnection-and-proxy-td12969001.html
,
http://issues.apache.org/jira/browse/DIRMINA-415
Nested Class Summary |
---|
Nested classes/interfaces inherited from class org.apache.mina.core.service.AbstractIoService |
---|
AbstractIoService.ServiceOperationFuture |
Field Summary |
---|
Fields inherited from class org.apache.mina.core.service.AbstractIoService |
---|
disposalLock |
Constructor Summary | |
---|---|
ProxyConnector()
Creates a new proxy connector. |
|
ProxyConnector(SocketConnector connector)
Creates a new proxy connector. |
|
ProxyConnector(SocketConnector connector,
IoSessionConfig config,
java.util.concurrent.Executor executor)
Creates a new proxy connector. |
Method Summary | |
---|---|
void |
cancelConnectFuture()
Cancels the real connection when reconnection is in use. |
protected ConnectFuture |
connect0(java.net.SocketAddress remoteAddress,
java.net.SocketAddress localAddress,
IoSessionInitializer<? extends ConnectFuture> sessionInitializer)
Connects to the specified address . |
protected void |
dispose0()
Implement this method to release any acquired resources. |
protected ConnectFuture |
fireConnected(IoSession session)
Fires the connection event on the real future to notify the client. |
SocketConnector |
getConnector()
Get the SocketConnector to be used for connections
to the proxy server. |
ProxyIoSession |
getProxyIoSession()
Returns the ProxyIoSession linked with this connector. |
IoSessionConfig |
getSessionConfig()
Returns the default configuration of the new IoSession s
created by this service. |
TransportMetadata |
getTransportMetadata()
Returns the TransportMetadata that this service runs on. |
void |
setProxyIoSession(ProxyIoSession proxyIoSession)
Sets the proxy session object of this connector. |
Methods inherited from class org.apache.mina.core.service.AbstractIoConnector |
---|
connect, connect, connect, connect, connect, connect, finishSessionInitialization0, getConnectTimeout, getConnectTimeoutCheckInterval, getConnectTimeoutMillis, getDefaultRemoteAddress, setConnectTimeout, setConnectTimeoutCheckInterval, setConnectTimeoutMillis, setDefaultRemoteAddress, toString |
Methods inherited from class org.apache.mina.core.service.AbstractIoService |
---|
addListener, broadcast, dispose, dispose, executeWorker, executeWorker, getActivationTime, getFilterChain, getFilterChainBuilder, getHandler, getListeners, getManagedSessionCount, getManagedSessions, getScheduledWriteBytes, getScheduledWriteMessages, getSessionDataStructureFactory, getStatistics, initSession, isActive, isDisposed, isDisposing, removeListener, setFilterChainBuilder, setHandler, setSessionDataStructureFactory |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface org.apache.mina.core.service.IoService |
---|
addListener, broadcast, dispose, dispose, getActivationTime, getFilterChain, getFilterChainBuilder, getHandler, getManagedSessionCount, getManagedSessions, getScheduledWriteBytes, getScheduledWriteMessages, getSessionDataStructureFactory, getStatistics, isActive, isDisposed, isDisposing, removeListener, setFilterChainBuilder, setHandler, setSessionDataStructureFactory |
Constructor Detail |
---|
public ProxyConnector()
public ProxyConnector(SocketConnector connector)
connector
- Connector used to establish proxy connections.public ProxyConnector(SocketConnector connector, IoSessionConfig config, java.util.concurrent.Executor executor)
AbstractIoConnector(IoSessionConfig, Executor).
Method Detail |
---|
public IoSessionConfig getSessionConfig()
IoSession
s
created by this service.
getSessionConfig
in interface IoService
getSessionConfig
in class AbstractIoService
public ProxyIoSession getProxyIoSession()
ProxyIoSession
linked with this connector.
public void setProxyIoSession(ProxyIoSession proxyIoSession)
proxyIoSession
- the configuration of this connector.protected ConnectFuture connect0(java.net.SocketAddress remoteAddress, java.net.SocketAddress localAddress, IoSessionInitializer<? extends ConnectFuture> sessionInitializer)
address
. If communication starts
successfully, events are fired to the connector's handler
.
connect0
in class AbstractIoConnector
remoteAddress
- the remote address to connect tolocalAddress
- the local addresssessionInitializer
- the session initializer
ConnectFuture
that will tell the result of the connection attemptpublic void cancelConnectFuture()
protected ConnectFuture fireConnected(IoSession session)
session
- the current session
public final SocketConnector getConnector()
SocketConnector
to be used for connections
to the proxy server.
protected void dispose0() throws java.lang.Exception
AbstractIoService.dispose()
.
dispose0
in class AbstractIoService
java.lang.Exception
public TransportMetadata getTransportMetadata()
TransportMetadata
that this service runs on.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |