|
Secure iNet Factory | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface BsdListener
Implements methods for capturing connected and disconnected events from
Rexec and derived classes. Class that implements this interface can also
capture data flow events sourced from InputWriter and OutputReader classes
of bsd package. Your application should implement this interface to capture
the events of data flow between remote host and local machine.
Typical use of the listener would be to monitor the traffic in data
streams. Simple implementation, which only counts the bytes transferred
may look somewhat like this:
Rlogin rlogin = new Rlogin("remote.host.com", "johndoe", "johndoe", "vt100"); try { rlogin.connect(); rlogin.execute(); class OutputReaderListenerClass implements BsdListener { long total=0; public void connected(BsdConnectedEvent event) {} public void disconnected(BsdDisconnectedEvent event) {} public void bytesTransmitted(BsdBytesTransmittedEvent event) {} public void bytesReceived(BsdBytesReceivedEvent event) { this.total = event.getTotal(); } } class InputWriterListenerClass implements BsdListener { long total=0; public void connected(BsdConnectedEvent event) {} public void disconnected(BsdDisconnectedEvent event) {} public void bytesReceived(BsdBytesReceivedEvent event) {} public void bytesTransmitted(BsdBytesTransmittedEvent event) { this.total = event.getTotal(); } } OutputReaderListenerClass OutputReaderListener = new OutputReaderListenerClass(); InputWriterListenerClass InputWriterListener = new InputWriterListenerClass(); OutputReader reader = new OutputReader(rlogin.getInputStream(), System.out, rlogin.getBsdListeners()); InputWriter writer = new InputWriter(System.in, rlogin.getOutputStream(), rlogin.getBsdListeners()); rlogin.addBsdListener(OutputReaderListener); rlogin.addBsdListener(InputWriterListener); reader.setPriority(Thread.currentThread().getPriority() + 1); reader.start(); writer.setDaemon(true); writer.start(); try { reader.join(); writer.interrupt(); } catch(InterruptedException e) {} System.out.println("Bytes received: " + OutputReaderListener.total); System.out.println("Bytes sent: " + InputWriterListener.total); } catch(Exception e) { System.out.println(e); }
Method Summary | |
---|---|
void |
bytesReceived(BsdBytesReceivedEvent event)
Invoked when data arrives from an InputStream. |
void |
bytesTransmitted(BsdBytesTransmittedEvent event)
Invoked when data is transmitted to an OutputStream. |
void |
connected(BsdConnectedEvent event)
Invoked when connection to BSD r service server is established. |
void |
disconnected(BsdDisconnectedEvent event)
Invoked when connection to BSD r service server is released. |
Method Detail |
---|
void connected(BsdConnectedEvent event)
event
- a BsdConnectedEvent
BsdConnectedEvent
void disconnected(BsdDisconnectedEvent event)
event
- a BsdDisconnectedEvent
BsdDisconnectedEvent
void bytesTransmitted(BsdBytesTransmittedEvent event)
event
- a BsdBytesTransmittedEvent
void bytesReceived(BsdBytesReceivedEvent event)
event
- a BsdBytesReceivedEvent
|
Secure iNet Factory | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |