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",
description="Transforms from JSon to Java object using Jackson (supports content schema)")
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 -
Method Summary
Modifier and TypeMethodDescriptionprotected InputStreamgetBodyAsStream(org.apache.camel.Message message) org.apache.camel.CamelContextprotected ObjectgetJavaObject(org.apache.camel.Message message, SchemaType schemaType, com.fasterxml.jackson.core.FormatSchema schema, Class<?> contentType) voidsetCamelContext(org.apache.camel.CamelContext camelContext) voidtransform(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
getFrom, getName, getTo, setFrom, setName, setName, setTo, toStringMethods inherited from class org.apache.camel.support.service.BaseService
build, doBuild, doFail, doInit, doLifecycleChange, doResume, doShutdown, doStart, doStop, doSuspend, fail, getInternalLock, getStatus, init, isBuild, isInit, isNew, isRunAllowed, isShutdown, isStarted, isStarting, isStartingOrStarted, isStopped, isStopping, isStoppingOrStopped, isSuspended, isSuspending, isSuspendingOrSuspended, resume, shutdown, start, stop, suspendMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.apache.camel.Service
build, close, init, start, stopMethods inherited from interface org.apache.camel.ShutdownableService
shutdownMethods inherited from interface org.apache.camel.StatefulService
getStatus, isRunAllowed, isStarted, isStarting, isStopped, isStopping, isSuspendingMethods 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:
transformin classorg.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.InvalidPayloadExceptionIOException
-
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:
getCamelContextin interfaceorg.apache.camel.spi.HasCamelContext- Overrides:
getCamelContextin classorg.apache.camel.spi.Transformer
-
setCamelContext
public void setCamelContext(org.apache.camel.CamelContext camelContext) - Specified by:
setCamelContextin interfaceorg.apache.camel.CamelContextAware- Overrides:
setCamelContextin classorg.apache.camel.spi.Transformer
-