Example usage for io.netty.channel.socket DatagramPacket content

List of usage examples for io.netty.channel.socket DatagramPacket content

Introduction

In this page you can find the example usage for io.netty.channel.socket DatagramPacket content.

Prototype

ByteBuf content();

Source Link

Document

Return the data which is held by this ByteBufHolder .

Usage

From source file:com.hxr.javatone.concurrency.netty.official.qotm.QuoteOfTheMomentClientHandler.java

License:Apache License

@Override
public void messageReceived(ChannelHandlerContext ctx, DatagramPacket msg) throws Exception {
    String response = msg.content().toString(CharsetUtil.UTF_8);
    if (response.startsWith("QOTM: ")) {
        System.out.println("Quote of the Moment: " + response.substring(6));
        ctx.close();//  w w  w .  j ava2  s .  c  om
    }
}

From source file:com.hxr.javatone.concurrency.netty.official.qotm.QuoteOfTheMomentServerHandler.java

License:Apache License

@Override
public void messageReceived(ChannelHandlerContext ctx, DatagramPacket packet) throws Exception {
    System.err.println(packet);//from   www  .  j  ava  2 s .  c o m
    if ("QOTM?".equals(packet.content().toString(CharsetUtil.UTF_8))) {
        ctx.write(new DatagramPacket(Unpooled.copiedBuffer("QOTM: " + nextQuote(), CharsetUtil.UTF_8),
                packet.sender()));
    }
}

From source file:com.ibasco.agql.protocols.valve.source.query.handlers.SourceQueryPacketDecoder.java

License:Open Source License

@Override
@SuppressWarnings("unchecked")
protected void decode(ChannelHandlerContext ctx, DatagramPacket msg, List<Object> out) throws Exception {
    //Create our response packet from the datagram we received
    final SourceResponsePacket packet = builder.construct(msg.content());
    if (packet != null) {
        try {/*ww  w .j  a  v a 2s  .c o m*/
            SourceServerResponse response = SourceResponseFactory.createResponseFrom(packet);
            if (response != null) {
                response.setSender(msg.sender());
                response.setRecipient(msg.recipient());
                response.setResponsePacket(packet);
                log.debug("Receiving Data '{}' from '{}' using Channel Id: {}",
                        response.getClass().getSimpleName(), ctx.channel().remoteAddress(), ctx.channel().id());
                //Pass the message back to the messenger
                responseHandler.accept(response, null);
                return;
            }
        } catch (Exception e) {
            responseHandler.accept(null,
                    new AsyncGameLibCheckedException("Error while decoding source query response", e));
        }
    }
    throw new NoResponseFoundForPacket("Could not find a response handler for the received datagram packet",
            packet);
}

From source file:com.ibasco.agql.protocols.valve.source.query.logger.SourceLogListenHandler.java

License:Open Source License

@Override
protected void channelRead0(ChannelHandlerContext ctx, DatagramPacket msg) throws Exception {
    ByteBuf data = msg.content();
    if (data.readableBytes() > 6 && data.readIntLE() == -1) {
        byte[] raw = new byte[data.readableBytes() - 2];
        data.readBytes(raw);//from   ww w.  j av  a  2  s. co m
        data.skipBytes(2);
        //Pass to the callback
        if (logEventCallback != null)
            logEventCallback.accept(new SourceLogEntry(new String(raw, Charsets.UTF_8), msg.sender()));
    }
}

From source file:com.ibasco.agql.protocols.valve.steam.master.handlers.MasterServerPacketDecoder.java

License:Open Source License

@Override
protected void decode(ChannelHandlerContext ctx, DatagramPacket msg, List<Object> out) throws Exception {
    //Create our response packet from the datagram we received
    final MasterServerResponsePacket packet = builder.construct(msg.content());
    if (packet != null) {
        final MasterServerResponse response = new MasterServerResponse();
        if (response != null) {
            response.setSender(msg.sender());
            response.setRecipient(msg.recipient());
            response.setResponsePacket(packet);
            log.debug("Receiving Data '{}' from '{}' using Channel Id: {}", response.getClass().getSimpleName(),
                    ctx.channel().remoteAddress(), ctx.channel().id());
            //Pass the message back to the messenger
            responseCallback.accept(response, null);
            return;
        }//from ww  w  . j  av  a 2  s . co m
    }
    throw new IllegalStateException("No response packet found for the incoming datagram");
}

From source file:com.jfastnet.peers.netty.KryoNettyPeer.java

License:Apache License

public void receive(ChannelHandlerContext ctx, DatagramPacket packet) {
    ByteBuf content = packet.content();
    Message message = config.serialiser.deserialiseWithStream(new ByteBufInputStream(content));
    if (message == null) {
        return;//from  ww w . j a va2s.  c  om
    }
    // TODO set config and state
    message.payload = content;
    if (message.getFeatures() != null) {
        message.getFeatures().resolve();
    }

    if (config.debug && debugRandom.nextInt(100) < config.debugLostPackagePercentage) {
        // simulated N % loss rate
        log.warn("DEBUG: simulated loss of packet: {}", message);
        return;
    }

    message.socketAddressSender = packet.sender();
    message.socketAddressRecipient = packet.recipient();

    if (config.trackData) {
        int frame = 0;
        config.netStats.getData().add(new NetStats.Line(false, message.getSenderId(), frame,
                message.getTimestamp(), message.getClass(), ((ByteBuf) message.payload).writerIndex()));
    }

    // Let the controller receive the message.
    // Processors are called there.
    config.internalReceiver.receive(message);
}

From source file:com.jjzhk.Chapter12.udp.ChineseProverbClientHandler.java

License:Apache License

@Override
public void messageReceived(ChannelHandlerContext ctx, DatagramPacket msg) throws Exception {
    String response = msg.content().toString(CharsetUtil.UTF_8);
    if (response.startsWith("???: ")) {
        System.out.println(response);
        ctx.close();/*from   w w  w  .java 2s . c o m*/
    }
}

From source file:com.jjzhk.Chapter12.udp.ChineseProverbServerHandler.java

License:Apache License

@Override
public void messageReceived(ChannelHandlerContext ctx, DatagramPacket packet) throws Exception {
    String req = packet.content().toString(CharsetUtil.UTF_8);
    System.out.println(req);//from   ww w.  j  av  a  2  s .com
    if ("???".equals(req)) {
        ctx.writeAndFlush(new DatagramPacket(
                Unpooled.copiedBuffer("???: " + nextQuote(), CharsetUtil.UTF_8),
                packet.sender()));
    }
}

From source file:com.liferay.sync.engine.lan.server.discovery.LanDiscoveryListenerHandler.java

License:Open Source License

@Override
public void channelRead0(ChannelHandlerContext channelHandlerContext, DatagramPacket datagramPacket)
        throws Exception {

    ByteBuf byteBuf = datagramPacket.content();

    SyncLanClient syncLanClient = JSONUtil.readValue(byteBuf.toString(CharsetUtil.UTF_8), SyncLanClient.class);

    String syncLanClientUuid = syncLanClient.getSyncLanClientUuid();

    if (syncLanClientUuid.equals(LanClientUtil.getSyncLanClientUuid())) {
        return;//from   ww w .  j av  a 2s.c om
    }

    List<SyncLanEndpoint> syncLanEndpoints = SyncLanEndpointService.findSyncLanEndPoints(syncLanClientUuid);

    Map<String, Set<Long>> endpoints = syncLanClient.getEndpoints();

    for (Map.Entry<String, Set<Long>> entry : endpoints.entrySet()) {
        for (Long groupId : entry.getValue()) {
            SyncLanEndpoint syncLanEndpoint = new SyncLanEndpoint();

            syncLanEndpoint.setLanServerUuid(entry.getKey());
            syncLanEndpoint.setRepositoryId(groupId);
            syncLanEndpoint.setSyncLanClientUuid(syncLanClientUuid);

            if (!syncLanEndpoints.remove(syncLanEndpoint)) {
                SyncLanEndpointService.update(syncLanEndpoint);
            }
        }
    }

    for (SyncLanEndpoint syncLanEndpoint : syncLanEndpoints) {
        SyncLanEndpointService.deleteSyncLanEndpoint(syncLanEndpoint);
    }

    InetSocketAddress inetSocketAddress = datagramPacket.sender();

    syncLanClient.setHostname(inetSocketAddress.getHostName());

    syncLanClient.setModifiedTime(System.currentTimeMillis());

    SyncLanClientService.update(syncLanClient);
}

From source file:com.lunex.inputprocessor.testdemo.QuoteOfTheMomentServerHandler.java

License:Apache License

@Override
public void channelRead0(ChannelHandlerContext ctx, DatagramPacket packet) throws Exception {
    System.err.println(packet);/*from   www  . j  av a 2 s.  com*/
    String packageContent = packet.content().toString(CharsetUtil.UTF_8);
    if ("QOTM?".equals(packageContent)) {
        ctx.write(new DatagramPacket(Unpooled.copiedBuffer("QOTM: " + nextQuote(), CharsetUtil.UTF_8),
                packet.sender()));
    }
}