/** * * @author sherlock */ import java.io.*; import java.util.*; import javax.microedition.io.*; public class NxtBrick { NxtReaderThread reader; StreamConnection con; String url; OutputStream os; InputStream is; NxtMidlet.Logger logger; NxtBrick (NxtMidlet.Logger aLogger) { logger = aLogger; } public void connect () throws Exception { NxtBluetooth nxtBluetooth = new NxtBluetooth (logger); try{ nxtBluetooth.find (); url = nxtBluetooth.getURL (); logger.line (url); } catch (java.io.IOException e){ logger.line (e.getMessage ()); throw new Exception ("No NXT found"); } try{ con = (StreamConnection) Connector.open (url); os = con.openOutputStream (); is = con.openInputStream (); reader = new NxtReaderThread (logger, is, os); reader.start (); } catch (java.io.IOException e){ logger.line (e.getMessage ()); throw new Exception ("Connection failed to " + url); } } public void disconnect (){ reader.terminate (); reader = null; con = null; } public int avail () { return reader.getInAvail (); } /*public Vector messages () { return reader.getMessages (); }*/ public void send (int mailbox, String s) { NxtMessage msg =new NxtMessage (NxtMessage.INCOMING, mailbox, s, false); try { os.write (msg.pack ()); os.flush (); } catch (java.io.IOException e){ logger.line (e.getMessage ()); } } }