Class JsltEndpoint

  • All Implemented Interfaces:
    AutoCloseable, org.apache.camel.api.management.mbean.ManagedResourceEndpointMBean, org.apache.camel.CamelContextAware, org.apache.camel.Endpoint, org.apache.camel.IsSingleton, org.apache.camel.Service, org.apache.camel.ShutdownableService, org.apache.camel.spi.HasId, org.apache.camel.StatefulService, org.apache.camel.SuspendableService

    @UriEndpoint(firstVersion="3.1.0",
                 scheme="jslt",
                 title="JSLT",
                 syntax="jslt:resourceUri",
                 producerOnly=true,
                 category=TRANSFORMATION,
                 headersClass=JsltConstants.class)
    public class JsltEndpoint
    extends org.apache.camel.component.ResourceEndpoint
    Query or transform JSON payloads using an JSLT.
    • Field Summary

      • Fields inherited from class org.apache.camel.component.ResourceEndpoint

        log
      • 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 Concrete Methods 
      Modifier and Type Method Description
      protected String createEndpointUri()  
      JsltEndpoint findOrCreateEndpoint​(String uri, String newResourceUri)  
      org.apache.camel.ExchangePattern getExchangePattern()  
      com.fasterxml.jackson.databind.ObjectMapper getObjectMapper()  
      boolean isAllowTemplateFromHeader()  
      boolean isMapBigDecimalAsFloats()  
      boolean isPrettyPrint()
      If true, JSON in output message is pretty printed.
      protected void onExchange​(org.apache.camel.Exchange exchange)  
      void setAllowTemplateFromHeader​(boolean allowTemplateFromHeader)
      Whether to allow to use resource template from header or not (default false).
      void setMapBigDecimalAsFloats​(boolean mapBigDecimalAsFloats)
      If true, the mapper will use the USE_BIG_DECIMAL_FOR_FLOATS in serialization features
      void setObjectMapper​(com.fasterxml.jackson.databind.ObjectMapper objectMapper)
      Setting a custom JSON Object Mapper to be used
      void setPrettyPrint​(boolean prettyPrint)  
      • Methods inherited from class org.apache.camel.component.ResourceEndpoint

        clearContentCache, getCamelId, getCamelManagementName, getResourceAsInputStream, getResourceAsInputStreamWithoutCache, getResourceUri, getState, isAllowContextMapAll, isContentCache, isContentCacheCleared, loadResource, setAllowContextMapAll, setContentCache, setResourceUri
      • Methods inherited from class org.apache.camel.support.ProcessorEndpoint

        createPollingConsumer, createProcessor, createProducer, getProcessor, setProcessor
      • Methods inherited from class org.apache.camel.support.DefaultPollingEndpoint

        createConsumer
      • Methods inherited from class org.apache.camel.support.ScheduledPollEndpoint

        configureConsumer, configureProperties, configureScheduledPollConsumerProperties, doConfigureConsumer, doStart, doStop, getBackoffErrorThreshold, getBackoffIdleThreshold, getBackoffMultiplier, getDefaultDelay, getDelay, getInitialDelay, getPollStrategy, getRepeatCount, getRunLoggingLevel, getScheduledExecutorService, getScheduler, getSchedulerProperties, getTimeUnit, isGreedy, isSendEmptyMessageWhenIdle, isStartScheduler, isUseFixedDelay, setBackoffErrorThreshold, setBackoffIdleThreshold, setBackoffMultiplier, setDelay, setGreedy, setInitialDelay, setPollStrategy, setRepeatCount, setRunLoggingLevel, setScheduledExecutorService, setScheduler, setSchedulerProperties, setSendEmptyMessageWhenIdle, setStartScheduler, setTimeUnit, setUseFixedDelay
      • Methods inherited from class org.apache.camel.support.DefaultEndpoint

        configureExchange, configurePollingConsumer, createAsyncProducer, createExchange, createExchange, doInit, equals, getCamelContext, getComponent, getEndpointKey, getEndpointUri, getExceptionHandler, getId, getPollingConsumerBlockTimeout, getPollingConsumerQueueSize, hashCode, isAutowiredEnabled, isBridgeErrorHandler, isLazyStartProducer, isLenientProperties, isPollingConsumerBlockWhenFull, isPollingConsumerCopy, isSingleton, setAutowiredEnabled, setBridgeErrorHandler, setCamelContext, setComponent, setEndpointUri, setEndpointUriIfNotSpecified, setExceptionHandler, setExchangePattern, setLazyStartProducer, setPollingConsumerBlockTimeout, setPollingConsumerBlockWhenFull, setPollingConsumerCopy, setPollingConsumerQueueSize, setProperties, toString
      • Methods inherited from class org.apache.camel.support.service.BaseService

        build, doBuild, doFail, 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.Endpoint

        getEndpointBaseUri, isSingletonProducer
      • 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

      • JsltEndpoint

        public JsltEndpoint()
    • Method Detail

      • getExchangePattern

        public org.apache.camel.ExchangePattern getExchangePattern()
        Specified by:
        getExchangePattern in interface org.apache.camel.Endpoint
        Overrides:
        getExchangePattern in class org.apache.camel.support.DefaultEndpoint
      • createEndpointUri

        protected String createEndpointUri()
        Overrides:
        createEndpointUri in class org.apache.camel.support.DefaultEndpoint
      • onExchange

        protected void onExchange​(org.apache.camel.Exchange exchange)
                           throws Exception
        Overrides:
        onExchange in class org.apache.camel.support.ProcessorEndpoint
        Throws:
        Exception
      • isPrettyPrint

        public boolean isPrettyPrint()
        If true, JSON in output message is pretty printed.
      • setPrettyPrint

        public void setPrettyPrint​(boolean prettyPrint)
      • isAllowTemplateFromHeader

        public boolean isAllowTemplateFromHeader()
      • setAllowTemplateFromHeader

        public void setAllowTemplateFromHeader​(boolean allowTemplateFromHeader)
        Whether to allow to use resource template from header or not (default false). Enabling this allows to specify dynamic templates via message header. However this can be seen as a potential security vulnerability if the header is coming from a malicious user, so use this with care.
      • isMapBigDecimalAsFloats

        public boolean isMapBigDecimalAsFloats()
      • setMapBigDecimalAsFloats

        public void setMapBigDecimalAsFloats​(boolean mapBigDecimalAsFloats)
        If true, the mapper will use the USE_BIG_DECIMAL_FOR_FLOATS in serialization features
      • getObjectMapper

        public com.fasterxml.jackson.databind.ObjectMapper getObjectMapper()
      • setObjectMapper

        public void setObjectMapper​(com.fasterxml.jackson.databind.ObjectMapper objectMapper)
        Setting a custom JSON Object Mapper to be used