atg.servlet.pipeline
Class ServletPathDispatcherPipelineServlet

java.lang.Object
  extended by atg.nucleus.logging.VariableArgumentApplicationLoggingImpl
      extended by atg.nucleus.GenericService
          extended by atg.nucleus.TimedOperationService
              extended by atg.servlet.pipeline.PipelineableServletImpl
                  extended by atg.servlet.pipeline.DispatcherPipelineServletImpl
                      extended by atg.servlet.pipeline.ServletPathDispatcherPipelineServlet
All Implemented Interfaces:
NameContextBindingListener, NameContextElement, NameResolver, AdminableService, ApplicationLogging, atg.nucleus.logging.ApplicationLoggingSender, atg.nucleus.logging.TraceApplicationLogging, atg.nucleus.logging.VariableArgumentApplicationLogging, ComponentNameResolver, Service, ServiceListener, DispatcherPipelineableServlet, PipelineableServlet, java.util.EventListener, javax.servlet.Servlet

public class ServletPathDispatcherPipelineServlet
extends DispatcherPipelineServletImpl

This will redirect a request to one of several servlets based on the servlet path of the request. The servlet path must have been determined, meaning that the ServletPathPipelineServlet should appear in the pipeline before this servlet.

The servletPathMap property determines the mapping from servlet path to servlet. If the servlet path does not match any of the serlvetPaths, then the request is passed on to the next servlet in the pipeline.


Field Summary
static java.lang.String CLASS_VERSION
          Class version string
 
Fields inherited from class atg.nucleus.GenericService
SERVICE_INFO_KEY
 
Fields inherited from interface atg.nucleus.logging.TraceApplicationLogging
DEFAULT_LOG_TRACE_STATUS
 
Fields inherited from interface atg.nucleus.logging.ApplicationLogging
DEFAULT_LOG_DEBUG_STATUS, DEFAULT_LOG_ERROR_STATUS, DEFAULT_LOG_INFO_STATUS, DEFAULT_LOG_WARNING_STATUS
 
Constructor Summary
ServletPathDispatcherPipelineServlet()
          Constructs a new ServletPathDispatcherPipelineServlet
 
Method Summary
 void doStartService()
          This is called after a Service has been created, placed into the naming hierarchy, and initialized with its configured property values.
 java.util.Properties getDispatcherServiceMapNames()
           
 java.lang.Object getDispatchingAttribute(DynamoHttpServletRequest pRequest)
          Returns the dispatching attribute of the request, this is the String attribute that is used to determine if the request should be dispatched to another servlet.
 java.lang.String getServletPathPrefix()
           
 void setDispatcherServiceMapNames(java.util.Properties pDispatcherServiceMapNames)
          Sets the property DispatcherServiceMapNames.
 void setServletPathPrefix(java.lang.String pServletPathPrefix)
          Sets the property ServletPathPrefix.
 
Methods inherited from class atg.servlet.pipeline.DispatcherPipelineServletImpl
getDispatcherServiceMap, getExtraDispatcherServiceMap, service, setDispatcherServiceMap, setExtraDispatcherServiceMap
 
Methods inherited from class atg.servlet.pipeline.PipelineableServletImpl
createAdminServlet, destroy, getAdminServlet, getNextServlet, getServletConfig, getServletInfo, init, isUsePathInfo, passRequest, passRequest, service, service, setNextServlet, setServletInfo, setUsePathInfo
 
Methods inherited from class atg.nucleus.TimedOperationService
getAverageRequestHandlingTime, getHandledRequestCount, getRequestStartTime, getTotalRequestHandlingTime, isKeepingStatistics, notifyHandledRequest, resetStatistics, setKeepingStatistics
 
Methods inherited from class atg.nucleus.GenericService
addLogListener, doStopService, getAbsoluteName, getLoggingForVlogging, getLogListenerCount, getLogListeners, getName, getNameContext, getNucleus, getRoot, getServiceConfiguration, getServiceInfo, isLoggingDebug, isLoggingError, isLoggingInfo, isLoggingTrace, isLoggingWarning, isRunning, logDebug, logDebug, logDebug, logError, logError, logError, logInfo, logInfo, logInfo, logTrace, logTrace, logTrace, logWarning, logWarning, logWarning, nameContextElementBound, nameContextElementUnbound, removeLogListener, resolveName, resolveName, resolveName, resolveName, sendLogEvent, setLoggingDebug, setLoggingError, setLoggingInfo, setLoggingTrace, setLoggingWarning, setNucleus, setServiceInfo, startService, stopService
 
Methods inherited from class atg.nucleus.logging.VariableArgumentApplicationLoggingImpl
vlogDebug, vlogDebug, vlogDebug, vlogDebug, vlogError, vlogError, vlogError, vlogError, vlogInfo, vlogInfo, vlogInfo, vlogInfo, vlogTrace, vlogTrace, vlogTrace, vlogTrace, vlogWarning, vlogWarning, vlogWarning, vlogWarning
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface atg.servlet.pipeline.PipelineableServlet
getNextServlet, passRequest, setNextServlet
 
Methods inherited from interface javax.servlet.Servlet
destroy, getServletConfig, getServletInfo, init, service
 

Field Detail

CLASS_VERSION

public static java.lang.String CLASS_VERSION
Class version string

Constructor Detail

ServletPathDispatcherPipelineServlet

public ServletPathDispatcherPipelineServlet()
Constructs a new ServletPathDispatcherPipelineServlet

Method Detail

getDispatchingAttribute

public java.lang.Object getDispatchingAttribute(DynamoHttpServletRequest pRequest)
Returns the dispatching attribute of the request, this is the String attribute that is used to determine if the request should be dispatched to another servlet.

Specified by:
getDispatchingAttribute in interface DispatcherPipelineableServlet
Specified by:
getDispatchingAttribute in class DispatcherPipelineServletImpl

setServletPathPrefix

public void setServletPathPrefix(java.lang.String pServletPathPrefix)
Sets the property ServletPathPrefix. If this is set to a non-null value, it is prepended onto the paths registered in the dispatchServiceMap. If you are configuring the entire servlet pipeline as a servlet in some other container, you can set this to be the servletpath of the pipeline servlet rather than having to configure a new prefix for each entry in this table.

Parameters:
pServletPathPrefix - new value to set

getServletPathPrefix

public java.lang.String getServletPathPrefix()
Returns:
The value of the property ServletPathPrefix.

setDispatcherServiceMapNames

public void setDispatcherServiceMapNames(java.util.Properties pDispatcherServiceMapNames)
Sets the property DispatcherServiceMapNames.


getDispatcherServiceMapNames

public java.util.Properties getDispatcherServiceMapNames()
Returns:
The value of the property DispatcherServiceMapNames.

doStartService

public void doStartService()
                    throws ServiceException
Description copied from class: GenericService
This is called after a Service has been created, placed into the naming hierarchy, and initialized with its configured property values. The Service should override this method to start any processes it requires.

Overrides:
doStartService in class GenericService
Throws:
ServiceException - if the Service had a problem starting up