+
+ this.server = server;
+ this.nickname = nickname;
+ this.channel = channel;
+
+ try {
+ socket = new Socket(this.server, this.port);
+ input = new BufferedReader(new InputStreamReader(socket.getInputStream()));
+ output = new PrintWriter(socket.getOutputStream());
+ } catch (Exception e) {
+ Os.debug("Client: failed to create connection: " + e);
+ return false;
+ }
+
+ Os.debug("Client: connected");
+ raw("USER "+username+" "+hostname+" "+server+" :"+nickname);
+ raw("NICK "+nickname);
+
+ return true;
+ }
+
+ public boolean abort()
+ {
+ Os.debug("Client: abort");
+ try {
+ this.socket.close();
+ return true;
+ } catch (Exception e) {
+ Os.debug("Client: error closing socket", e);
+ return false;
+ }
+ }
+
+ public void raw(String line)
+ {
+ try {
+ Os.debug("< " + line);
+ output.println(line);
+ output.flush();
+ } catch (Exception e) {
+ Os.debug("Client: error writing line", e);
+ }