CTL.Comm
Class Communicator

java.lang.Object
  extended by CTL.Comm.Communicator
Direct Known Subclasses:
HTTPCommunicator, StreamCommunicator, TCPCommunicator

public abstract class Communicator
extends java.lang.Object

Base class for all CTL communicators


Field Summary
private  boolean running
          Flag for signalling
 
Constructor Summary
Communicator()
           
 
Method Summary
abstract  void accept()
           
abstract  void close()
           
abstract  void connect(PeerID remote)
           
abstract  void listen()
           
 void notifyErr()
          Notifies this communicator of a critical error
abstract  PeerID pid()
           
abstract  byte[] recv()
           
abstract  byte[] recv(long len)
           
 void send(byte[] data)
           
 void send(byte[] data, boolean debug)
           
 void send(byte[] data, long len)
           
abstract  void send(byte[] data, long len, boolean debug)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

running

private boolean running
Flag for signalling

Constructor Detail

Communicator

public Communicator()
Method Detail

notifyErr

public final void notifyErr()
Notifies this communicator of a critical error


pid

public abstract PeerID pid()

recv

public abstract byte[] recv()
                     throws CTLException,
                            java.io.IOException
Throws:
CTLException
java.io.IOException

recv

public abstract byte[] recv(long len)
                     throws CTLException,
                            java.io.IOException
Throws:
CTLException
java.io.IOException

send

public abstract void send(byte[] data,
                          long len,
                          boolean debug)
                   throws java.io.IOException
Throws:
java.io.IOException

send

public final void send(byte[] data,
                       boolean debug)
                throws java.io.IOException
Throws:
java.io.IOException

send

public final void send(byte[] data,
                       long len)
                throws java.io.IOException
Throws:
java.io.IOException

send

public final void send(byte[] data)
                throws java.io.IOException
Throws:
java.io.IOException

accept

public abstract void accept()
                     throws java.io.IOException
Throws:
java.io.IOException

connect

public abstract void connect(PeerID remote)
                      throws java.io.IOException,
                             java.net.UnknownHostException
Throws:
java.io.IOException
java.net.UnknownHostException

listen

public abstract void listen()
                     throws java.io.IOException
Throws:
java.io.IOException

close

public abstract void close()
                    throws java.io.IOException
Throws:
java.io.IOException