to.etc.xml
Class W3CSchemaCoder

java.lang.Object
  extended by to.etc.xml.W3CSchemaCoder

public class W3CSchemaCoder
extends java.lang.Object

Helper class which encodes data using the w3c schema definitions; see http://www.w3.org/TR/xmlschema-2

Author:
Frits Jalvingh Created on Apr 29, 2008

Constructor Summary
W3CSchemaCoder()
           
 
Method Summary
static boolean decodeBoolean(java.lang.String in)
           
static java.util.GregorianCalendar decodeDate(java.lang.String in)
          Decodes a xsd:date format value; lexical representation is [['-'? yyyy '-' mm '-' dd zzzzzz?]].
static java.util.GregorianCalendar decodeDateTime_iso8601(java.lang.String in)
          XML/RPC datetime type.
static java.util.GregorianCalendar decodeDateTime(java.lang.String in)
          Decodes a xsd:dateTime value; lexical representation is [['-'? yyyy '-' mm '-' dd 'T' hh ':' mm ':' ss ('.' s+)? (zzzzzz)?]].
static java.util.GregorianCalendar decodeTime(java.lang.String in)
           
static void encodeBase64(java.io.Writer out, byte[] data)
          DO NOT USE: Bulk-encodes data into base64-encoding.
static java.lang.String encodeBoolean(boolean val)
           
static java.lang.String encodeDate(java.util.Date in, java.util.TimeZone timezone)
          Outputs the date specified (which is a date in the specified timezone) using only date fields, no time.
static java.lang.String encodeDateTime(java.util.Date in, java.util.TimeZone timezone)
          Outputs the date specified (which is a time in the specified timezone) and add the timezone identifier if present.
static java.lang.String encodeDateTimeToUTC(java.util.Date in, java.util.TimeZone sourceZone)
          This encodes the date/time.
static java.lang.String encodeDecimal(java.math.BigDecimal value)
           
static java.lang.String encodeDouble(double v)
           
static java.lang.String encodeInteger(int value)
           
static java.lang.String encodeInteger(long value)
           
static java.lang.String encodeTime(java.util.Date in, java.util.TimeZone timezone)
          Outputs the time-only specified (which is a time in the specified timezone) and add the timezone identifier if present.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

W3CSchemaCoder

public W3CSchemaCoder()
Method Detail

encodeBoolean

public static java.lang.String encodeBoolean(boolean val)

decodeBoolean

public static boolean decodeBoolean(java.lang.String in)

encodeDouble

public static java.lang.String encodeDouble(double v)

encodeDateTimeToUTC

public static java.lang.String encodeDateTimeToUTC(java.util.Date in,
                                                   java.util.TimeZone sourceZone)
This encodes the date/time. If sourceZone is specified the date gets converted from that zone to UTC as specified by the standard. If zone is null no conversion will be done.

Parameters:
in -
sourceZone -
Returns:

encodeDateTime

public static java.lang.String encodeDateTime(java.util.Date in,
                                              java.util.TimeZone timezone)
Outputs the date specified (which is a time in the specified timezone) and add the timezone identifier if present.

Parameters:
in -
timezone -
Returns:

encodeTime

public static java.lang.String encodeTime(java.util.Date in,
                                          java.util.TimeZone timezone)
Outputs the time-only specified (which is a time in the specified timezone) and add the timezone identifier if present.

Parameters:
in -
timezone -
Returns:

encodeDate

public static java.lang.String encodeDate(java.util.Date in,
                                          java.util.TimeZone timezone)
Outputs the date specified (which is a date in the specified timezone) using only date fields, no time.

Parameters:
in -
timezone -
Returns:

encodeInteger

public static final java.lang.String encodeInteger(long value)

encodeInteger

public static final java.lang.String encodeInteger(int value)

encodeDecimal

public static final java.lang.String encodeDecimal(java.math.BigDecimal value)

decodeDate

public static final java.util.GregorianCalendar decodeDate(java.lang.String in)
Decodes a xsd:date format value; lexical representation is [['-'? yyyy '-' mm '-' dd zzzzzz?]]. WARNING: This current version decodes the version for "http://www.w3.org/TR/xmlschema-2/" and as such disallows yyyy=0000. Newer versions of the standard may allow this.

Parameters:
in -
Returns:
a Calendar holding the date. This calendar gets OVERWRITTEN the next time a date/time gets decoded!!

decodeDateTime

public static final java.util.GregorianCalendar decodeDateTime(java.lang.String in)
Decodes a xsd:dateTime value; lexical representation is [['-'? yyyy '-' mm '-' dd 'T' hh ':' mm ':' ss ('.' s+)? (zzzzzz)?]].

Parameters:
in -
Returns:
a Calendar holding the date. This calendar gets OVERWRITTEN the next time a date/time gets decoded!!

decodeDateTime_iso8601

public static final java.util.GregorianCalendar decodeDateTime_iso8601(java.lang.String in)
XML/RPC datetime type.

Parameters:
in -
Returns:

decodeTime

public static final java.util.GregorianCalendar decodeTime(java.lang.String in)
Parameters:
in -
Returns:

encodeBase64

public static final void encodeBase64(java.io.Writer out,
                                      byte[] data)
                               throws java.io.IOException
DO NOT USE: Bulk-encodes data into base64-encoding.

Parameters:
out -
data -
Throws:
java.io.IOException