KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > gnu > jemacs > buffer > TelnetMode


1 package gnu.jemacs.buffer;
2 import kawa.*;
3 import gnu.mapping.*;
4 import java.io.*;
5
6 public class TelnetMode extends ProcessMode
7 {
8   public TelnetMode(Buffer buffer, String JavaDoc host)
9   {
10     this(buffer, host, 23);
11   }
12
13   public TelnetMode(Buffer buffer, String JavaDoc host, int port)
14   {
15     this.buffer = buffer;
16     processMark = new Marker(buffer.pointMarker);
17
18     Telnet telnet;
19     try
20       {
21     java.net.Socket JavaDoc socket = new java.net.Socket JavaDoc(host, port);
22     telnet = new Telnet(socket, false);
23     telnet.request(Telnet.DO, Telnet.SUPPRESS_GO_AHEAD);
24     telnet.request(Telnet.WILL, Telnet.SUPPRESS_GO_AHEAD);
25     telnet.request(Telnet.DO, Telnet.ECHO);
26       }
27     catch (Exception JavaDoc ex)
28       {
29     throw new WrappedException("telnet - creating socket failed", ex);
30       }
31     toInferior = new OutputStreamWriter(telnet.getOutputStream());
32     Thread JavaDoc t = new InputStreamHandler(telnet.getInputStream(), this);
33     t.setPriority(Thread.currentThread().getPriority() + 1);
34     t.start();
35   }
36
37   //protected static final int ENTER_CODE = 1;
38
//static Procedure enter = new ModuleMethod(this, ENTER_CODE, "enter", 0);
39

40   public static void telnetMode (Buffer buffer, String JavaDoc host, int port)
41   {
42     buffer.modes = new TelnetMode(buffer, host, port);
43   }
44
45   /*
46   public Object apply0(ModuleMethod proc)
47   {
48     switch (proc.selector)
49       {
50       case ENTER_CODE:
51     enter();
52     return Values.empty;
53       }
54     return super.apply0(proc);
55   }
56   */

57
58 }
59
Popular Tags