Class HttpTunnelingClientSocketChannel
java.lang.Object
org.jboss.netty.channel.AbstractChannel
org.jboss.netty.channel.socket.http.HttpTunnelingClientSocketChannel
- All Implemented Interfaces:
Comparable<Channel>
,Channel
,SocketChannel
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescription(package private) final class
-
Field Summary
FieldsModifier and TypeFieldDescription(package private) final HttpTunnelingSocketChannelConfig
private final HttpTunnelingClientSocketChannel.ServletChannelHandler
(package private) final Object
(package private) final SocketChannel
(package private) boolean
Fields inherited from interface org.jboss.netty.channel.Channel
OP_NONE, OP_READ, OP_READ_WRITE, OP_WRITE
-
Constructor Summary
ConstructorsConstructorDescriptionHttpTunnelingClientSocketChannel
(ChannelFactory factory, ChannelPipeline pipeline, ChannelSink sink, ClientSocketChannelFactory clientSocketChannelFactory) -
Method Summary
Modifier and TypeMethodDescription(package private) void
bindReal
(SocketAddress localAddress, ChannelFuture future) (package private) void
closeReal
(ChannelFuture future) (package private) void
connectReal
(SocketAddress remoteAddress, ChannelFuture future) (package private) void
disconnectReal
(ChannelFuture future) Returns the configuration of this channel.int
Returns the currentinterestOps
of this channel.Returns the local address where this channel is bound to.Returns the remote address where this channel is connected to.boolean
isBound()
Returnstrue
if and only if this channel is bound to a local address.boolean
Returnstrue
if and only if this channel is connected to a remote address.boolean
Returnstrue
if and only if the I/O thread will perform the requested write operation immediately.protected boolean
Marks this channel as closed.(package private) void
setInterestOpsReal
(int interestOps, ChannelFuture future) (package private) void
unbindReal
(ChannelFuture future) write
(Object message, SocketAddress remoteAddress) Sends a message to this channel asynchronously.private ChannelFuture
(package private) void
writeReal
(ChannelBuffer a, ChannelFuture future) Methods inherited from class org.jboss.netty.channel.AbstractChannel
bind, close, compareTo, connect, disconnect, equals, getAttachment, getCloseFuture, getFactory, getId, getInternalInterestOps, getParent, getPipeline, getSucceededFuture, getUnsupportedOperationFuture, getUserDefinedWritability, hashCode, isOpen, isReadable, setAttachment, setInterestOps, setInternalInterestOps, setReadable, setUnwritable, setUserDefinedWritability, setWritable, toString, unbind, write
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.jboss.netty.channel.Channel
bind, close, connect, disconnect, getAttachment, getCloseFuture, getFactory, getId, getParent, getPipeline, getUserDefinedWritability, isOpen, isReadable, setAttachment, setInterestOps, setReadable, setUserDefinedWritability, unbind, write
Methods inherited from interface java.lang.Comparable
compareTo
-
Field Details
-
config
-
requestHeaderWritten
volatile boolean requestHeaderWritten -
interestOpsLock
-
realChannel
-
handler
-
-
Constructor Details
-
HttpTunnelingClientSocketChannel
HttpTunnelingClientSocketChannel(ChannelFactory factory, ChannelPipeline pipeline, ChannelSink sink, ClientSocketChannelFactory clientSocketChannelFactory)
-
-
Method Details
-
getConfig
Description copied from interface:Channel
Returns the configuration of this channel.- Specified by:
getConfig
in interfaceChannel
- Specified by:
getConfig
in interfaceSocketChannel
-
getLocalAddress
Description copied from interface:Channel
Returns the local address where this channel is bound to. The returnedSocketAddress
is supposed to be down-cast into more concrete type such asInetSocketAddress
to retrieve the detailed information.- Specified by:
getLocalAddress
in interfaceChannel
- Specified by:
getLocalAddress
in interfaceSocketChannel
- Returns:
- the local address of this channel.
null
if this channel is not bound.
-
getRemoteAddress
Description copied from interface:Channel
Returns the remote address where this channel is connected to. The returnedSocketAddress
is supposed to be down-cast into more concrete type such asInetSocketAddress
to retrieve the detailed information.- Specified by:
getRemoteAddress
in interfaceChannel
- Specified by:
getRemoteAddress
in interfaceSocketChannel
- Returns:
- the remote address of this channel.
null
if this channel is not connected. If this channel is not connected but it can receive messages from arbitrary remote addresses (e.g.DatagramChannel
, useMessageEvent.getRemoteAddress()
to determine the origination of the received message as this method will returnnull
.
-
isBound
public boolean isBound()Description copied from interface:Channel
Returnstrue
if and only if this channel is bound to a local address. -
isConnected
public boolean isConnected()Description copied from interface:Channel
Returnstrue
if and only if this channel is connected to a remote address.- Specified by:
isConnected
in interfaceChannel
-
getInterestOps
public int getInterestOps()Description copied from interface:Channel
Returns the currentinterestOps
of this channel.- Specified by:
getInterestOps
in interfaceChannel
- Overrides:
getInterestOps
in classAbstractChannel
- Returns:
Channel.OP_NONE
,Channel.OP_READ
,Channel.OP_WRITE
, orChannel.OP_READ_WRITE
-
isWritable
public boolean isWritable()Description copied from interface:Channel
Returnstrue
if and only if the I/O thread will perform the requested write operation immediately. Any write requests made when this method returnsfalse
are queued until the I/O thread is ready to process the queued write requests. This method is a shortcut to the following code:return (getInterestOps() invalid input: '&' OP_WRITE) == 0;
- Specified by:
isWritable
in interfaceChannel
- Overrides:
isWritable
in classAbstractChannel
-
setClosed
protected boolean setClosed()Description copied from class:AbstractChannel
Marks this channel as closed. This method is intended to be called by an internal component - please do not call it unless you know what you are doing.- Overrides:
setClosed
in classAbstractChannel
- Returns:
true
if and only if this channel was not marked as closed yet
-
write
Description copied from interface:Channel
Sends a message to this channel asynchronously. It has an additional parameter that allows a user to specify where to send the specified message instead of this channel's current remote address. If this channel was created by a connectionless transport (e.g.DatagramChannel
) and is not connected yet, you must specify non-null address. Otherwise, the write request will fail withNotYetConnectedException
and an'exceptionCaught'
event will be triggered.- Specified by:
write
in interfaceChannel
- Overrides:
write
in classAbstractChannel
- Parameters:
message
- the message to writeremoteAddress
- where to send the specified message. This method is identical toChannel.write(Object)
ifnull
is specified here.- Returns:
- the
ChannelFuture
which will be notified when the write request succeeds or fails
-
bindReal
-
connectReal
-
writeReal
-
writeLastChunk
-
setInterestOpsReal
-
disconnectReal
-
unbindReal
-
closeReal
-