public class ConnectionlessBootstrap extends Bootstrap
Channel for a
 connectionless transport.
 ServerBootstrap instead for connection oriented transports.
 Do not use this helper if you are using a connection oriented transport such
 as TCP/IP and local transport which accepts an incoming connection and lets
 the accepted child channels handle received messages.
 Options are used to configure a channel:
 For the detailed list of available options, please refer toConnectionlessBootstrapb = ...; // Options for a new channel b.setOption("localAddress", newInetSocketAddress(8080)); b.setOption("tcpNoDelay", true); b.setOption("receiveBufferSize", 1048576);
ChannelConfig and its sub-types.
 ChannelPipeline and you can configure it
 in two ways.
 The recommended approach is to specify a ChannelPipelineFactory by
 calling Bootstrap.setPipelineFactory(ChannelPipelineFactory).
 ConnectionlessBootstrapb = ...; b.setPipelineFactory(new MyPipelineFactory()); public class MyPipelineFactory implementsChannelPipelineFactory{ publicChannelPipelinegetPipeline() throws Exception { // Create and configure a new pipeline for a new channel.ChannelPipelinep =Channels.pipeline(); p.addLast("encoder", new EncodingHandler()); p.addLast("decoder", new DecodingHandler()); p.addLast("logic", new LogicHandler()); return p; } }
The alternative approach, which works only in a certain situation, is to use the default pipeline and let the bootstrap to shallow-copy the default pipeline for each new channel:
Please note 'shallow-copy' here means that the addedConnectionlessBootstrapb = ...;ChannelPipelinep = b.getPipeline(); // Add handlers to the default pipeline. p.addLast("encoder", new EncodingHandler()); p.addLast("decoder", new DecodingHandler()); p.addLast("logic", new LogicHandler());
ChannelHandlers
 are not cloned but only their references are added to the new pipeline.
 Therefore, you cannot use this approach if you are going to open more than
 one Channels or run a server that accepts incoming connections to
 create its child channels.
 ChannelsConnectionlessBootstrap is just a helper class.  It neither
 allocates nor manages any resources.  What manages the resources is the
 ChannelFactory implementation you specified in the constructor of
 ConnectionlessBootstrap.  Therefore, it is OK to create as
 many ConnectionlessBootstrap instances as you want with the same
 ChannelFactory to apply different settings for different
 Channels.| Constructor and Description | 
|---|
ConnectionlessBootstrap()
Creates a new instance with no  
ChannelFactory set. | 
ConnectionlessBootstrap(ChannelFactory channelFactory)
Creates a new instance with the specified initial  
ChannelFactory. | 
| Modifier and Type | Method and Description | 
|---|---|
Channel | 
bind()
Creates a new channel which is bound to the local address which was
 specified in the current  
"localAddress" option. | 
Channel | 
bind(SocketAddress localAddress)
Creates a new channel which is bound to the specified local address. 
 | 
ChannelFuture | 
connect()
Creates a new connected channel with the current  
"remoteAddress"
 and "localAddress" option. | 
ChannelFuture | 
connect(SocketAddress remoteAddress)
Creates a new connected channel with the specified
  
"remoteAddress" and the current "localAddress" option. | 
ChannelFuture | 
connect(SocketAddress remoteAddress,
       SocketAddress localAddress)
Creates a new connected channel with the specified
  
"remoteAddress" and the specified "localAddress". | 
getFactory, getOption, getOptions, getPipeline, getPipelineAsMap, getPipelineFactory, releaseExternalResources, setFactory, setOption, setOptions, setPipeline, setPipelineAsMap, setPipelineFactory, shutdownpublic ConnectionlessBootstrap()
ChannelFactory set.
 Bootstrap.setFactory(ChannelFactory) must be called before any I/O
 operation is requested.public ConnectionlessBootstrap(ChannelFactory channelFactory)
ChannelFactory.public Channel bind()
"localAddress" option.  This method is
 similar to the following code:
 
 ConnectionlessBootstrap b = ...;
 b.bind(b.getOption("localAddress"));
 IllegalStateException - if "localAddress" option was not setClassCastException - if "localAddress" option's value is
         neither a SocketAddress nor nullChannelException - if failed to create a new channel and
                      bind it to the local addresspublic Channel bind(SocketAddress localAddress)
ChannelException - if failed to create a new channel and
                      bind it to the local addresspublic ChannelFuture connect()
"remoteAddress"
 and "localAddress" option.  If the "localAddress" option
 is not set, the local address of a new channel is determined
 automatically. This method is similar to the following code:
 
 ConnectionlessBootstrap b = ...;
 b.connect(b.getOption("remoteAddress"), b.getOption("localAddress"));
 IllegalStateException - if "remoteAddress" option was not setClassCastException - if "remoteAddress" or "localAddress" option's
            value is neither a SocketAddress nor nullChannelPipelineException - if this bootstrap's pipelineFactory
            failed to create a new ChannelPipelinepublic ChannelFuture connect(SocketAddress remoteAddress)
"remoteAddress" and the current "localAddress" option.
 If the "localAddress" option is not set, the local address of
 a new channel is determined automatically.  This method is identical
 with the following code:
 
 ConnectionlessBootstrap b = ...;
 b.connect(remoteAddress, b.getOption("localAddress"));
 ClassCastException - if "localAddress" option's value is
            neither a SocketAddress nor nullChannelPipelineException - if this bootstrap's pipelineFactory
            failed to create a new ChannelPipelinepublic ChannelFuture connect(SocketAddress remoteAddress, SocketAddress localAddress)
"remoteAddress" and the specified "localAddress".
 If the specified local address is null, the local address of a
 new channel is determined automatically.ChannelPipelineException - if this bootstrap's pipelineFactory
            failed to create a new ChannelPipelineCopyright © 2008-2015 The Netty Project. All Rights Reserved.