import cmlog.*; import java.io.*; import java.net.*; import java.util.*; public class cmlogBrowserMonitor implements BrowserMonitorEventListener { private String host_ = null; private int port_ = 0; public cmlogBrowserMonitor () { } public void handleMonitorEvent (BrowserEvent event) { cdevData data; int i; int nmsgs = 0; cdevDataEntry de; if (event.status == Config.CMLOG_SUCCESS) { cdevMessage[] msgs = event.packet.messages(); nmsgs = event.packet.numberOfMessages (); for (i = 0; i < nmsgs; i++) { data = msgs[i].getData (); de = data.get (Config.TEXT_TAG); System.out.println (de.stringValue()); // data.asciiDump (); } } else if (event.status == Config.CMLOG_CBK_FINISHED) System.out.println ("Monitor finished\n"); } public static void main (String[] args) { if (args.length < 3) { System.err.println ("Usage: cmlogBrowserMonitor host port proto-version(1 or 2) [debug]"); System.exit (-1); } cmlogBrowserMonitor test = new cmlogBrowserMonitor (); test.host_ = args[0]; test.port_ = Integer.valueOf (args[1]).intValue(); Config.PROTOCOL_MAJOR_VERSION = Integer.valueOf (args[2]).intValue(); if (args.length > 3) { String tstring = args[3]; if (tstring.compareTo ("debug") == 0) Config.debug = true; } // create new cmlogBrowser Browser br = new Browser (); try { br.connect (test.host_, test.port_); }catch (UnknownHostException ue) { System.err.println (ue); System.exit (-1); }catch (IOException e) { System.err.println (e); System.exit (-1); } if (br.addMonitorEventListener (null, test) == false) { System.err.println ("Cannot register monitor event listener"); System.exit (-1); } // sleep 20 seconds before calling remove monitor try { Thread.sleep (20000); }catch (InterruptedException e){ } System.out.println("<------------------------------------>"); if (br.removeMonitorEventListener (null, test) == false) { System.err.println ("Cannot Remove monitor event listener"); System.exit (-1); } System.out.println("<------------------------------------>"); // sleep 20 seconds before calling remove monitor try { Thread.sleep (2000); }catch (InterruptedException e){ } try { br.disconnect (); }catch (IOException e) { } } }