ix.iserve.ipc.sl
Class IServeSLCommServer

java.lang.Object
  extended by ix.iserve.ipc.IServeCommServer
      extended by ix.iserve.ipc.sl.IServeSLCommServer
All Implemented Interfaces:
IXAgentExtension

public class IServeSLCommServer
extends IServeCommServer

Handles messages for a IServeCommStrategy.


Nested Class Summary
(package private)  class IServeSLCommServer.Awakener
           
(package private)  class IServeSLCommServer.SLChatbotTestServlet
          Sends a ChatMessage to whatever agent has registered as "chat-service".
protected  class IServeSLCommServer.SLIdentityChecker
           
protected  class IServeSLCommServer.SLIdentityCheckerFactory
           
(package private)  class IServeSLCommServer.SLNextMessageServlet
           
(package private)  class IServeSLCommServer.SLRegistrationServelt
           
(package private)  class IServeSLCommServer.SLReplyServlet
          Sends a reply to whoever sent the last message the replying agent has received.
(package private)  class IServeSLCommServer.SLSendServlet
           
 
Nested classes/interfaces inherited from class ix.iserve.ipc.IServeCommServer
IServeCommServer.AbandonRequest, IServeCommServer.Command, IServeCommServer.DefaultIdentityChecker, IServeCommServer.DefaultIdentityCheckerFactory, IServeCommServer.IdentityChecker, IServeCommServer.IdentityCheckerFactory, IServeCommServer.IllegalIdentityCheckerChange, IServeCommServer.IXIdentityChecker, IServeCommServer.IXIdentityCheckerFactory, IServeCommServer.User
 
Field Summary
(package private)  java.util.List<SLHttpHeader> headerProperties
           
(package private)  SLRpc rpcClient
           
(package private)  java.util.concurrent.ExecutorService wakeupPool
           
 
Fields inherited from class ix.iserve.ipc.IServeCommServer
userNameToUserMap
 
Constructor Summary
IServeSLCommServer()
           
IServeSLCommServer(IServe containingAgent)
          Constructor used when making an IXAgentExtension.
 
Method Summary
protected  void addServlets()
           
protected  IServeCommServer.User ensureSLUser(java.lang.String name)
           
protected  java.lang.String getHeaderAnnotation(MessageWrapper w, SLHttpHeader h)
           
static void main(java.lang.String[] argv)
           
protected  MessageWrapper makeMessageWrapper(IServeCommServer.Command command, javax.servlet.http.HttpServletRequest req)
           
(package private)  void maybeSendWakeup(IServeCommServer.User user)
           
protected  void processCommandLineArguments()
           
protected  void setHeaderAnnotation(MessageWrapper w, SLHttpHeader h, java.lang.String value)
           
(package private)  void tryToWakeup(IServeCommServer.User user, java.util.Date now)
           
 
Methods inherited from class ix.iserve.ipc.IServeCommServer
addServlet, agoTime, do_main, ensureIXUser, ensureUser, fillInRequestInfo, getListenPort, getName, getUser, getUsers, installExtension, makeServerStatus, recordUser, removeUser, removeUser, requireCommand, requireUser, start
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

headerProperties

final java.util.List<SLHttpHeader> headerProperties

wakeupPool

java.util.concurrent.ExecutorService wakeupPool

rpcClient

SLRpc rpcClient
Constructor Detail

IServeSLCommServer

public IServeSLCommServer()

IServeSLCommServer

public IServeSLCommServer(IServe containingAgent)
Constructor used when making an IXAgentExtension.

Method Detail

main

public static void main(java.lang.String[] argv)

processCommandLineArguments

protected void processCommandLineArguments()
Overrides:
processCommandLineArguments in class IServeCommServer

addServlets

protected void addServlets()
Overrides:
addServlets in class IServeCommServer

makeMessageWrapper

protected MessageWrapper makeMessageWrapper(IServeCommServer.Command command,
                                            javax.servlet.http.HttpServletRequest req)
                                     throws HttpRequestException
Throws:
HttpRequestException

setHeaderAnnotation

protected void setHeaderAnnotation(MessageWrapper w,
                                   SLHttpHeader h,
                                   java.lang.String value)

getHeaderAnnotation

protected java.lang.String getHeaderAnnotation(MessageWrapper w,
                                               SLHttpHeader h)

ensureSLUser

protected IServeCommServer.User ensureSLUser(java.lang.String name)

maybeSendWakeup

void maybeSendWakeup(IServeCommServer.User user)

tryToWakeup

void tryToWakeup(IServeCommServer.User user,
                 java.util.Date now)