|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.jme3.network.base.DefaultServer
public class DefaultServer
A default implementation of the Server interface that delegates its network connectivity to kernel.Kernel.
Nested Class Summary | |
---|---|
protected class |
DefaultServer.Connection
|
protected class |
DefaultServer.FilterAdapter
|
protected class |
DefaultServer.Redispatch
|
Constructor Summary | |
---|---|
DefaultServer(java.lang.String gameName,
int version,
Kernel reliable,
Kernel fast)
|
Method Summary | |
---|---|
int |
addChannel(int port)
Adds an alternate channel to the server, using the specified port. |
void |
addConnectionListener(ConnectionListener listener)
Adds a listener that will be notified when new hosted connections arrive. |
void |
addMessageListener(MessageListener<? super HostedConnection> listener)
Adds a listener that will be notified when any message or object is received from one of the clients. |
void |
addMessageListener(MessageListener<? super HostedConnection> listener,
java.lang.Class... classes)
Adds a listener that will be notified when messages of the specified types are received from one of the clients. |
void |
broadcast(Filter<? super HostedConnection> filter,
Message message)
Sends the specified message to all connected clients that match the filter. |
void |
broadcast(int channel,
Filter<? super HostedConnection> filter,
Message message)
Sends the specified message over the specified alternate channel to all connected clients that match the filter. |
void |
broadcast(Message message)
Sends the specified message to all connected clients. |
protected void |
checkChannel(int channel)
|
void |
close()
Closes all client connections, stops and running processing threads, and closes the host connection. |
protected void |
connectionClosed(Endpoint p)
|
protected void |
dispatch(HostedConnection source,
Message m)
|
protected void |
fireConnectionAdded(HostedConnection conn)
|
protected void |
fireConnectionRemoved(HostedConnection conn)
|
protected int |
getChannel(KernelAdapter ka)
|
protected HostedConnection |
getConnection(Endpoint endpoint)
|
HostedConnection |
getConnection(int id)
Retrieves a hosted connection by ID. |
java.util.Collection<HostedConnection> |
getConnections()
Retrieves a read-only collection of all currently connected connections. |
java.lang.String |
getGameName()
Returns the 'game name' for this server. |
int |
getVersion()
Returns the game-specific version of this server used for detecting mismatched clients. |
boolean |
hasConnections()
Returns true if the server has active connections at the time of this call. |
boolean |
isRunning()
Returns true if the server has been started. |
protected void |
registerClient(KernelAdapter ka,
Endpoint p,
ClientRegistrationMessage m)
|
void |
removeConnectionListener(ConnectionListener listener)
Removes a previously registered connection listener. |
void |
removeMessageListener(MessageListener<? super HostedConnection> listener)
Removes a previously registered wildcard listener. |
void |
removeMessageListener(MessageListener<? super HostedConnection> listener,
java.lang.Class... classes)
Removes a previously registered type-specific listener from the specified types. |
void |
start()
Start the server so that it will began accepting new connections and processing messages. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public DefaultServer(java.lang.String gameName, int version, Kernel reliable, Kernel fast)
Method Detail |
---|
public java.lang.String getGameName()
Server
getGameName
in interface Server
public int getVersion()
Server
getVersion
in interface Server
public int addChannel(int port)
Server
addChannel
in interface Server
protected void checkChannel(int channel)
public void start()
Server
start
in interface Server
public boolean isRunning()
Server
isRunning
in interface Server
public void close()
Server
close
in interface Server
public void broadcast(Message message)
Server
broadcast
in interface Server
public void broadcast(Filter<? super HostedConnection> filter, Message message)
Server
Examples:
// Broadcast to connections: conn1, conn2, and conn3 server.broadcast( Filters.in( conn1, conn2, conn3 ), message ); // Broadcast to all connections exception source server.broadcast( Filters.notEqualTo( source ), message );
broadcast
in interface Server
public void broadcast(int channel, Filter<? super HostedConnection> filter, Message message)
Server
Examples:
// Broadcast to connections: conn1, conn2, and conn3 server.broadcast( Filters.in( conn1, conn2, conn3 ), message ); // Broadcast to all connections exception source server.broadcast( Filters.notEqualTo( source ), message );
broadcast
in interface Server
public HostedConnection getConnection(int id)
Server
getConnection
in interface Server
public boolean hasConnections()
Server
hasConnections
in interface Server
public java.util.Collection<HostedConnection> getConnections()
Server
getConnections
in interface Server
public void addConnectionListener(ConnectionListener listener)
Server
addConnectionListener
in interface Server
public void removeConnectionListener(ConnectionListener listener)
Server
removeConnectionListener
in interface Server
public void addMessageListener(MessageListener<? super HostedConnection> listener)
Server
Note about MessageListener multithreading: on the server, message events may be delivered by more than one thread depending on the server implementation used. Listener implementations should treat their shared data structures accordingly and set them up for multithreaded access. The only threading guarantee is that for a single HostedConnection, there will only ever be one thread at a time and the messages will always be delivered to that connection in the order that they were delivered. This is the only restriction placed upon server message dispatch pool implementations.
addMessageListener
in interface Server
public void addMessageListener(MessageListener<? super HostedConnection> listener, java.lang.Class... classes)
Server
addMessageListener
in interface Server
public void removeMessageListener(MessageListener<? super HostedConnection> listener)
Server
removeMessageListener
in interface Server
public void removeMessageListener(MessageListener<? super HostedConnection> listener, java.lang.Class... classes)
Server
removeMessageListener
in interface Server
protected void dispatch(HostedConnection source, Message m)
protected void fireConnectionAdded(HostedConnection conn)
protected void fireConnectionRemoved(HostedConnection conn)
protected int getChannel(KernelAdapter ka)
protected void registerClient(KernelAdapter ka, Endpoint p, ClientRegistrationMessage m)
protected HostedConnection getConnection(Endpoint endpoint)
protected void connectionClosed(Endpoint p)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |