0.3.3 - May 31, 2014
<unknown>property values in xCal documents weren't being parsed correctly.
0.3.2 - January 22, 2014
Biweeklyclass, the stream is now flushed after every iCalendar object is written (see Ticket 4, credit: Romain Gonord).
0.3.1 - September 21, 2013
InputStream/OutputStreamobject is passed into one of biweekly's reader/writer classes. Java
Reader/Writerobjects are not effected by this change because they are configured to use their own character encoding.
OutputStreamobject is passed into a writer class, UTF-8 encoding will be used.
InputStreamobject is passed into a plain-text iCal or jCal reader, UTF-8 encoding will be used.
InputStreamobject is passed into a xCal reader, the "encoding" attribute in the header portion of the XML document will be properly taken into account. Before, it was ignored and the document was parsed according to the JVM's default character encoding.
Durationclass (credit: Caruyer Perrine):
toMillis()- Converts the duration to milliseconds
add(Date)- Adds the duration to a Date object
diff(Date, Date)- Factory method that builds a
Durationfrom the difference between two Dates
fromMillis(long)- Factory method that builds a
Durationfrom a milliseconds value
Biweekly.parse(File)methods no longer throw a
ICalParameter.getRsvp()method now throws an
IllegalStateExceptionwhen the RSVP parameter value cannot be parsed (i.e. if it's something other than "true" or "false"). Before, it would return "null", which was misleading ("null" typically means that the parameter does not exist). Raw parameter values can still be retrieved using the
CannotParseExceptionis now consistently thrown during the parsing of xCal properties when the XML element which holds the property's value cannot be found.
ICalMarshallerRegistrarclass, which can be used to assign a set of custom marshallers to a reader or writer class.
JCalValue.structured()so they properly support multi-valued structured components.
ValidationWarningsclass from the
biweekly.componentpackage to the
0.3.0 - August 4 2013
VJOURNALcomponents from being read/written correctly (its marshaller class was missing).
TZIDparameter is now taken into account when reading/writing the
setLocalTime(boolean)method to certain date-time classes which instructs the library to format the timestamp according to local time (default timezone) when written.
DTSTARTproperty is now formatted according to local time (default timezone) when part of a
DAYLIGHTcomponent (timezone definition).
ICalWriterclass no longer logs warnings.
ICalWriterclass now throws an
IllegalArgumentExceptionif it cannot find the marshaller class of a property or component object.
ICalendar.validate()is called. Each parameter is checked to make sure its value is valid (for example, confirming that
RSVPis either "true" or "false") (see Ticket 2).
TRANSPproperties are now checked to ensure they use an acceptable value.
ValidationWarningsobject contains a list of
WarningsGroupobject contains a reference to the property/component that caused the warnings, references to the property/component's parent components, and a list of the validation warnings.
DTSTARTproperties that are located within
0.2.0 - July 7 2013
0.1.0 - June 25 2013