Class AbstractSerializableValueSerializer<T extends SerializableValue>
java.lang.Object
org.camunda.bpm.engine.impl.variable.serializer.AbstractTypedValueSerializer<T>
org.camunda.bpm.engine.impl.variable.serializer.AbstractSerializableValueSerializer<T>
- All Implemented Interfaces:
- TypedValueSerializer<T>
- Direct Known Subclasses:
- AbstractObjectValueSerializer,- SpinValueSerializer
public abstract class AbstractSerializableValueSerializer<T extends SerializableValue>
extends AbstractTypedValueSerializer<T>
- Author:
- Roman Smirnov
- 
Field SummaryFieldsFields inherited from class org.camunda.bpm.engine.impl.variable.serializer.AbstractTypedValueSerializerBINARY_VALUE_TYPES, valueType
- 
Constructor SummaryConstructorsConstructorDescriptionAbstractSerializableValueSerializer(SerializableValueType type, String serializationDataFormat) 
- 
Method SummaryModifier and TypeMethodDescriptionprotected abstract booleancanSerializeValue(Object value) return true if this serializer is able to serialize the provided object.protected booleancanWriteValue(TypedValue typedValue) protected abstract TcreateDeserializedValue(Object deserializedObject, String serializedStringValue, ValueFields valueFields, boolean asTransientValue) protected abstract TcreateSerializedValue(String serializedStringValue, ValueFields valueFields, boolean asTransientValue) protected abstract ObjectdeserializeFromByteArray(byte[] object, ValueFields valueFields) Deserialize the object from a byte array.protected byte[]getSerializedBytesValue(String serializedStringValue) protected StringgetSerializedStringValue(byte[] serializedByteValue) protected abstract booleanReturn true if the serialization is text based.protected byte[]readSerializedValueFromFields(ValueFields valueFields) readValue(ValueFields valueFields, boolean deserializeObjectValue, boolean asTransientValue) Retrieve aTypedValuefrom the providedValueFields.protected abstract byte[]serializeToByteArray(Object deserializedObject) Implementations must return a byte[] representation of the provided object.protected abstract voidupdateTypedValue(T value, String serializedStringValue) protected abstract voidwriteToValueFields(T value, ValueFields valueFields, byte[] serializedValue) voidwriteValue(T value, ValueFields valueFields) Serialize aTypedValueto theValueFields.Methods inherited from class org.camunda.bpm.engine.impl.variable.serializer.AbstractTypedValueSerializercanHandle, getType, isMutableValueMethods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.camunda.bpm.engine.impl.variable.serializer.TypedValueSerializerconvertToTypedValue, getName
- 
Field Details- 
serializationDataFormat
 
- 
- 
Constructor Details- 
AbstractSerializableValueSerializerpublic AbstractSerializableValueSerializer(SerializableValueType type, String serializationDataFormat) 
 
- 
- 
Method Details- 
getSerializationDataformat- Specified by:
- getSerializationDataformatin interface- TypedValueSerializer<T extends SerializableValue>
- Overrides:
- getSerializationDataformatin class- AbstractTypedValueSerializer<T extends SerializableValue>
- Returns:
- the dataformat used by the serializer or null if this is not an object serializer
 
- 
writeValueDescription copied from interface:TypedValueSerializerSerialize aTypedValueto theValueFields.- Parameters:
- value- the- TypedValueto persist
- valueFields- the- ValueFieldsto which the value should be persisted
 
- 
readValuepublic T readValue(ValueFields valueFields, boolean deserializeObjectValue, boolean asTransientValue) Description copied from interface:TypedValueSerializerRetrieve aTypedValuefrom the providedValueFields.- Parameters:
- valueFields- the- ValueFieldsto retrieve the value from
- deserializeObjectValue- indicates whether a- SerializableValueshould be deserialized.
- Returns:
- the TypedValue
 
- 
createDeserializedValueprotected abstract T createDeserializedValue(Object deserializedObject, String serializedStringValue, ValueFields valueFields, boolean asTransientValue) 
- 
createSerializedValueprotected abstract T createSerializedValue(String serializedStringValue, ValueFields valueFields, boolean asTransientValue) 
- 
writeToValueFieldsprotected abstract void writeToValueFields(T value, ValueFields valueFields, byte[] serializedValue) 
- 
updateTypedValue
- 
readSerializedValueFromFields
- 
getSerializedStringValue
- 
getSerializedBytesValue
- 
canWriteValue- Specified by:
- canWriteValuein class- AbstractTypedValueSerializer<T extends SerializableValue>
 
- 
canSerializeValuereturn true if this serializer is able to serialize the provided object.- Parameters:
- value- the object to test (guaranteed to be a non-null value)
- Returns:
- true if the serializer can handle the object.
 
- 
serializeToByteArrayImplementations must return a byte[] representation of the provided object. The object is guaranteed not to be null.- Parameters:
- deserializedObject- the object to serialize
- Returns:
- the byte array value of the object
- Throws:
- exception- in case the object cannot be serialized
- Exception
 
- 
deserializeFromByteArrayprotected abstract Object deserializeFromByteArray(byte[] object, ValueFields valueFields) throws Exception Deserialize the object from a byte array.- Parameters:
- object- the object to deserialize
- valueFields- the value fields
- Returns:
- the deserialized object
- Throws:
- exception- in case the object cannot be deserialized
- Exception
 
- 
isSerializationTextBasedprotected abstract boolean isSerializationTextBased()Return true if the serialization is text based. Return false otherwise
 
-