Class JsonPojoDataTypeTransformer

java.lang.Object
org.apache.camel.support.service.BaseService
org.apache.camel.support.service.ServiceSupport
org.apache.camel.spi.Transformer
org.apache.camel.component.jackson.transform.JsonPojoDataTypeTransformer
All Implemented Interfaces:
AutoCloseable, org.apache.camel.CamelContextAware, org.apache.camel.Service, org.apache.camel.ShutdownableService, org.apache.camel.spi.HasCamelContext, org.apache.camel.StatefulService, org.apache.camel.SuspendableService

@DataTypeTransformer(name="application-x-java-object") public class JsonPojoDataTypeTransformer extends org.apache.camel.spi.Transformer implements org.apache.camel.CamelContextAware
Data type able to unmarshal Exchange body to Java object. Supports both Json schema types and uses Jackson object mapper implementation for the unmarshal operation. Requires proper setting of content schema, class and schema type in Exchange properties (usually resolved via Json schema resolver).
  • 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
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected InputStream
    getBodyAsStream(org.apache.camel.Message message)
     
    org.apache.camel.CamelContext
     
    protected Object
    getJavaObject(org.apache.camel.Message message, SchemaType schemaType, com.fasterxml.jackson.core.FormatSchema schema, Class<?> contentType)
     
    void
    setCamelContext(org.apache.camel.CamelContext camelContext)
     
    void
    transform(org.apache.camel.Message message, org.apache.camel.spi.DataType fromType, org.apache.camel.spi.DataType toType)
     

    Methods inherited from class org.apache.camel.spi.Transformer

    doStop, getFrom, getName, getTo, setFrom, setName, setName, setTo, toString

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

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

    • JsonPojoDataTypeTransformer

      public JsonPojoDataTypeTransformer()
  • Method Details

    • transform

      public void transform(org.apache.camel.Message message, org.apache.camel.spi.DataType fromType, org.apache.camel.spi.DataType toType)
      Specified by:
      transform in class org.apache.camel.spi.Transformer
    • getJavaObject

      protected Object getJavaObject(org.apache.camel.Message message, SchemaType schemaType, com.fasterxml.jackson.core.FormatSchema schema, Class<?> contentType) throws org.apache.camel.InvalidPayloadException, IOException
      Throws:
      org.apache.camel.InvalidPayloadException
      IOException
    • getBodyAsStream

      protected InputStream getBodyAsStream(org.apache.camel.Message message) throws org.apache.camel.InvalidPayloadException
      Throws:
      org.apache.camel.InvalidPayloadException
    • getCamelContext

      public org.apache.camel.CamelContext getCamelContext()
      Specified by:
      getCamelContext in interface org.apache.camel.spi.HasCamelContext
      Overrides:
      getCamelContext in class org.apache.camel.spi.Transformer
    • setCamelContext

      public void setCamelContext(org.apache.camel.CamelContext camelContext)
      Specified by:
      setCamelContext in interface org.apache.camel.CamelContextAware
      Overrides:
      setCamelContext in class org.apache.camel.spi.Transformer