edu.berkeley.guir.ptk.server
Class PComm
java.lang.Object
edu.berkeley.guir.ptk.PTK
edu.berkeley.guir.ptk.server.PComm
- All Implemented Interfaces:
- java.lang.Cloneable, java.lang.Runnable
- Direct Known Subclasses:
- PClient, PServer
- public class PComm
- extends PTK
- implements java.lang.Runnable, java.lang.Cloneable
|
Field Summary |
(package private) java.lang.String |
id
|
(package private) java.lang.String |
local_ip
|
(package private) int |
local_port
|
(package private) boolean |
server
|
(package private) java.lang.String |
server_ip
|
(package private) int |
server_port
|
|
Constructor Summary |
PComm(boolean server,
java.lang.String id,
java.lang.String local_ip,
int local_port,
java.lang.String server_ip,
int server_port)
|
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
server
boolean server
local_ip
java.lang.String local_ip
local_port
int local_port
server_port
int server_port
server_ip
java.lang.String server_ip
id
java.lang.String id
PComm
public PComm(boolean server,
java.lang.String id,
java.lang.String local_ip,
int local_port,
java.lang.String server_ip,
int server_port)
start
public void start()
- Starts a server and a thread with this as the Runnable.
stopServer
public void stopServer()
- Stops the original thread running and closes the socket.
run
public void run()
- This method loops forever waiting for data on the socket. When data
arrives, it clones a new instance of this class so the new
thread can deal with the data, while the current instance looks for new
data. The new thread deals with the data by calling handleIncomingRequest().
- Specified by:
run in interface java.lang.Runnable
handleIncomingMessage
public void handleIncomingMessage(java.net.Socket s)
sendMessage
public PMessage sendMessage(PMessage pm)
sendMessage
public PMessage sendMessage(PMessage pm,
java.lang.String ip,
int port)
serverHandleMessage
public PMessage serverHandleMessage(PMessage pm)
decodeMessage
public PMessage decodeMessage(java.io.ObjectInputStream ois)
getConnection
protected java.net.Socket getConnection(java.lang.String ip,
int port)
throws java.io.IOException
- Throws:
java.io.IOException