Search in sources :

Example 6 with EzySimpleUdpReceivedPacket

use of com.tvd12.ezyfoxserver.socket.EzySimpleUdpReceivedPacket in project ezyfox-server by youngmonkeys.

the class EzyNioUdpReader method processReadBytes.

private void processReadBytes(DatagramChannel channel) throws Exception {
    buffer.clear();
    InetSocketAddress address = (InetSocketAddress) channel.receive(buffer);
    if (address == null) {
        logger.info("has no data in udp channel: {}", channel);
        return;
    }
    int byteCount = buffer.position();
    if (byteCount > 0) {
        buffer.flip();
        byte[] binary = new byte[buffer.limit()];
        buffer.get(binary);
        EzyUdpReceivedPacket packet = new EzySimpleUdpReceivedPacket(channel, address, binary);
        udpDataHandler.fireUdpPacketReceived(packet);
    }
}
Also used : InetSocketAddress(java.net.InetSocketAddress) EzySimpleUdpReceivedPacket(com.tvd12.ezyfoxserver.socket.EzySimpleUdpReceivedPacket) EzyUdpReceivedPacket(com.tvd12.ezyfoxserver.socket.EzyUdpReceivedPacket)

Aggregations

EzySimpleUdpReceivedPacket (com.tvd12.ezyfoxserver.socket.EzySimpleUdpReceivedPacket)6 InetSocketAddress (java.net.InetSocketAddress)6 EzyUdpReceivedPacket (com.tvd12.ezyfoxserver.socket.EzyUdpReceivedPacket)5 Test (org.testng.annotations.Test)5 EzySimpleNioUdpDataHandler (com.tvd12.ezyfoxserver.nio.handler.EzySimpleNioUdpDataHandler)4 EzyHandlerGroupManager (com.tvd12.ezyfoxserver.nio.wrapper.EzyHandlerGroupManager)3 ByteBuffer (java.nio.ByteBuffer)3 EzyResponseApi (com.tvd12.ezyfoxserver.api.EzyResponseApi)1 EzySession (com.tvd12.ezyfoxserver.entity.EzySession)1 EzyNioSession (com.tvd12.ezyfoxserver.nio.entity.EzyNioSession)1 EzySimpleSession (com.tvd12.ezyfoxserver.nio.entity.EzySimpleSession)1 EzyNioHandlerGroup (com.tvd12.ezyfoxserver.nio.handler.EzyNioHandlerGroup)1 EzyChannel (com.tvd12.ezyfoxserver.socket.EzyChannel)1 EzyDatagramChannelPool (com.tvd12.ezyfoxserver.socket.EzyDatagramChannelPool)1 EzySessionManager (com.tvd12.ezyfoxserver.wrapper.EzySessionManager)1 DatagramChannel (java.nio.channels.DatagramChannel)1