org.jboss.netty.channel.socket

## Interface DatagramChannelConfig

All Superinterfaces:
  ChannelConfig

All Known Subinterfaces:
  NioDatagramChannelConfig

All Known Implementing Classes:
  DefaultDatagramChannelConfig

    public interface DatagramChannelConfig
    extends ChannelConfig

A `ChannelConfig` for a `DatagramChannel`.

### Available options

In addition to the options provided by `ChannelConfig`, `DatagramChannelConfig` allows the following options in the option map:

Name | Associated setter method
--- | ---
`"broadcast"` | `setBroadcast(boolean)`
`"interface"` | `setInterface(InetAddress)`
`"loopbackModeDisabled"` | `setLoopbackModeDisabled(boolean)`
`"networkInterface"` | `setNetworkInterface(NetworkInterface)`
`"reuseAddress"` | `setReuseAddress(boolean)`
`"receiveBufferSize"` | `setReceiveBufferSize(int)`
`"receiveBufferSizePredictor"` | `setReceiveBufferSizePredictor(ReceiveBufferSizePredictor)`
`"receiveBufferSizePredictorFactory"` | `setReceiveBufferSizePredictorFactory(ReceiveBufferSizePredictorFactory)`
`"sendBufferSize"` | `setSendBufferSize(int)`
`"timeToLive"` | `setTimeToLive(int)`
`"trafficClass"` | `setTrafficClass(int)`

### Method Summary

Methods
`InetAddress` `getInterface()` Gets the address of the network interface used for multicast packets.
`NetworkInterface` `getNetworkInterface()` Gets the `StandardSocketOptions.IP_MULTICAST_IF` option.
`int` `getReceiveBufferSize()` Gets the `StandardSocketOptions.SO_RCVBUF` option.
`ReceiveBufferSizePredictor` `getReceiveBufferSizePredictor()` Returns the `ReceiveBufferSizePredictor` which predicts the number of readable bytes in the socket receive buffer.
`ReceiveBufferSizePredictorFactory` `getReceiveBufferSizePredictorFactory()` Returns the `ReceiveBufferSizePredictorFactory` which creates a new `ReceiveBufferSizePredictor` when a new channel is created and no `ReceiveBufferSizePredictor` was set.
`int` `getSendBufferSize()` Gets the `StandardSocketOptions.SO_SNDBUF` option.
`int` `getTimeToLive()` Gets the `StandardSocketOptions.IP_MULTICAST_TTL` option.
`int` `getTrafficClass()` Gets the `StandardSocketOptions.IP_TOS` option.
`boolean` `isBroadcast()` Gets the `StandardSocketOptions.SO_BROADCAST` option.
`boolean` `isLoopbackModeDisabled()` Gets the `StandardSocketOptions.IP_MULTICAST_LOOP` option.
`boolean` `isReuseAddress()` Gets the `StandardSocketOptions.SO_REUSEADDR` option.
`void` `setBroadcast(boolean broadcast)` Sets the `StandardSocketOptions.SO_BROADCAST` option.
`void` `setInterface(InetAddress interfaceAddress)` Sets the address of the network interface used for multicast packets.
`void` `setLoopbackModeDisabled(boolean loopbackModeDisabled)` Sets the `StandardSocketOptions.IP_MULTICAST_LOOP` option.
`void` `setNetworkInterface(NetworkInterface networkInterface)` Sets the `StandardSocketOptions.IP_MULTICAST_IF` option.
`void` `setReceiveBufferSize(int receiveBufferSize)` Sets the `StandardSocketOptions.SO_RCVBUF` option.
`void` `setReceiveBufferSizePredictor(ReceiveBufferSizePredictor predictor)` Sets the `ReceiveBufferSizePredictor` which predicts the number of readable bytes in the socket receive buffer.
`void` `setReceiveBufferSizePredictorFactory(ReceiveBufferSizePredictorFactory predictorFactory)` Sets the `ReceiveBufferSizePredictor` which creates a new `ReceiveBufferSizePredictor` when a new channel is created and no `ReceiveBufferSizePredictor` was set.
`void` `setReuseAddress(boolean reuseAddress)` Sets the `StandardSocketOptions.SO_REUSEADDR` option.
`void` `setSendBufferSize(int sendBufferSize)` Sets the `StandardSocketOptions.SO_SNDBUF` option.
`void` `setTimeToLive(int ttl)` Sets the `StandardSocketOptions.IP_MULTICAST_TTL` option.
`void` `setTrafficClass(int trafficClass)` Gets the `StandardSocketOptions.IP_TOS` option.

### Methods inherited from interface org.jboss.netty.channel.ChannelConfig

`getBufferFactory, getConnectTimeoutMillis, getPipelineFactory, setBufferFactory, setConnectTimeoutMillis, setOption, setOptions, setPipelineFactory`

### Method Detail

#### getSendBufferSize

    int getSendBufferSize()

Gets the `StandardSocketOptions.SO_SNDBUF` option.

#### setSendBufferSize

    void setSendBufferSize(int sendBufferSize)

Sets the `StandardSocketOptions.SO_SNDBUF` option.

#### getReceiveBufferSize

    int getReceiveBufferSize()

Gets the `StandardSocketOptions.SO_RCVBUF` option.

#### setReceiveBufferSize

    void setReceiveBufferSize(int receiveBufferSize)

Sets the `StandardSocketOptions.SO_RCVBUF` option.

#### getTrafficClass

    int getTrafficClass()

Gets the `StandardSocketOptions.IP_TOS` option.

#### setTrafficClass

    void setTrafficClass(int trafficClass)

Gets the `StandardSocketOptions.IP_TOS` option.

#### isReuseAddress

    boolean isReuseAddress()

Gets the `StandardSocketOptions.SO_REUSEADDR` option.

#### setReuseAddress

    void setReuseAddress(boolean reuseAddress)

Sets the `StandardSocketOptions.SO_REUSEADDR` option.

#### isBroadcast

    boolean isBroadcast()

Gets the `StandardSocketOptions.SO_BROADCAST` option.

#### setBroadcast

    void setBroadcast(boolean broadcast)

Sets the `StandardSocketOptions.SO_BROADCAST` option.

#### isLoopbackModeDisabled

    boolean isLoopbackModeDisabled()

Gets the `StandardSocketOptions.IP_MULTICAST_LOOP` option.

#### setLoopbackModeDisabled

    void setLoopbackModeDisabled(boolean loopbackModeDisabled)

Sets the `StandardSocketOptions.IP_MULTICAST_LOOP` option.

Parameters:
  `loopbackModeDisabled` - `true` if and only if the loopback mode has been disabled

#### getTimeToLive

    int getTimeToLive()

Gets the `StandardSocketOptions.IP_MULTICAST_TTL` option.

#### setTimeToLive

    void setTimeToLive(int ttl)

Sets the `StandardSocketOptions.IP_MULTICAST_TTL` option.

#### getInterface

    InetAddress getInterface()

Gets the address of the network interface used for multicast packets.

#### setInterface

    void setInterface(InetAddress interfaceAddress)

Sets the address of the network interface used for multicast packets.

#### getNetworkInterface

    NetworkInterface getNetworkInterface()

Gets the `StandardSocketOptions.IP_MULTICAST_IF` option.

#### setNetworkInterface

    void setNetworkInterface(NetworkInterface networkInterface)

Sets the `StandardSocketOptions.IP_MULTICAST_IF` option.

#### getReceiveBufferSizePredictor

    ReceiveBufferSizePredictor getReceiveBufferSizePredictor()

Returns the `ReceiveBufferSizePredictor` which predicts the number of readable bytes in the socket receive buffer. The default predictor is ``FixedReceiveBufferSizePredictor`(768)`.

#### setReceiveBufferSizePredictor

    void setReceiveBufferSizePredictor(ReceiveBufferSizePredictor predictor)

Sets the `ReceiveBufferSizePredictor` which predicts the number of readable bytes in the socket receive buffer. The default predictor is ``FixedReceiveBufferSizePredictor`(768)`.

#### getReceiveBufferSizePredictorFactory

    ReceiveBufferSizePredictorFactory getReceiveBufferSizePredictorFactory()

Returns the `ReceiveBufferSizePredictorFactory` which creates a new `ReceiveBufferSizePredictor` when a new channel is created and no `ReceiveBufferSizePredictor` was set. If no predictor was set for the channel, `setReceiveBufferSizePredictor(ReceiveBufferSizePredictor)` will be called with the new predictor. The default factory is ``FixedReceiveBufferSizePredictorFactory`(768)`.

#### setReceiveBufferSizePredictorFactory

    void setReceiveBufferSizePredictorFactory(ReceiveBufferSizePredictorFactory predictorFactory)

Sets the `ReceiveBufferSizePredictor` which creates a new `ReceiveBufferSizePredictor` when a new channel is created and no `ReceiveBufferSizePredictor` was set. If no predictor was set for the channel, `setReceiveBufferSizePredictor(ReceiveBufferSizePredictor)` will be called with the new predictor. The default factory is ``FixedReceiveBufferSizePredictorFactory`(768)`.