I need to write a program similar to a telnet server. A telnet server asynchronously reads data from a socket and writes it to a sub-process, and asynchronously reads data from the subprocess and writes to a socket. My program needs to replace the subprocess with a serial port.
The telnet server cannot anticipate when data will arrive from the socket. Neither can it anticipate when data will arrive from the subprocess.
How can I write a similar OS vendor neutral program using Java or Groovy or Jython, except, instead reading and writing to a process, I read and write to serial port? Can I do this with a single thread? How do I read and write to a serial port? Can anyone point me to some sample code for serial port I/O?