Package org.camunda.spin.plugin.impl
Class SpinObjectValueSerializer
- java.lang.Object
-
- org.camunda.bpm.engine.impl.variable.serializer.AbstractTypedValueSerializer<T>
-
- org.camunda.bpm.engine.impl.variable.serializer.AbstractSerializableValueSerializer<ObjectValue>
-
- org.camunda.bpm.engine.impl.variable.serializer.AbstractObjectValueSerializer
-
- org.camunda.spin.plugin.impl.SpinObjectValueSerializer
-
- All Implemented Interfaces:
TypedValueSerializer<ObjectValue>
public class SpinObjectValueSerializer extends AbstractObjectValueSerializer
Implementation of aTypedValueSerializerforObjectValuesusing a Spin-providedDataFormatto serialize and deserialize java objects.- Author:
- Daniel Meyer
-
-
Field Summary
Fields Modifier and Type Field Description protected org.camunda.spin.spi.DataFormat<?>dataFormatprotected Stringnameprotected org.camunda.spin.DeserializationTypeValidatorvalidator-
Fields inherited from class org.camunda.bpm.engine.impl.variable.serializer.AbstractSerializableValueSerializer
serializationDataFormat
-
Fields inherited from class org.camunda.bpm.engine.impl.variable.serializer.AbstractTypedValueSerializer
BINARY_VALUE_TYPES, valueType
-
-
Constructor Summary
Constructors Constructor Description SpinObjectValueSerializer(String name, org.camunda.spin.spi.DataFormat<?> dataFormat)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected booleancanSerializeValue(Object value)return true if this serializer is able to serialize the provided object.protected ObjectdeserializeFromByteArray(byte[] bytes, String objectTypeName)Deserialize the object from a byte array.StringgetName()The name of this serializer.protected StringgetTypeNameForDeserialized(Object deserializedObject)Returns the type name for the deserialized object.protected org.camunda.spin.DeserializationTypeValidatorgetValidator(ProcessEngineConfigurationImpl processEngineConfiguration)protected booleanisSerializationTextBased()Return true if the serialization is text based.protected byte[]serializeToByteArray(Object deserializedObject)Implementations must return a byte[] representation of the provided object.-
Methods inherited from class org.camunda.bpm.engine.impl.variable.serializer.AbstractObjectValueSerializer
convertToTypedValue, createDeserializedValue, createSerializedValue, deserializeFromByteArray, getObjectTypeName, isMutableValue, readObjectNameFromFields, updateTypedValue, writeToValueFields
-
Methods inherited from class org.camunda.bpm.engine.impl.variable.serializer.AbstractSerializableValueSerializer
canWriteValue, getSerializationDataformat, getSerializedBytesValue, getSerializedStringValue, readSerializedValueFromFields, readValue, writeValue
-
Methods inherited from class org.camunda.bpm.engine.impl.variable.serializer.AbstractTypedValueSerializer
canHandle, getType
-
-
-
-
Field Detail
-
name
protected String name
-
dataFormat
protected org.camunda.spin.spi.DataFormat<?> dataFormat
-
validator
protected org.camunda.spin.DeserializationTypeValidator validator
-
-
Constructor Detail
-
SpinObjectValueSerializer
public SpinObjectValueSerializer(String name, org.camunda.spin.spi.DataFormat<?> dataFormat)
-
-
Method Detail
-
getName
public String getName()
Description copied from interface:TypedValueSerializerThe name of this serializer. The name is used when persisting the ValueFields populated by this serializer.- Returns:
- the name of this serializer.
-
isSerializationTextBased
protected boolean isSerializationTextBased()
Description copied from class:AbstractObjectValueSerializerReturn true if the serialization is text based. Return false otherwise- Specified by:
isSerializationTextBasedin classAbstractObjectValueSerializer
-
getTypeNameForDeserialized
protected String getTypeNameForDeserialized(Object deserializedObject)
Description copied from class:AbstractObjectValueSerializerReturns the type name for the deserialized object.- Specified by:
getTypeNameForDeserializedin classAbstractObjectValueSerializer- Parameters:
deserializedObject- . Guaranteed not to be null- Returns:
- the type name fot the object.
-
serializeToByteArray
protected byte[] serializeToByteArray(Object deserializedObject) throws Exception
Description copied from class:AbstractObjectValueSerializerImplementations must return a byte[] representation of the provided object. The object is guaranteed not to be null.- Specified by:
serializeToByteArrayin classAbstractObjectValueSerializer- Parameters:
deserializedObject- the object to serialize- Returns:
- the byte array value of the object
- Throws:
Exception
-
deserializeFromByteArray
protected Object deserializeFromByteArray(byte[] bytes, String objectTypeName) throws Exception
Description copied from class:AbstractObjectValueSerializerDeserialize the object from a byte array.- Specified by:
deserializeFromByteArrayin classAbstractObjectValueSerializer- Parameters:
bytes- the object to deserializeobjectTypeName- the type name of the object to deserialize- Returns:
- the deserialized object
- Throws:
Exception
-
canSerializeValue
protected boolean canSerializeValue(Object value)
Description copied from class:AbstractSerializableValueSerializerreturn true if this serializer is able to serialize the provided object.- Specified by:
canSerializeValuein classAbstractSerializableValueSerializer<ObjectValue>- Parameters:
value- the object to test (guaranteed to be a non-null value)- Returns:
- true if the serializer can handle the object.
-
getValidator
protected org.camunda.spin.DeserializationTypeValidator getValidator(ProcessEngineConfigurationImpl processEngineConfiguration)
-
-