Package org.apache.camel.component.jsonb
Class JsonbDataFormat
java.lang.Object
org.apache.camel.support.service.BaseService
org.apache.camel.support.service.ServiceSupport
org.apache.camel.component.jsonb.JsonbDataFormat
- All Implemented Interfaces:
AutoCloseable,org.apache.camel.CamelContextAware,org.apache.camel.Service,org.apache.camel.ShutdownableService,org.apache.camel.spi.DataFormat,org.apache.camel.spi.DataFormatName,org.apache.camel.spi.HasCamelContext,org.apache.camel.StatefulService,org.apache.camel.SuspendableService
@Dataformat("jsonb")
@Metadata(includeProperties="unmarshalTypeName,unmarshalType,objectMapper,prettyPrint,binaryStrategy,encoding,propertyOrder,propertyNamingStrategy,skipNull")
public class JsonbDataFormat
extends org.apache.camel.support.service.ServiceSupport
implements org.apache.camel.spi.DataFormat, org.apache.camel.spi.DataFormatName, org.apache.camel.CamelContextAware
Marshal POJOs to JSON and back using JSON-B.
-
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
ConstructorsConstructorDescriptionJsonbDataFormat(jakarta.json.bind.Jsonb mapper, Class<?> unmarshalType) Use a custom JSON-B instance and unmarshal typeJsonbDataFormat(Class<?> unmarshalType) JsonbDataFormat(Type customType) Use the default JSON-BJsonband with a custom unmarshal typeJsonbDataFormat(String unmarshalTypeName) -
Method Summary
Modifier and TypeMethodDescriptionprotected voiddoInit()protected voiddoStart()protected voiddoStop()org.apache.camel.CamelContextjakarta.json.bind.JsonbClass<?> booleanbooleanvoidmarshal(org.apache.camel.Exchange exchange, Object graph, OutputStream stream) voidsetBinaryStrategy(String binaryStrategy) voidsetCamelContext(org.apache.camel.CamelContext camelContext) voidsetEncoding(String encoding) voidsetObjectMapper(jakarta.json.bind.Jsonb objectMapper) Set a custom Jsonb instance, potentially initialized with a custom JsonbConfig.voidsetPrettyPrint(boolean prettyPrint) voidsetPropertyNamingStrategy(String propertyNamingStrategy) voidsetPropertyOrder(String propertyOrder) voidsetSkipNull(boolean skipNull) voidsetUnmarshalType(Class<?> unmarshalType) voidsetUnmarshalTypeName(String unmarshalTypeName) unmarshal(org.apache.camel.Exchange exchange, InputStream stream) Methods inherited from class org.apache.camel.support.service.BaseService
build, doBuild, doFail, doLifecycleChange, doResume, doShutdown, 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, toString, 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
-
JsonbDataFormat
public JsonbDataFormat() -
JsonbDataFormat
Use the default JSON-BJsonband with a custom unmarshal type- Parameters:
customType- the custom unmarshal type
-
JsonbDataFormat
-
JsonbDataFormat
-
JsonbDataFormat
Use a custom JSON-B instance and unmarshal type- Parameters:
mapper- the custom mapperunmarshalType- the custom unmarshal type
-
-
Method Details
-
setCamelContext
public void setCamelContext(org.apache.camel.CamelContext camelContext) - Specified by:
setCamelContextin interfaceorg.apache.camel.CamelContextAware
-
getCamelContext
public org.apache.camel.CamelContext getCamelContext()- Specified by:
getCamelContextin interfaceorg.apache.camel.spi.HasCamelContext
-
getDataFormatName
- Specified by:
getDataFormatNamein interfaceorg.apache.camel.spi.DataFormatName
-
getObjectMapper
public jakarta.json.bind.Jsonb getObjectMapper() -
setObjectMapper
public void setObjectMapper(jakarta.json.bind.Jsonb objectMapper) Set a custom Jsonb instance, potentially initialized with a custom JsonbConfig.- Parameters:
objectMapper- the Jsonb instance to set.
-
getUnmarshalType
-
setUnmarshalType
-
getUnmarshalTypeName
-
setUnmarshalTypeName
-
isPrettyPrint
public boolean isPrettyPrint() -
setPrettyPrint
public void setPrettyPrint(boolean prettyPrint) -
getEncoding
-
setEncoding
-
isSkipNull
public boolean isSkipNull() -
setSkipNull
public void setSkipNull(boolean skipNull) -
getBinaryStrategy
-
setBinaryStrategy
-
getPropertyOrder
-
setPropertyOrder
-
getPropertyNamingStrategy
-
setPropertyNamingStrategy
-
marshal
- Specified by:
marshalin interfaceorg.apache.camel.spi.DataFormat
-
unmarshal
- Specified by:
unmarshalin interfaceorg.apache.camel.spi.DataFormat- Throws:
Exception
-
unmarshal
- Specified by:
unmarshalin interfaceorg.apache.camel.spi.DataFormat- Throws:
Exception
-
doInit
protected void doInit()- Overrides:
doInitin classorg.apache.camel.support.service.BaseService
-
doStart
protected void doStart()- Overrides:
doStartin classorg.apache.camel.support.service.BaseService
-
doStop
protected void doStop()- Overrides:
doStopin classorg.apache.camel.support.service.BaseService
-