org.jboss.netty.channel.socket.http
Class HttpTunnelingSocketChannelConfig

java.lang.Object
  extended by org.jboss.netty.channel.socket.http.HttpTunnelingSocketChannelConfig
All Implemented Interfaces:
ChannelConfig, SocketChannelConfig

public final class HttpTunnelingSocketChannelConfig
extends Object
implements SocketChannelConfig

The ChannelConfig of a client-side HTTP tunneling SocketChannel. A SocketChannel created by HttpTunnelingClientSocketChannelFactory will return an instance of this configuration type for SocketChannel.getConfig().

Available options

In addition to the options provided by SocketChannelConfig, HttpTunnelingSocketChannelConfig allows the following options in the option map:
NameAssociated setter method
"sslContext"setSslContext(SSLContext)
"enabledSslCiperSuites"setEnabledSslCipherSuites(String[])
"enabledSslProtocols"setEnabledSslProtocols(String[])
"enableSslSessionCreation"setEnableSslSessionCreation(boolean)

Version:
$Rev: 2080 $, $Date: 2010-01-26 18:04:19 +0900 (Tue, 26 Jan 2010) $
Author:
The Netty Project, Andy Taylor (andy.taylor@jboss.org), Trustin Lee

Method Summary
 ChannelBufferFactory getBufferFactory()
          Returns the default ChannelBufferFactory used to create a new ChannelBuffer.
 int getConnectTimeoutMillis()
          Returns the connect timeout of the channel in milliseconds.
 String[] getEnabledSslCipherSuites()
          Returns the cipher suites enabled for use on an SSLEngine.
 String[] getEnabledSslProtocols()
          Returns the protocol versions enabled for use on an SSLEngine.
 ChannelPipelineFactory getPipelineFactory()
          Returns the ChannelPipelineFactory which will be used when a child channel is created.
 int getReceiveBufferSize()
          Gets the SO_RCVBUF option.
 int getSendBufferSize()
          Gets the SO_SNDBUF option.
 String getServerName()
          Returns the host name of the HTTP server.
 String getServerPath()
          Returns the path where the HttpTunnelingServlet is mapped to.
 int getSoLinger()
          Gets the SO_LINGER option.
 SSLContext getSslContext()
          Returns the SSLContext which is used to establish an HTTPS connection.
 int getTrafficClass()
          Gets the traffic class.
 boolean isEnableSslSessionCreation()
          Returns true if new SSLSessions may be established by an SSLEngine.
 boolean isKeepAlive()
          Gets the SO_KEEPALIVE option.
 boolean isReuseAddress()
          Gets the SO_REUSEADDR option.
 boolean isTcpNoDelay()
          Gets the SO_TCPNODELAY option.
 void setBufferFactory(ChannelBufferFactory bufferFactory)
          Sets the default ChannelBufferFactory used to create a new ChannelBuffer.
 void setConnectTimeoutMillis(int connectTimeoutMillis)
          Sets the connect timeout of the channel in milliseconds.
 void setEnabledSslCipherSuites(String[] suites)
          Sets the cipher suites enabled for use on an SSLEngine.
 void setEnabledSslProtocols(String[] protocols)
          Sets the protocol versions enabled for use on an SSLEngine.
 void setEnableSslSessionCreation(boolean flag)
          Sets whether new SSLSessions may be established by an SSLEngine.
 void setKeepAlive(boolean keepAlive)
          Sets the SO_KEEPALIVE option.
 boolean setOption(String key, Object value)
          Sets a configuration property with the specified name and value.
 void setOptions(Map<String,Object> options)
          Sets the configuration properties from the specified Map.
 void setPerformancePreferences(int connectionTime, int latency, int bandwidth)
          Sets the performance preferences as specified in Socket.setPerformancePreferences(int, int, int).
 void setPipelineFactory(ChannelPipelineFactory pipelineFactory)
          Sets the ChannelPipelineFactory which will be used when a child channel is created.
 void setReceiveBufferSize(int receiveBufferSize)
          Gets the SO_RCVBUF option.
 void setReuseAddress(boolean reuseAddress)
          Sets the SO_REUSEADDR option.
 void setSendBufferSize(int sendBufferSize)
          Sets the SO_SNDBUF option.
 void setServerName(String serverName)
          Sets the host name of the HTTP server.
 void setServerPath(String serverPath)
          Sets the path where the HttpTunnelingServlet is mapped to.
 void setSoLinger(int soLinger)
          Sets the SO_LINGER option.
 void setSslContext(SSLContext sslContext)
          Sets the SSLContext which is used to establish an HTTPS connection.
 void setTcpNoDelay(boolean tcpNoDelay)
          Sets the SO_TCPNODELAY option.
 void setTrafficClass(int trafficClass)
          Sets the traffic class as specified in Socket.setTrafficClass(int).
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

getServerName

public String getServerName()
Returns the host name of the HTTP server. If null, the "Host" header is not sent by the HTTP tunneling client.


setServerName

public void setServerName(String serverName)
Sets the host name of the HTTP server. If null, the "Host" header is not sent by the HTTP tunneling client.


getServerPath

public String getServerPath()
Returns the path where the HttpTunnelingServlet is mapped to. The default value is "/netty-tunnel".


setServerPath

public void setServerPath(String serverPath)
Sets the path where the HttpTunnelingServlet is mapped to. The default value is "/netty-tunnel".


getSslContext

public SSLContext getSslContext()
Returns the SSLContext which is used to establish an HTTPS connection. If null, a plain-text HTTP connection is established.


setSslContext

public void setSslContext(SSLContext sslContext)
Sets the SSLContext which is used to establish an HTTPS connection. If null, a plain-text HTTP connection is established.


getEnabledSslCipherSuites

public String[] getEnabledSslCipherSuites()
Returns the cipher suites enabled for use on an SSLEngine. If null, the default value will be used.

See Also:
SSLEngine.getEnabledCipherSuites()

setEnabledSslCipherSuites

public void setEnabledSslCipherSuites(String[] suites)
Sets the cipher suites enabled for use on an SSLEngine. If null, the default value will be used.

See Also:
SSLEngine.setEnabledCipherSuites(String[])

getEnabledSslProtocols

public String[] getEnabledSslProtocols()
Returns the protocol versions enabled for use on an SSLEngine.

See Also:
SSLEngine.getEnabledProtocols()

setEnabledSslProtocols

public void setEnabledSslProtocols(String[] protocols)
Sets the protocol versions enabled for use on an SSLEngine.

See Also:
SSLEngine.setEnabledProtocols(String[])

isEnableSslSessionCreation

public boolean isEnableSslSessionCreation()
Returns true if new SSLSessions may be established by an SSLEngine.

See Also:
SSLEngine.getEnableSessionCreation()

setEnableSslSessionCreation

public void setEnableSslSessionCreation(boolean flag)
Sets whether new SSLSessions may be established by an SSLEngine.

See Also:
SSLEngine.setEnableSessionCreation(boolean)

setOptions

public void setOptions(Map<String,Object> options)
Description copied from interface: ChannelConfig
Sets the configuration properties from the specified Map.

Specified by:
setOptions in interface ChannelConfig

setOption

public boolean setOption(String key,
                         Object value)
Description copied from interface: ChannelConfig
Sets a configuration property with the specified name and value. To override this method properly, you must call the super class:
 public boolean setOption(String name, Object value) {
     if (super.setOption(name, value)) {
         return true;
     }

     if (name.equals("additionalOption")) {
         ....
         return true;
     }

     return false;
 }
 

Specified by:
setOption in interface ChannelConfig
Returns:
true if and only if the property has been set

getReceiveBufferSize

public int getReceiveBufferSize()
Description copied from interface: SocketChannelConfig
Gets the SO_RCVBUF option.

Specified by:
getReceiveBufferSize in interface SocketChannelConfig

getSendBufferSize

public int getSendBufferSize()
Description copied from interface: SocketChannelConfig
Gets the SO_SNDBUF option.

Specified by:
getSendBufferSize in interface SocketChannelConfig

getSoLinger

public int getSoLinger()
Description copied from interface: SocketChannelConfig
Gets the SO_LINGER option.

Specified by:
getSoLinger in interface SocketChannelConfig

getTrafficClass

public int getTrafficClass()
Description copied from interface: SocketChannelConfig
Gets the traffic class.

Specified by:
getTrafficClass in interface SocketChannelConfig

isKeepAlive

public boolean isKeepAlive()
Description copied from interface: SocketChannelConfig
Gets the SO_KEEPALIVE option.

Specified by:
isKeepAlive in interface SocketChannelConfig

isReuseAddress

public boolean isReuseAddress()
Description copied from interface: SocketChannelConfig
Gets the SO_REUSEADDR option.

Specified by:
isReuseAddress in interface SocketChannelConfig

isTcpNoDelay

public boolean isTcpNoDelay()
Description copied from interface: SocketChannelConfig
Gets the SO_TCPNODELAY option.

Specified by:
isTcpNoDelay in interface SocketChannelConfig

setKeepAlive

public void setKeepAlive(boolean keepAlive)
Description copied from interface: SocketChannelConfig
Sets the SO_KEEPALIVE option.

Specified by:
setKeepAlive in interface SocketChannelConfig

setPerformancePreferences

public void setPerformancePreferences(int connectionTime,
                                      int latency,
                                      int bandwidth)
Description copied from interface: SocketChannelConfig
Sets the performance preferences as specified in Socket.setPerformancePreferences(int, int, int).

Specified by:
setPerformancePreferences in interface SocketChannelConfig

setReceiveBufferSize

public void setReceiveBufferSize(int receiveBufferSize)
Description copied from interface: SocketChannelConfig
Gets the SO_RCVBUF option.

Specified by:
setReceiveBufferSize in interface SocketChannelConfig

setReuseAddress

public void setReuseAddress(boolean reuseAddress)
Description copied from interface: SocketChannelConfig
Sets the SO_REUSEADDR option.

Specified by:
setReuseAddress in interface SocketChannelConfig

setSendBufferSize

public void setSendBufferSize(int sendBufferSize)
Description copied from interface: SocketChannelConfig
Sets the SO_SNDBUF option.

Specified by:
setSendBufferSize in interface SocketChannelConfig

setSoLinger

public void setSoLinger(int soLinger)
Description copied from interface: SocketChannelConfig
Sets the SO_LINGER option.

Specified by:
setSoLinger in interface SocketChannelConfig

setTcpNoDelay

public void setTcpNoDelay(boolean tcpNoDelay)
Description copied from interface: SocketChannelConfig
Sets the SO_TCPNODELAY option.

Specified by:
setTcpNoDelay in interface SocketChannelConfig

setTrafficClass

public void setTrafficClass(int trafficClass)
Description copied from interface: SocketChannelConfig
Sets the traffic class as specified in Socket.setTrafficClass(int).

Specified by:
setTrafficClass in interface SocketChannelConfig

getBufferFactory

public ChannelBufferFactory getBufferFactory()
Description copied from interface: ChannelConfig
Returns the default ChannelBufferFactory used to create a new ChannelBuffer. The default is HeapChannelBufferFactory. You can specify a different factory to change the default ByteOrder for example.

Specified by:
getBufferFactory in interface ChannelConfig

getConnectTimeoutMillis

public int getConnectTimeoutMillis()
Description copied from interface: ChannelConfig
Returns the connect timeout of the channel in milliseconds. If the Channel does not support connect operation, this property is not used at all, and therefore will be ignored.

Specified by:
getConnectTimeoutMillis in interface ChannelConfig
Returns:
the connect timeout in milliseconds. 0 if disabled.

getPipelineFactory

public ChannelPipelineFactory getPipelineFactory()
Description copied from interface: ChannelConfig
Returns the ChannelPipelineFactory which will be used when a child channel is created. If the Channel does not create a child channel, this property is not used at all, and therefore will be ignored.

Specified by:
getPipelineFactory in interface ChannelConfig

setBufferFactory

public void setBufferFactory(ChannelBufferFactory bufferFactory)
Description copied from interface: ChannelConfig
Sets the default ChannelBufferFactory used to create a new ChannelBuffer. The default is HeapChannelBufferFactory. You can specify a different factory to change the default ByteOrder for example.

Specified by:
setBufferFactory in interface ChannelConfig

setConnectTimeoutMillis

public void setConnectTimeoutMillis(int connectTimeoutMillis)
Description copied from interface: ChannelConfig
Sets the connect timeout of the channel in milliseconds. If the Channel does not support connect operation, this property is not used at all, and therefore will be ignored.

Specified by:
setConnectTimeoutMillis in interface ChannelConfig
Parameters:
connectTimeoutMillis - the connect timeout in milliseconds. 0 to disable.

setPipelineFactory

public void setPipelineFactory(ChannelPipelineFactory pipelineFactory)
Description copied from interface: ChannelConfig
Sets the ChannelPipelineFactory which will be used when a child channel is created. If the Channel does not create a child channel, this property is not used at all, and therefore will be ignored.

Specified by:
setPipelineFactory in interface ChannelConfig


Copyright © 2008-2011 JBoss, a division of Red Hat, Inc.. All Rights Reserved.