Class ServerConnection
- java.lang.Object
-
- org.activecomponents.udp.holepunching.server.ServerConnection
-
- All Implemented Interfaces:
java.lang.Runnable,IConnectedHost,IRegisteredHost
public class ServerConnection extends java.lang.Object implements java.lang.Runnable, IConnectedHost, IRegisteredHost
-
-
Field Summary
Fields Modifier and Type Field Description protected java.net.SocketcmdsocketSocket that receives commands from the client.static java.util.List<java.lang.String>COMMAND_CLASSNAMESstatic java.util.List<java.lang.String>COMMAND_CLASSNAMES_WEBprotected IServerCommand[]commandsprotected java.net.DatagramSocketdgsocketprotected byte[]readbufferprotected java.lang.Stringregisteredprotected java.util.Map<java.lang.String,IRegisteredHost>registeredhostsprotected booleanrunningprotected static java.lang.StringWELCOME_MSG
-
Constructor Summary
Constructors Constructor Description ServerConnection(java.net.Socket cmdsocket, java.net.DatagramSocket dgsocket, java.util.Map<java.lang.String,IRegisteredHost> registeredhosts)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static IServerCommand[]getCommands(java.util.List<java.lang.String> classnames, java.lang.ClassLoader cl)java.lang.StringgetRegistered()java.util.Map<java.lang.String,IRegisteredHost>getRegisteredHosts()Retrieves the registered hosts.java.net.InetAddressgetRemoteAddress()Gets the address of the connected host.java.net.DatagramSocketgetUdpSocket()Retrieves the UDP socket for testing communication.protected java.lang.StringreadNextLine()voidrun()protected java.lang.StringrunCommand(java.lang.String cmd, java.lang.String[] args)voidsetRegistered(java.lang.String registered)voidwriteMsg(java.lang.String msg)Writes a message to the connected host.
-
-
-
Field Detail
-
WELCOME_MSG
protected static final java.lang.String WELCOME_MSG
- See Also:
- Constant Field Values
-
COMMAND_CLASSNAMES
public static final java.util.List<java.lang.String> COMMAND_CLASSNAMES
-
COMMAND_CLASSNAMES_WEB
public static final java.util.List<java.lang.String> COMMAND_CLASSNAMES_WEB
-
cmdsocket
protected java.net.Socket cmdsocket
Socket that receives commands from the client.
-
dgsocket
protected java.net.DatagramSocket dgsocket
-
registeredhosts
protected java.util.Map<java.lang.String,IRegisteredHost> registeredhosts
-
commands
protected IServerCommand[] commands
-
readbuffer
protected byte[] readbuffer
-
running
protected boolean running
-
registered
protected volatile java.lang.String registered
-
-
Constructor Detail
-
ServerConnection
public ServerConnection(java.net.Socket cmdsocket, java.net.DatagramSocket dgsocket, java.util.Map<java.lang.String,IRegisteredHost> registeredhosts)
-
-
Method Detail
-
run
public void run()
- Specified by:
runin interfacejava.lang.Runnable
-
writeMsg
public void writeMsg(java.lang.String msg)
Writes a message to the connected host.- Specified by:
writeMsgin interfaceIRegisteredHost- Parameters:
msg- The message.
-
getRemoteAddress
public java.net.InetAddress getRemoteAddress()
Gets the address of the connected host.- Specified by:
getRemoteAddressin interfaceIConnectedHost- Returns:
- The address.
-
getUdpSocket
public java.net.DatagramSocket getUdpSocket()
Retrieves the UDP socket for testing communication.- Specified by:
getUdpSocketin interfaceIConnectedHost- Returns:
- The UDP socket.
-
getRegisteredHosts
public java.util.Map<java.lang.String,IRegisteredHost> getRegisteredHosts()
Retrieves the registered hosts.- Specified by:
getRegisteredHostsin interfaceIConnectedHost- Returns:
- The registered hosts.
-
getRegistered
public java.lang.String getRegistered()
-
setRegistered
public void setRegistered(java.lang.String registered)
-
runCommand
protected java.lang.String runCommand(java.lang.String cmd, java.lang.String[] args)
-
readNextLine
protected java.lang.String readNextLine() throws java.lang.Exception- Throws:
java.lang.Exception
-
getCommands
public static IServerCommand[] getCommands(java.util.List<java.lang.String> classnames, java.lang.ClassLoader cl)
-
-