Class AbstractTransportListener

java.lang.Object
org.apache.axis2.transport.base.AbstractTransportListener
All Implemented Interfaces:
org.apache.axis2.kernel.TransportListener
Direct Known Subclasses:
AbstractTransportListenerEx

public abstract class AbstractTransportListener extends Object implements org.apache.axis2.kernel.TransportListener
  • Field Details

    • log

      protected org.apache.commons.logging.Log log
      the reference to the actual commons logger to be used for log messages
    • cfgCtx

      protected org.apache.axis2.context.ConfigurationContext cfgCtx
      the axis2 configuration context
    • state

      protected int state
      state of the listener
    • isNonBlocking

      protected boolean isNonBlocking
      is this transport non-blocking?
    • workerPool

      protected WorkerPool workerPool
      the thread pool to execute actual poll invocations
    • useAxis2ThreadPool

      protected boolean useAxis2ThreadPool
      use the thread pool available in the axis2 configuration context
    • metrics

      protected MetricsCollector metrics
      Metrics collector for this transport
    • config

      protected TransportConfiguration config
      Transport Configuration for the respective transports
  • Constructor Details

    • AbstractTransportListener

      protected AbstractTransportListener()
      A constructor that makes subclasses pick up the correct logger
  • Method Details

    • init

      public void init(org.apache.axis2.context.ConfigurationContext cfgCtx, org.apache.axis2.description.TransportInDescription transportIn) throws org.apache.axis2.AxisFault
      Initialize the generic transport. Sets up the transport and the thread pool to be used for message processing. Also creates an AxisObserver that gets notified of service life cycle events for the transport to act on
      Specified by:
      init in interface org.apache.axis2.kernel.TransportListener
      Parameters:
      cfgCtx - the axis configuration context
      transportIn - the transport-in description
      Throws:
      org.apache.axis2.AxisFault - on error
    • destroy

      public void destroy()
      Specified by:
      destroy in interface org.apache.axis2.kernel.TransportListener
    • stop

      public void stop() throws org.apache.axis2.AxisFault
      Specified by:
      stop in interface org.apache.axis2.kernel.TransportListener
      Throws:
      org.apache.axis2.AxisFault
    • start

      public void start() throws org.apache.axis2.AxisFault
      Specified by:
      start in interface org.apache.axis2.kernel.TransportListener
      Throws:
      org.apache.axis2.AxisFault
    • getEPRsForService

      public org.apache.axis2.addressing.EndpointReference[] getEPRsForService(String serviceName, String ip) throws org.apache.axis2.AxisFault
      Specified by:
      getEPRsForService in interface org.apache.axis2.kernel.TransportListener
      Throws:
      org.apache.axis2.AxisFault
    • getEPRsForService

      protected org.apache.axis2.addressing.EndpointReference[] getEPRsForService(String serviceName)
    • disableTransportForService

      public void disableTransportForService(org.apache.axis2.description.AxisService service)
    • startListeningForService

      protected abstract void startListeningForService(org.apache.axis2.description.AxisService service) throws org.apache.axis2.AxisFault
      Throws:
      org.apache.axis2.AxisFault
    • stopListeningForService

      protected abstract void stopListeningForService(org.apache.axis2.description.AxisService service)
    • getEPRForService

      public org.apache.axis2.addressing.EndpointReference getEPRForService(String serviceName, String ip) throws org.apache.axis2.AxisFault
      This is a deprecated method in Axis2 and this default implementation returns the first result from the getEPRsForService() method
      Throws:
      org.apache.axis2.AxisFault
    • getSessionContext

      public org.apache.axis2.context.SessionContext getSessionContext(org.apache.axis2.context.MessageContext messageContext)
      Specified by:
      getSessionContext in interface org.apache.axis2.kernel.TransportListener
    • createMessageContext

      public org.apache.axis2.context.MessageContext createMessageContext()
      Create a new axis MessageContext for an incoming message through this transport
      Returns:
      the newly created message context
    • handleIncomingMessage

      public void handleIncomingMessage(org.apache.axis2.context.MessageContext msgCtx, Map trpHeaders, String soapAction, String contentType) throws org.apache.axis2.AxisFault
      Process a new incoming message through the axis engine
      Parameters:
      msgCtx - the axis MessageContext
      trpHeaders - the map containing transport level message headers
      soapAction - the optional soap action or null
      contentType - the optional content-type for the message
      Throws:
      org.apache.axis2.AxisFault
    • handleException

      protected void handleException(String msg, Exception e) throws org.apache.axis2.AxisFault
      Throws:
      org.apache.axis2.AxisFault
    • logException

      protected void logException(String msg, Exception e)
    • getTransportInDescription

      public org.apache.axis2.description.TransportInDescription getTransportInDescription()
    • getTransportName

      public String getTransportName()
    • getConfigurationContext

      public org.apache.axis2.context.ConfigurationContext getConfigurationContext()
    • getMetricsCollector

      public MetricsCollector getMetricsCollector()
    • pause

      public void pause() throws org.apache.axis2.AxisFault
      Pause the listener - Stop accepting/processing new messages, but continues processing existing messages until they complete. This helps bring an instance into a maintenence mode
      Throws:
      org.apache.axis2.AxisFault - on error
    • resume

      public void resume() throws org.apache.axis2.AxisFault
      Resume the lister - Brings the lister into active mode back from a paused state
      Throws:
      org.apache.axis2.AxisFault - on error
    • maintenenceShutdown

      public void maintenenceShutdown(long millis) throws org.apache.axis2.AxisFault
      Stop processing new messages, and wait the specified maximum time for in-flight requests to complete before a controlled shutdown for maintenence
      Parameters:
      millis - a number of milliseconds to wait until pending requests are allowed to complete
      Throws:
      org.apache.axis2.AxisFault - on error
    • getActiveThreadCount

      public int getActiveThreadCount()
      Returns the number of active threads processing messages
      Returns:
      number of active threads processing messages
    • getQueueSize

      public int getQueueSize()
      Return the number of requests queued in the thread pool
      Returns:
      queue size
    • getMessagesReceived

      public long getMessagesReceived()
    • getFaultsReceiving

      public long getFaultsReceiving()
    • getBytesReceived

      public long getBytesReceived()
    • getMessagesSent

      public long getMessagesSent()
    • getFaultsSending

      public long getFaultsSending()
    • getBytesSent

      public long getBytesSent()
    • getTimeoutsReceiving

      public long getTimeoutsReceiving()
    • getTimeoutsSending

      public long getTimeoutsSending()
    • getMinSizeReceived

      public long getMinSizeReceived()
    • getMaxSizeReceived

      public long getMaxSizeReceived()
    • getAvgSizeReceived

      public double getAvgSizeReceived()
    • getMinSizeSent

      public long getMinSizeSent()
    • getMaxSizeSent

      public long getMaxSizeSent()
    • getAvgSizeSent

      public double getAvgSizeSent()
    • getResponseCodeTable

      public Map getResponseCodeTable()
    • resetStatistics

      public void resetStatistics()
    • getLastResetTime

      public long getLastResetTime()
    • getMetricsWindow

      public long getMetricsWindow()