Class DefaultInstrumentationProcessor

java.lang.Object
org.apache.camel.support.service.BaseService
org.apache.camel.support.service.ServiceSupport
org.apache.camel.support.AsyncProcessorSupport
org.apache.camel.support.processor.DelegateAsyncProcessor
org.apache.camel.management.DefaultInstrumentationProcessor
All Implemented Interfaces:
AutoCloseable, org.apache.camel.AsyncProcessor, org.apache.camel.DelegateProcessor, org.apache.camel.Navigate<org.apache.camel.Processor>, org.apache.camel.Ordered, org.apache.camel.Processor, org.apache.camel.Service, org.apache.camel.ShutdownableService, org.apache.camel.spi.ManagementInterceptStrategy.InstrumentationProcessor<org.apache.camel.util.StopWatch>, org.apache.camel.StatefulService, org.apache.camel.SuspendableService

public class DefaultInstrumentationProcessor extends org.apache.camel.support.processor.DelegateAsyncProcessor implements org.apache.camel.spi.ManagementInterceptStrategy.InstrumentationProcessor<org.apache.camel.util.StopWatch>, org.apache.camel.Ordered
JMX enabled processor or advice that uses the ManagedCounter for instrumenting processing of exchanges.

This implementation has been optimised to work in dual mode, either as an advice or as a processor. The former is faster and the latter is required when the error handler has been configured with redelivery enabled.

  • Field Summary

    Fields inherited from class org.apache.camel.support.processor.DelegateAsyncProcessor

    processor

    Fields inherited from class org.apache.camel.support.service.BaseService

    BUILT, FAILED, INITIALIZED, INITIALIZING, lock, NEW, SHUTDOWN, SHUTTING_DOWN, STARTED, STARTING, status, STOPPED, STOPPING, SUSPENDED, SUSPENDING

    Fields inherited from interface org.apache.camel.Ordered

    HIGHEST, LOWEST
  • Constructor Summary

    Constructors
    Constructor
    Description
     
    DefaultInstrumentationProcessor(String type, org.apache.camel.Processor processor)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    after(org.apache.camel.Exchange exchange, org.apache.camel.util.StopWatch watch)
     
    org.apache.camel.util.StopWatch
    before(org.apache.camel.Exchange exchange)
     
    protected void
    beginTime(org.apache.camel.Exchange exchange)
     
    int
     
     
    boolean
    process(org.apache.camel.Exchange exchange, org.apache.camel.AsyncCallback callback)
     
    protected void
    recordTime(org.apache.camel.Exchange exchange, long duration)
     
    void
    setCounter(Object counter)
     
    void
     
     

    Methods inherited from class org.apache.camel.support.processor.DelegateAsyncProcessor

    doBuild, doInit, doShutdown, doStart, doStop, getProcessor, hasNext, next, setProcessor, setProcessor

    Methods inherited from class org.apache.camel.support.AsyncProcessorSupport

    process, processAsync

    Methods inherited from class org.apache.camel.support.service.BaseService

    build, doFail, doLifecycleChange, doResume, doSuspend, fail, getStatus, init, isBuild, isInit, isNew, isRunAllowed, isShutdown, isStarted, isStarting, isStartingOrStarted, isStopped, isStopping, isStoppingOrStopped, isSuspended, isSuspending, isSuspendingOrSuspended, resume, shutdown, start, stop, suspend

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

    Methods inherited from interface org.apache.camel.AsyncProcessor

    processAsync

    Methods inherited from interface org.apache.camel.spi.ManagementInterceptStrategy.InstrumentationProcessor

    setProcessor

    Methods inherited from interface org.apache.camel.Processor

    process

    Methods inherited from interface org.apache.camel.Service

    build, close, init, start, stop

    Methods inherited from interface org.apache.camel.ShutdownableService

    shutdown

    Methods inherited from interface org.apache.camel.StatefulService

    getStatus, isRunAllowed, isStarted, isStarting, isStopped, isStopping, isSuspending

    Methods inherited from interface org.apache.camel.SuspendableService

    isSuspended, resume, suspend
  • Constructor Details

  • Method Details

    • setCounter

      public void setCounter(Object counter)
      Specified by:
      setCounter in interface org.apache.camel.spi.ManagementInterceptStrategy.InstrumentationProcessor<org.apache.camel.util.StopWatch>
    • process

      public boolean process(org.apache.camel.Exchange exchange, org.apache.camel.AsyncCallback callback)
      Specified by:
      process in interface org.apache.camel.AsyncProcessor
      Overrides:
      process in class org.apache.camel.support.processor.DelegateAsyncProcessor
    • beginTime

      protected void beginTime(org.apache.camel.Exchange exchange)
    • recordTime

      protected void recordTime(org.apache.camel.Exchange exchange, long duration)
    • getType

      public String getType()
    • setType

      public void setType(String type)
    • before

      public org.apache.camel.util.StopWatch before(org.apache.camel.Exchange exchange)
      Specified by:
      before in interface org.apache.camel.spi.ManagementInterceptStrategy.InstrumentationProcessor<org.apache.camel.util.StopWatch>
    • after

      public void after(org.apache.camel.Exchange exchange, org.apache.camel.util.StopWatch watch)
      Specified by:
      after in interface org.apache.camel.spi.ManagementInterceptStrategy.InstrumentationProcessor<org.apache.camel.util.StopWatch>
    • toString

      public String toString()
      Overrides:
      toString in class org.apache.camel.support.processor.DelegateAsyncProcessor
    • getOrder

      public int getOrder()
      Specified by:
      getOrder in interface org.apache.camel.Ordered