|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectbiweekly.property.marshaller.ICalPropertyMarshaller<T>
biweekly.property.marshaller.ListPropertyMarshaller<ExceptionDates,Date>
biweekly.property.marshaller.ExceptionDatesMarshaller
public class ExceptionDatesMarshaller
Marshals ExceptionDates
properties.
Nested Class Summary |
---|
Nested classes/interfaces inherited from class biweekly.property.marshaller.ICalPropertyMarshaller |
---|
ICalPropertyMarshaller.DateParser, ICalPropertyMarshaller.DateWriter, ICalPropertyMarshaller.ListCallback<T>, ICalPropertyMarshaller.Result<T extends ICalProperty>, ICalPropertyMarshaller.SemiStructuredIterator, ICalPropertyMarshaller.Splitter, ICalPropertyMarshaller.StructuredIterator |
Field Summary |
---|
Fields inherited from class biweekly.property.marshaller.ICalPropertyMarshaller |
---|
clazz, defaultDataType, propertyName, qname |
Constructor Summary | |
---|---|
ExceptionDatesMarshaller()
|
Method Summary | |
---|---|
protected ICalDataType |
_dataType(ExceptionDates property)
Determines the data type of a property instance. |
protected ExceptionDates |
_parseJson(JCalValue value,
ICalDataType dataType,
ICalParameters parameters,
List<String> warnings)
/** |
protected ExceptionDates |
_parseXml(XCalElement element,
ICalParameters parameters,
List<String> warnings)
Unmarshals a property from an XML document (xCal). |
protected JCalValue |
_writeJson(ExceptionDates property)
Marshals a property's value to a JSON data stream (jCal). |
protected void |
_writeXml(ExceptionDates property,
XCalElement element)
Marshals a property's value to an XML element (xCal). |
protected ExceptionDates |
newInstance(ICalDataType dataType,
ICalParameters parameters)
|
protected Date |
readValue(String value,
ICalDataType dataType,
ICalParameters parameters,
List<String> warnings)
|
protected String |
writeValue(ExceptionDates property,
Date value)
|
Methods inherited from class biweekly.property.marshaller.ListPropertyMarshaller |
---|
_parseText, _writeText |
Methods inherited from class biweekly.property.marshaller.ICalPropertyMarshaller |
---|
_prepareParameters, dataType, date, date, escape, getDefaultDataType, getPropertyClass, getPropertyName, getQName, list, list, list, list, missingXmlElements, missingXmlElements, object, object, parseJson, parseText, parseXml, prepareParameters, semistructured, semistructured, split, structured, structured, structured, unescape, writeJson, writeText, writeXml |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public ExceptionDatesMarshaller()
Method Detail |
---|
protected ICalDataType _dataType(ExceptionDates property)
ICalPropertyMarshaller
Determines the data type of a property instance.
This method should be overridden by child classes if a property's data type changes depending on its value. The default implementation of this method returns the property's default data type.
_dataType
in class ICalPropertyMarshaller<ExceptionDates>
property
- the property
protected ExceptionDates newInstance(ICalDataType dataType, ICalParameters parameters)
newInstance
in class ListPropertyMarshaller<ExceptionDates,Date>
protected String writeValue(ExceptionDates property, Date value)
writeValue
in class ListPropertyMarshaller<ExceptionDates,Date>
protected Date readValue(String value, ICalDataType dataType, ICalParameters parameters, List<String> warnings)
readValue
in class ListPropertyMarshaller<ExceptionDates,Date>
protected void _writeXml(ExceptionDates property, XCalElement element)
ICalPropertyMarshaller
Marshals a property's value to an XML element (xCal).
This method should be overridden by child classes that wish to support
xCal. The default implementation of this method will append one child
element to the property's XML element. The child element's name will be
that of the property's data type (retrieved using the ICalPropertyMarshaller.dataType(T)
method), and the child element's text content will be set to the
property's marshalled plain-text value (retrieved using the
ICalPropertyMarshaller.writeText(T)
method).
_writeXml
in class ListPropertyMarshaller<ExceptionDates,Date>
property
- the propertyelement
- the property's XML elementprotected ExceptionDates _parseXml(XCalElement element, ICalParameters parameters, List<String> warnings)
ICalPropertyMarshaller
Unmarshals a property from an XML document (xCal).
This method should be overridden by child classes that wish to support
xCal. The default implementation of this method will find the first child
element with the xCal namespace. The element's name will be used as the
property's data type and its text content will be passed into the
ICalPropertyMarshaller._parseText(java.lang.String, biweekly.ICalDataType, biweekly.parameter.ICalParameters, java.util.List
method. If no such child element is found, then the
parent element's text content will be passed into ICalPropertyMarshaller._parseText(java.lang.String, biweekly.ICalDataType, biweekly.parameter.ICalParameters, java.util.List
and
the data type will be null.
_parseXml
in class ListPropertyMarshaller<ExceptionDates,Date>
element
- the property's XML elementparameters
- the parsed parameters. These parameters will be
assigned to the property object once this method returns. Therefore, do
not assign any parameters to the property object itself whilst inside of
this method, or else they will be overwritten.warnings
- allows the programmer to alert the user to any
note-worthy (but non-critical) issues that occurred during the
unmarshalling process
protected JCalValue _writeJson(ExceptionDates property)
ICalPropertyMarshaller
Marshals a property's value to a JSON data stream (jCal).
This method should be overridden by child classes that wish to support
jCal. The default implementation of this method will create a jCard
property that has a single JSON string value (generated by the
ICalPropertyMarshaller.writeText(T)
method).
_writeJson
in class ListPropertyMarshaller<ExceptionDates,Date>
property
- the property
protected ExceptionDates _parseJson(JCalValue value, ICalDataType dataType, ICalParameters parameters, List<String> warnings)
ICalPropertyMarshaller
Unmarshals a property from a JSON data stream (jCal).
This method should be overridden by child classes that wish to support
jCal. The default implementation of this method will convert the jCal
property value to a string and pass it into the ICalPropertyMarshaller._parseText(java.lang.String, biweekly.ICalDataType, biweekly.parameter.ICalParameters, java.util.List
method.
The following paragraphs describe the way in which this method's default implementation converts a jCal value to a string:
If the jCal value consists of a single, non-array, non-object value, then
the value is converted to a string. Special characters (backslashes,
commas, and semicolons) are escaped in order to simulate what the value
might look like in a plain-text iCalendar object.
["x-foo", {}, "text", "the;value"] --> "the\;value"
["x-foo", {}, "text", 2] --> "2"
If the jCal value consists of multiple, non-array, non-object values,
then all the values are appended together in a single string, separated
by commas. Special characters (backslashes, commas, and semicolons) are
escaped for each value in order to prevent commas from being treated as
delimiters, and to simulate what the value might look like in a
plain-text iCalendar object.
["x-foo", {}, "text", "one", "two,three"] -->
"one,two\,three"
If the jCal value is a single array, then this array is treated as a
"structured value", and converted its plain-text representation. Special
characters (backslashes, commas, and semicolons) are escaped for each
value in order to prevent commas and semicolons from being treated as
delimiters.
["x-foo", {}, "text", ["one", ["two", "three"], "four;five"]]
--> "one;two,three;four\;five"
If the jCal value starts with a JSON object, then the object is converted
to a format identical to the one used in the RRULE and EXRULE properties.
Special characters (backslashes, commas, semicolons, and equal signs) are
escaped for each value in order to preserve the syntax of the string
value.
["x-foo", {}, "text", {"one": 1, "two": [2, 2.5]}] --> "ONE=1;TWO=2,2.5"
For all other cases, behavior is undefined.
_parseJson
in class ListPropertyMarshaller<ExceptionDates,Date>
value
- the property's JSON valuedataType
- the data typeparameters
- the parsed parameters. These parameters will be
assigned to the property object once this method returns. Therefore, do
not assign any parameters to the property object itself whilst inside of
this method, or else they will be overwritten.warnings
- allows the programmer to alert the user to any
note-worthy (but non-critical) issues that occurred during the
unmarshalling process
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |