io.netty.channel.ChannelOption#SO_BROADCAST源码实例Demo

下面列出了io.netty.channel.ChannelOption#SO_BROADCAST 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: netty-4.1.22   文件: EpollDatagramChannelConfig.java
@SuppressWarnings({ "unchecked", "deprecation" })
@Override
public <T> T getOption(ChannelOption<T> option) {
    if (option == ChannelOption.SO_BROADCAST) {
        return (T) Boolean.valueOf(isBroadcast());
    }
    if (option == ChannelOption.SO_RCVBUF) {
        return (T) Integer.valueOf(getReceiveBufferSize());
    }
    if (option == ChannelOption.SO_SNDBUF) {
        return (T) Integer.valueOf(getSendBufferSize());
    }
    if (option == ChannelOption.SO_REUSEADDR) {
        return (T) Boolean.valueOf(isReuseAddress());
    }
    if (option == ChannelOption.IP_MULTICAST_LOOP_DISABLED) {
        return (T) Boolean.valueOf(isLoopbackModeDisabled());
    }
    if (option == ChannelOption.IP_MULTICAST_ADDR) {
        return (T) getInterface();
    }
    if (option == ChannelOption.IP_MULTICAST_IF) {
        return (T) getNetworkInterface();
    }
    if (option == ChannelOption.IP_MULTICAST_TTL) {
        return (T) Integer.valueOf(getTimeToLive());
    }
    if (option == ChannelOption.IP_TOS) {
        return (T) Integer.valueOf(getTrafficClass());
    }
    if (option == ChannelOption.DATAGRAM_CHANNEL_ACTIVE_ON_REGISTRATION) {
        return (T) Boolean.valueOf(activeOnOpen);
    }
    if (option == EpollChannelOption.SO_REUSEPORT) {
        return (T) Boolean.valueOf(isReusePort());
    }
    return super.getOption(option);
}
 
源代码2 项目: netty-4.1.22   文件: EpollDatagramChannelConfig.java
@Override
@SuppressWarnings("deprecation")
public <T> boolean setOption(ChannelOption<T> option, T value) {
    validate(option, value);

    if (option == ChannelOption.SO_BROADCAST) {
        setBroadcast((Boolean) value);
    } else if (option == ChannelOption.SO_RCVBUF) {
        setReceiveBufferSize((Integer) value);
    } else if (option == ChannelOption.SO_SNDBUF) {
        setSendBufferSize((Integer) value);
    } else if (option == ChannelOption.SO_REUSEADDR) {
        setReuseAddress((Boolean) value);
    } else if (option == ChannelOption.IP_MULTICAST_LOOP_DISABLED) {
        setLoopbackModeDisabled((Boolean) value);
    } else if (option == ChannelOption.IP_MULTICAST_ADDR) {
        setInterface((InetAddress) value);
    } else if (option == ChannelOption.IP_MULTICAST_IF) {
        setNetworkInterface((NetworkInterface) value);
    } else if (option == ChannelOption.IP_MULTICAST_TTL) {
        setTimeToLive((Integer) value);
    } else if (option == ChannelOption.IP_TOS) {
        setTrafficClass((Integer) value);
    } else if (option == ChannelOption.DATAGRAM_CHANNEL_ACTIVE_ON_REGISTRATION) {
        setActiveOnOpen((Boolean) value);
    } else if (option == EpollChannelOption.SO_REUSEPORT) {
        setReusePort((Boolean) value);
    } else {
        return super.setOption(option, value);
    }

    return true;
}
 
@SuppressWarnings({ "unchecked", "deprecation" })
@Override
public <T> T getOption(ChannelOption<T> option) {
    if (option == ChannelOption.SO_BROADCAST) {
        return (T) Boolean.valueOf(isBroadcast());
    }
    if (option == ChannelOption.SO_RCVBUF) {
        return (T) Integer.valueOf(getReceiveBufferSize());
    }
    if (option == ChannelOption.SO_SNDBUF) {
        return (T) Integer.valueOf(getSendBufferSize());
    }
    if (option == ChannelOption.SO_REUSEADDR) {
        return (T) Boolean.valueOf(isReuseAddress());
    }
    if (option == ChannelOption.IP_MULTICAST_LOOP_DISABLED) {
        return (T) Boolean.valueOf(isLoopbackModeDisabled());
    }
    if (option == ChannelOption.IP_MULTICAST_ADDR) {
        return (T) getInterface();
    }
    if (option == ChannelOption.IP_MULTICAST_IF) {
        return (T) getNetworkInterface();
    }
    if (option == ChannelOption.IP_MULTICAST_TTL) {
        return (T) Integer.valueOf(getTimeToLive());
    }
    if (option == ChannelOption.IP_TOS) {
        return (T) Integer.valueOf(getTrafficClass());
    }
    if (option == ChannelOption.DATAGRAM_CHANNEL_ACTIVE_ON_REGISTRATION) {
        return (T) Boolean.valueOf(activeOnOpen);
    }
    if (option == EpollChannelOption.SO_REUSEPORT) {
        return (T) Boolean.valueOf(isReusePort());
    }
    return super.getOption(option);
}
 
@Override
@SuppressWarnings("deprecation")
public <T> boolean setOption(ChannelOption<T> option, T value) {
    validate(option, value);

    if (option == ChannelOption.SO_BROADCAST) {
        setBroadcast((Boolean) value);
    } else if (option == ChannelOption.SO_RCVBUF) {
        setReceiveBufferSize((Integer) value);
    } else if (option == ChannelOption.SO_SNDBUF) {
        setSendBufferSize((Integer) value);
    } else if (option == ChannelOption.SO_REUSEADDR) {
        setReuseAddress((Boolean) value);
    } else if (option == ChannelOption.IP_MULTICAST_LOOP_DISABLED) {
        setLoopbackModeDisabled((Boolean) value);
    } else if (option == ChannelOption.IP_MULTICAST_ADDR) {
        setInterface((InetAddress) value);
    } else if (option == ChannelOption.IP_MULTICAST_IF) {
        setNetworkInterface((NetworkInterface) value);
    } else if (option == ChannelOption.IP_MULTICAST_TTL) {
        setTimeToLive((Integer) value);
    } else if (option == ChannelOption.IP_TOS) {
        setTrafficClass((Integer) value);
    } else if (option == ChannelOption.DATAGRAM_CHANNEL_ACTIVE_ON_REGISTRATION) {
        setActiveOnOpen((Boolean) value);
    } else if (option == EpollChannelOption.SO_REUSEPORT) {
        setReusePort((Boolean) value);
    } else {
        return super.setOption(option, value);
    }

    return true;
}