| Inter-process communication.
The edit server protocol is very simple. $HOME/.jedit/server
is an ASCII file containing two lines, the first being the port number,
the second being the authorization key.
You connect to that port on the local machine, sending the authorization
key as four bytes in network byte order, followed by the length of the
BeanShell script as two bytes in network byte order, followed by the
script in UTF8 encoding. After the socked is closed, the BeanShell script
will be executed by jEdit.
The snippet is executed in the AWT thread. None of the usual BeanShell
variables (view, buffer, textArea, editPane) are set so the script has to
figure things out by itself.
In most cases, the script will call the static
EditServer.handleClient(boolean,String,String[]) method, but of course more
complicated stuff can be done too.
author: Slava Pestov version: $Id: EditServer.java 10827 2007-10-06 22:03:50Z ezust $ |