Class AbstractMicrometerProducer<T extends io.micrometer.core.instrument.Meter>

  • All Implemented Interfaces:
    AutoCloseable, org.apache.camel.EndpointAware, org.apache.camel.IsSingleton, org.apache.camel.Processor, org.apache.camel.Producer, org.apache.camel.Service, org.apache.camel.ShutdownableService, org.apache.camel.StatefulService, org.apache.camel.SuspendableService
    Direct Known Subclasses:
    CounterProducer, DistributionSummaryProducer, TimerProducer

    public abstract class AbstractMicrometerProducer<T extends io.micrometer.core.instrument.Meter>
    extends org.apache.camel.support.DefaultProducer
    • Field Summary

      • 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
    • Method Summary

      All Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      protected boolean clearMetricsHeaders​(org.apache.camel.Message in)  
      protected void doProcess​(org.apache.camel.Exchange exchange, String name, Iterable<io.micrometer.core.instrument.Tag> tags)  
      protected abstract void doProcess​(org.apache.camel.Exchange exchange, MicrometerEndpoint endpoint, T meter)  
      protected Double getDoubleHeader​(org.apache.camel.Message in, String header, Double defaultValue)  
      MicrometerEndpoint getEndpoint()  
      protected T getOrRegisterMeter​(String name, Iterable<io.micrometer.core.instrument.Tag> tags)  
      protected String getStringHeader​(org.apache.camel.Message in, String header, String defaultValue)  
      protected Iterable<io.micrometer.core.instrument.Tag> getTagHeader​(org.apache.camel.Message in, String header, Iterable<io.micrometer.core.instrument.Tag> defaultTags)  
      void process​(org.apache.camel.Exchange exchange)  
      protected abstract Function<io.micrometer.core.instrument.MeterRegistry,​T> registrar​(String name, Iterable<io.micrometer.core.instrument.Tag> tags)  
      protected <C> C simple​(org.apache.camel.Exchange exchange, String expression, Class<C> clazz)  
      • Methods inherited from class org.apache.camel.support.DefaultProducer

        createExchange, doStart, doStop, isSingleton, toString
      • Methods inherited from class org.apache.camel.support.service.BaseService

        build, doBuild, doFail, doInit, doLifecycleChange, doResume, doShutdown, 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 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 Detail

      • AbstractMicrometerProducer

        public AbstractMicrometerProducer​(MicrometerEndpoint endpoint)
    • Method Detail

      • getEndpoint

        public MicrometerEndpoint getEndpoint()
        Specified by:
        getEndpoint in interface org.apache.camel.EndpointAware
        Overrides:
        getEndpoint in class org.apache.camel.support.DefaultProducer
      • process

        public void process​(org.apache.camel.Exchange exchange)
      • registrar

        protected abstract Function<io.micrometer.core.instrument.MeterRegistry,​T> registrar​(String name,
                                                                                                   Iterable<io.micrometer.core.instrument.Tag> tags)
      • doProcess

        protected void doProcess​(org.apache.camel.Exchange exchange,
                                 String name,
                                 Iterable<io.micrometer.core.instrument.Tag> tags)
      • getOrRegisterMeter

        protected T getOrRegisterMeter​(String name,
                                       Iterable<io.micrometer.core.instrument.Tag> tags)
      • doProcess

        protected abstract void doProcess​(org.apache.camel.Exchange exchange,
                                          MicrometerEndpoint endpoint,
                                          T meter)
      • simple

        protected <C> C simple​(org.apache.camel.Exchange exchange,
                               String expression,
                               Class<C> clazz)
      • getStringHeader

        protected String getStringHeader​(org.apache.camel.Message in,
                                         String header,
                                         String defaultValue)
      • getDoubleHeader

        protected Double getDoubleHeader​(org.apache.camel.Message in,
                                         String header,
                                         Double defaultValue)
      • getTagHeader

        protected Iterable<io.micrometer.core.instrument.Tag> getTagHeader​(org.apache.camel.Message in,
                                                                           String header,
                                                                           Iterable<io.micrometer.core.instrument.Tag> defaultTags)
      • clearMetricsHeaders

        protected boolean clearMetricsHeaders​(org.apache.camel.Message in)