Package org.javarosa.xform.util
Class XFormAnswerDataSerializer
java.lang.Object
org.javarosa.xform.util.XFormAnswerDataSerializer
- All Implemented Interfaces:
IAnswerDataSerializer
public class XFormAnswerDataSerializer extends Object implements IAnswerDataSerializer
The XFormAnswerDataSerializer takes in AnswerData objects, and provides
an XForms compliant (String or Element) representation of that AnswerData.
By default, this serializer can properly operate on StringData, DateData
MultipleItemsData, and SelectOneData AnswerData objects. This list can be
extended by registering appropriate XForm serializing AnswerDataSerializers
with this class.
- Author:
- Clayton Sims
-
Field Summary
-
Constructor Summary
Constructors Constructor Description XFormAnswerDataSerializer() -
Method Summary
Modifier and Type Method Description booleancanSerialize(IAnswerData data)Identifies whether this serializer can turn the AnswerData object inside of the given element into an external format.BooleancontainsExternalData(IAnswerData data)Identifies whether an answer data object contains data that needs to be extracted to be handled differently than the serialized answer data.voidregisterAnswerSerializer(IAnswerDataSerializer ads)Extends the serializing capabilities of this serializer by registering another, and allowing this serializer to operate on all of the data types that the argument can.IDataPointer[]retrieveExternalDataPointer(IAnswerData data)Retrieves a pointer to external data contained in the provided answer data, if one exists.ObjectserializeAnswerData(BooleanData data)ObjectserializeAnswerData(DateData data)ObjectserializeAnswerData(DateTimeData data)ObjectserializeAnswerData(DecimalData data)ObjectserializeAnswerData(GeoPointData data)ObjectserializeAnswerData(GeoShapeData data)ObjectserializeAnswerData(GeoTraceData data)ObjectserializeAnswerData(IAnswerData data)Serializes the given data object into a format that can be stored externally.ObjectserializeAnswerData(IAnswerData data, int dataType)Serializes the given data object into a format that can be stored externally using the defined schemasObjectserializeAnswerData(IntegerData data)ObjectserializeAnswerData(LongData data)ObjectserializeAnswerData(MultipleItemsData data)ObjectserializeAnswerData(MultiPointerAnswerData data)ObjectserializeAnswerData(PointerAnswerData data)ObjectserializeAnswerData(SelectOneData data)ObjectserializeAnswerData(StringData data)ObjectserializeAnswerData(TimeData data)ObjectserializeAnswerData(UncastData data)
-
Field Details
-
DELIMITER
- See Also:
- Constant Field Values
-
-
Constructor Details
-
XFormAnswerDataSerializer
public XFormAnswerDataSerializer()
-
-
Method Details
-
registerAnswerSerializer
Description copied from interface:IAnswerDataSerializerExtends the serializing capabilities of this serializer by registering another, and allowing this serializer to operate on all of the data types that the argument can.- Specified by:
registerAnswerSerializerin interfaceIAnswerDataSerializer- Parameters:
ads- An IAnswerDataSerializer
-
canSerialize
Description copied from interface:IAnswerDataSerializerIdentifies whether this serializer can turn the AnswerData object inside of the given element into an external format.- Specified by:
canSerializein interfaceIAnswerDataSerializer- Parameters:
data- The element whose data is to be serialzed- Returns:
- true if this can meaningfully serialze the provided object. false otherwise
-
serializeAnswerData
- Parameters:
data- The AnswerDataObject to be serialized- Returns:
- A String which contains the given answer
-
serializeAnswerData
- Parameters:
data- The AnswerDataObject to be serialized- Returns:
- A String which contains the given answer
-
serializeAnswerData
- Parameters:
data- The AnswerDataObject to be serialized- Returns:
- A String which contains a date in xsd:date formatting
-
serializeAnswerData
- Parameters:
data- The AnswerDataObject to be serialized- Returns:
- A String which contains a date in xsd:date formatting
-
serializeAnswerData
- Parameters:
data- The AnswerDataObject to be serialized- Returns:
- A String which contains a date in xsd:time formatting
-
serializeAnswerData
- Parameters:
data- The AnswerDataObject to be serialized- Returns:
- A String which contains a reference to the data
-
serializeAnswerData
- Parameters:
data- The AnswerDataObject to be serialized- Returns:
- A String which contains a reference to the data
-
serializeAnswerData
- Parameters:
data- The AnswerDataObject to be serialized- Returns:
- A string containing the xforms compliant format for a
-
serializeAnswerData
- Parameters:
data- The AnswerDataObject to be serialized- Returns:
- A String which contains the value of a selection
-
serializeAnswerData
-
serializeAnswerData
-
serializeAnswerData
-
serializeAnswerData
-
serializeAnswerData
-
serializeAnswerData
-
serializeAnswerData
-
serializeAnswerData
Description copied from interface:IAnswerDataSerializerSerializes the given data object into a format that can be stored externally using the defined schemas- Specified by:
serializeAnswerDatain interfaceIAnswerDataSerializer- Returns:
- An implementation-specific representation of the given object if canSerialize() would return true for that object. False otherwise.
-
serializeAnswerData
Description copied from interface:IAnswerDataSerializerSerializes the given data object into a format that can be stored externally.- Specified by:
serializeAnswerDatain interfaceIAnswerDataSerializer- Parameters:
data- The element whose data is to be serialzed- Returns:
- An implementation-specific representation of the given object if canSerialize() would return true for that object. False otherwise.
-
containsExternalData
Description copied from interface:IAnswerDataSerializerIdentifies whether an answer data object contains data that needs to be extracted to be handled differently than the serialized answer data.- Specified by:
containsExternalDatain interfaceIAnswerDataSerializer- Parameters:
data- The answer data that should be checked.- Returns:
- True if this data contains information that can be extracted. False if it does not. Null if this serializer cannot process the data type.
-
retrieveExternalDataPointer
Description copied from interface:IAnswerDataSerializerRetrieves a pointer to external data contained in the provided answer data, if one exists.- Specified by:
retrieveExternalDataPointerin interfaceIAnswerDataSerializer- Parameters:
data- The answer data that contains the pointer. containsExternalData should return true for this data.- Returns:
- An IDataPointer to an external piece of data that couldn't (or shouldn't) be serialized directly. Null if containsExternalData() does not return true for this answer data.
-