private Handler<io.vertx.core.datagram.DatagramPacket> packetHandler;
public DatagramSocketImpl(VertxInternal vertx, DatagramSocketOptions options) {
super(vertx, createChannel(options.isIpV6() ? io.vertx.core.datagram.impl.InternetProtocolFamily.IPv6 : io.vertx.core.datagram.impl.InternetProtocolFamily.IPv4,
new DatagramSocketOptions(options)), vertx.getOrCreateContext(), vertx.metricsSPI().createMetrics(null, options));
ContextImpl creatingContext = vertx.getContext();
if (creatingContext != null && creatingContext.isMultiThreaded()) {
throw new IllegalStateException("Cannot use DatagramSocket in a multi-threaded worker verticle");
}
channel().config().setOption(ChannelOption.DATAGRAM_CHANNEL_ACTIVE_ON_REGISTRATION, true);