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

java.lang.Object
org.apache.camel.support.service.BaseService
org.apache.camel.support.service.ServiceSupport
org.apache.camel.support.DefaultProducer
org.apache.camel.component.micrometer.AbstractMicrometerProducer<T>
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
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    protected
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected boolean
    clearMetricsHeaders(org.apache.camel.Message in)
     
    protected void
    doProcess(org.apache.camel.Exchange exchange, String name, String description, 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)
     
     
    protected T
    getOrRegisterMeter(String name, String description, 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, String description, 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 class java.lang.Object

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

    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

    • AbstractMicrometerProducer

      protected AbstractMicrometerProducer(MicrometerEndpoint endpoint)
  • Method Details

    • 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, String description, Iterable<io.micrometer.core.instrument.Tag> tags)
    • doProcess

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

      protected T getOrRegisterMeter(String name, String description, 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)