Package org.apache.camel.component.gson
Class GsonDataFormat
- java.lang.Object
-
- org.apache.camel.support.service.BaseService
-
- org.apache.camel.support.service.ServiceSupport
-
- org.apache.camel.component.gson.GsonDataFormat
-
- 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.DataFormatContentTypeHeader
,org.apache.camel.spi.DataFormatName
,org.apache.camel.StatefulService
,org.apache.camel.SuspendableService
@Dataformat("json-gson") @Metadata(includeProperties="unmarshalTypeName,prettyPrint,contentTypeHeader") public class GsonDataFormat extends org.apache.camel.support.service.ServiceSupport implements org.apache.camel.spi.DataFormat, org.apache.camel.spi.DataFormatName, org.apache.camel.spi.DataFormatContentTypeHeader, org.apache.camel.CamelContextAware
Marshal POJOs to JSON and back using Gson
-
-
Constructor Summary
Constructors Constructor Description GsonDataFormat()
GsonDataFormat(com.google.gson.Gson gson, Class<?> unmarshalType)
Use a custom Gson mapper and and unmarshal typeGsonDataFormat(com.google.gson.Gson gson, Type unmarshalGenericType)
Use a custom Gson mapper and and unmarshal token typeGsonDataFormat(Class<?> unmarshalType)
Use the default GsonGson
and with a custom unmarshal typeGsonDataFormat(Class<?> unmarshalType, com.google.gson.ExclusionStrategy... exclusionStrategies)
Deprecated.use the setter insteadGsonDataFormat(Type unmarshalGenericType)
Use the default GsonGson
and with a custom unmarshal generic type
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description protected void
doInit()
protected void
doStart()
protected void
doStop()
org.apache.camel.CamelContext
getCamelContext()
String
getDataFormatName()
String
getDateFormatPattern()
List<com.google.gson.ExclusionStrategy>
getExclusionStrategies()
com.google.gson.FieldNamingPolicy
getFieldNamingPolicy()
com.google.gson.FieldNamingStrategy
getFieldNamingStrategy()
com.google.gson.Gson
getGson()
com.google.gson.LongSerializationPolicy
getLongSerializationPolicy()
Boolean
getPrettyPrinting()
Deprecated.useisPrettyPrint()
insteadBoolean
getSerializeNulls()
Deprecated.useisSerializeNulls()
insteadType
getUnmarshalGenericType()
Class<?>
getUnmarshalType()
String
getUnmarshalTypeName()
boolean
isContentTypeHeader()
boolean
isPrettyPrint()
boolean
isSerializeNulls()
void
marshal(org.apache.camel.Exchange exchange, Object graph, OutputStream stream)
void
setCamelContext(org.apache.camel.CamelContext camelContext)
void
setContentTypeHeader(boolean contentTypeHeader)
If enabled then Gson will set the Content-Type header to application/json when marshalling.void
setDateFormatPattern(String dateFormatPattern)
void
setExclusionStrategies(List<com.google.gson.ExclusionStrategy> exclusionStrategies)
void
setFieldNamingPolicy(com.google.gson.FieldNamingPolicy fieldNamingPolicy)
void
setFieldNamingStrategy(com.google.gson.FieldNamingStrategy fieldNamingStrategy)
void
setLongSerializationPolicy(com.google.gson.LongSerializationPolicy longSerializationPolicy)
void
setPrettyPrint(boolean prettyPrint)
void
setPrettyPrinting(Boolean prettyPrinting)
Deprecated.usesetPrettyPrint(boolean)
insteadvoid
setSerializeNulls(boolean serializeNulls)
void
setSerializeNulls(Boolean serializeNulls)
Deprecated.usesetSerializeNulls(boolean)
insteadvoid
setUnmarshalGenericType(Type unmarshalGenericType)
void
setUnmarshalType(Class<?> unmarshalType)
void
setUnmarshalTypeName(String unmarshalTypeName)
Object
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, 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, toString, wait, wait, wait
-
-
-
-
Constructor Detail
-
GsonDataFormat
public GsonDataFormat()
-
GsonDataFormat
public GsonDataFormat(Class<?> unmarshalType)
Use the default GsonGson
and with a custom unmarshal type- Parameters:
unmarshalType
- the custom unmarshal type
-
GsonDataFormat
@Deprecated public GsonDataFormat(Class<?> unmarshalType, com.google.gson.ExclusionStrategy... exclusionStrategies)
Deprecated.use the setter insteadUse the default GsonGson
and with a custom unmarshal type andExclusionStrategy
- Parameters:
unmarshalType
- the custom unmarshal typeexclusionStrategies
- one or more custom ExclusionStrategy implementations
-
GsonDataFormat
public GsonDataFormat(com.google.gson.Gson gson, Class<?> unmarshalType)
Use a custom Gson mapper and and unmarshal type- Parameters:
gson
- the custom mapperunmarshalType
- the custom unmarshal type
-
GsonDataFormat
public GsonDataFormat(Type unmarshalGenericType)
Use the default GsonGson
and with a custom unmarshal generic type- Parameters:
unmarshalGenericType
- the custom unmarshal generic type
-
GsonDataFormat
public GsonDataFormat(com.google.gson.Gson gson, Type unmarshalGenericType)
Use a custom Gson mapper and and unmarshal token type- Parameters:
gson
- the custom mapperunmarshalGenericType
- the custom unmarshal generic type
-
-
Method Detail
-
getCamelContext
public org.apache.camel.CamelContext getCamelContext()
- Specified by:
getCamelContext
in interfaceorg.apache.camel.CamelContextAware
-
setCamelContext
public void setCamelContext(org.apache.camel.CamelContext camelContext)
- Specified by:
setCamelContext
in interfaceorg.apache.camel.CamelContextAware
-
getDataFormatName
public String getDataFormatName()
- Specified by:
getDataFormatName
in interfaceorg.apache.camel.spi.DataFormatName
-
marshal
public void marshal(org.apache.camel.Exchange exchange, Object graph, OutputStream stream) throws Exception
- Specified by:
marshal
in interfaceorg.apache.camel.spi.DataFormat
- Throws:
Exception
-
unmarshal
public Object unmarshal(org.apache.camel.Exchange exchange, InputStream stream) throws Exception
- Specified by:
unmarshal
in interfaceorg.apache.camel.spi.DataFormat
- Throws:
Exception
-
doInit
protected void doInit() throws Exception
- Overrides:
doInit
in classorg.apache.camel.support.service.BaseService
- Throws:
Exception
-
doStart
protected void doStart() throws Exception
- Overrides:
doStart
in classorg.apache.camel.support.service.BaseService
- Throws:
Exception
-
doStop
protected void doStop() throws Exception
- Overrides:
doStop
in classorg.apache.camel.support.service.BaseService
- Throws:
Exception
-
getUnmarshalType
public Class<?> getUnmarshalType()
-
setUnmarshalType
public void setUnmarshalType(Class<?> unmarshalType)
-
getUnmarshalTypeName
public String getUnmarshalTypeName()
-
setUnmarshalTypeName
public void setUnmarshalTypeName(String unmarshalTypeName)
-
getUnmarshalGenericType
public Type getUnmarshalGenericType()
-
setUnmarshalGenericType
public void setUnmarshalGenericType(Type unmarshalGenericType)
-
getExclusionStrategies
public List<com.google.gson.ExclusionStrategy> getExclusionStrategies()
-
setExclusionStrategies
public void setExclusionStrategies(List<com.google.gson.ExclusionStrategy> exclusionStrategies)
-
getLongSerializationPolicy
public com.google.gson.LongSerializationPolicy getLongSerializationPolicy()
-
setLongSerializationPolicy
public void setLongSerializationPolicy(com.google.gson.LongSerializationPolicy longSerializationPolicy)
-
getFieldNamingPolicy
public com.google.gson.FieldNamingPolicy getFieldNamingPolicy()
-
setFieldNamingPolicy
public void setFieldNamingPolicy(com.google.gson.FieldNamingPolicy fieldNamingPolicy)
-
getFieldNamingStrategy
public com.google.gson.FieldNamingStrategy getFieldNamingStrategy()
-
setFieldNamingStrategy
public void setFieldNamingStrategy(com.google.gson.FieldNamingStrategy fieldNamingStrategy)
-
getSerializeNulls
@Deprecated public Boolean getSerializeNulls()
Deprecated.useisSerializeNulls()
instead
-
isSerializeNulls
public boolean isSerializeNulls()
-
setSerializeNulls
@Deprecated public void setSerializeNulls(Boolean serializeNulls)
Deprecated.usesetSerializeNulls(boolean)
instead
-
setSerializeNulls
public void setSerializeNulls(boolean serializeNulls)
-
getPrettyPrinting
@Deprecated public Boolean getPrettyPrinting()
Deprecated.useisPrettyPrint()
instead
-
isPrettyPrint
public boolean isPrettyPrint()
-
setPrettyPrinting
@Deprecated public void setPrettyPrinting(Boolean prettyPrinting)
Deprecated.usesetPrettyPrint(boolean)
instead
-
setPrettyPrint
public void setPrettyPrint(boolean prettyPrint)
-
getDateFormatPattern
public String getDateFormatPattern()
-
setDateFormatPattern
public void setDateFormatPattern(String dateFormatPattern)
-
isContentTypeHeader
public boolean isContentTypeHeader()
-
setContentTypeHeader
public void setContentTypeHeader(boolean contentTypeHeader)
If enabled then Gson will set the Content-Type header to application/json when marshalling.- Specified by:
setContentTypeHeader
in interfaceorg.apache.camel.spi.DataFormatContentTypeHeader
-
getGson
public com.google.gson.Gson getGson()
-
-