edu.isi.powerloom.logic
Class PowerLoomServer
java.lang.Object
  
edu.isi.powerloom.logic.PowerLoomServer
public class PowerLoomServer
- extends java.lang.Object
 
PowerLoomServer class.  Runs a socket listener and spawns threads of
  PowerLoom  read-eval-print loops to handle each connection.
  The server will listen at a port given on the command line at startup.
  Commands are then sent on the socket connection.  The syntax of
  commands is as follows:
  
  COMMAND ENCODING LANGUAGE VERSION [PASSWORD]
 
  
  Where COMMAND is one of
  
  - CLOSE -- close the socket connection.
 
  - HALT  -- stops the server.  Don't do this lightly!
 
  - EVALUATE -- read an expression starting on the following line,
   evaluate it, and return the result.
 
  
  and ENCODING is one of
  
  and LANGUAGE is one of
  
  - CONTROL -- for the CLOSE and HALT commands.
 
  - POWERLOOM -- for the EVALUATE command.
 - 
  
 
  VERSION is currently not checked.
  PASSWORD, if required, must match the server password established at startup.
  Replies will be in the following form:
  
  CODE ENCODING LANGUAGE VERSION CHARACTERS=n LINES=m
 
  
  Where CODE is one of
  
  - 200 -- successful response.
 
  - 500 -- error response.
 
  
  and ENCODING is one of
  
  and LANGUAGE is one of
  
  - ENGLISH -- for error messages.
 
  - POWERLOOM -- for evaluation results.
 - 
  
 
  The CHARACTERS=n and LINES=m indicate how many characters and lines the
  response uses.  Line terminators may be any combinbation of CR, LF or CR/LF.
 
| 
Method Summary | 
static void | 
main(java.lang.String[] args)
 
          Starts socket server, taking optional port argument. | 
 
| Methods inherited from class java.lang.Object | 
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
 
PowerLoomServer
public PowerLoomServer()
main
public static void main(java.lang.String[] args)
                 throws java.io.IOException
- Starts socket server, taking optional port argument.
  The arguments that may be given at the command line are the following:
  -port N         N is the port number for socket connections.  If it is
                  not specified, then 4444 is used.
  -kb FILENAME    A kb from FILENAME is loaded.  This option may be repeated
                  multiple times.
  -ontology NAME  If given, then the default ontology for new threads is
                  set to NAME.  If not specified, PL-USER is used.
  -password S     S is a string which is the password for connections.  If
                  not specified, then no password is required.  If specified,
                  then commands must include the correct password.
  -admin S        S is a string which is the password for administration.  If
                  not specified, then it defaults to the value of the -password
                  field.  This allows a separate password to be used for
                  administrative functions like shutting down the server.
  -startup NAME   NAME is a fully qualified method name which must take no
                  arguments.  It is invoked in the order encountered on the
                  command line.  An example would be
       "edu.isi.stella.utilities.StartupUtilitiesSystem.startupUtilitiesSystem"
- Throws:
 java.io.IOException