Skip to content

A universal TCP/UDP server implementation.

License

Dschinghis-Kahn/server

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

server

A universal TCP/UDP server implementation.

##Features

  • Easy to use
  • Can handle TCP and UDP connections
  • Is scalable

##Example

public class CoreServer implements IObjectReceiver<INetworkData> {

    public CoreServer() throws IOException {
        /*
         * Creates a Server object with 10 threads accepting incoming
         * connections.
         */
        Server server = new Server("192.168.0.4", 10000, 10, false);
        server.registerSocketReceiver(this);
    }

    @Override
    public void receiveObject(INetworkData networkData) {
        if (networkData instanceof TcpNetworkData) {
            // A TCP connection was recevied
            TcpNetworkData tcpNetworkData = (TcpNetworkData) networkData;
            OutputStream output = tcpNetworkData.getTcpOutputStream();
            InputStream input = tcpNetworkData.getTcpInputStream();

            // Do something with the input and output streams.
        } else {
            // A UDP connection was recevied
            UdpNetworkData udpNetworkData = (UdpNetworkData) networkData;
            ByteBuffer packet = udpNetworkData.getUdpData();

            // Do something with the data packet.
        }

    }
}

About

A universal TCP/UDP server implementation.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages