package org.activiti.engine.impl.webservice;
import java.util.Calendar;
import java.util.Date;
/**
* XSD <-> Java type converter
*
* @author Christohe DENEUX - Linagora
*
*/
public class DatatypeConverter {
/**
* <p>
* Converts the string argument into a date ({@link Date}) value.
*
* @param lexicalXSDDate
* A string containing lexical representation of xsd:date.
* @return A date ({@link Date}) value represented by the string argument.
* @throws IllegalArgumentException
* if string parameter does not conform to lexical value space defined in XML Schema Part 2: Datatypes
* for xsd:date.
*/
public static java.util.Date parseDate(final String lexicalXSDDate) {
final Calendar calendar = javax.xml.bind.DatatypeConverter.parseDate(lexicalXSDDate);
return calendar.getTime();
}
/**
* <p>
* Converts a date ({@link Date}) value into a string.
*
* @param val
* A date ({@link Date}) value
* @return A string containing a lexical representation of xsd:date
* @throws IllegalArgumentException
* if <tt>val</tt> is null.
*/
public static String printDate(final java.util.Date val) {
final Calendar calendar = Calendar.getInstance();
calendar.setTime(val);
return javax.xml.bind.DatatypeConverter.printDate(calendar);
}
/**
* <p>
* Converts the string argument into a time ({@link Date}) value.
*
* @param lexicalXSDTime
* A string containing lexical representation of xsd:time.
* @return A time ({@link Date}) value represented by the string argument.
* @throws IllegalArgumentException
* if string parameter does not conform to lexical value space defined in XML Schema Part 2: Datatypes
* for xsd:time.
*/
public static java.util.Date parseTime(final String lexicalXSDTime) {
final Calendar calendar = javax.xml.bind.DatatypeConverter.parseTime(lexicalXSDTime);
return calendar.getTime();
}
/**
* <p>
* Converts a time ({@link Date}) value into a string.
*
* @param val
* A time ({@link Date}) value
* @return A string containing a lexical representation of xsd:time
* @throws IllegalArgumentException
* if <tt>val</tt> is null.
*/
public static String printTime(final java.util.Date val) {
final Calendar calendar = Calendar.getInstance();
calendar.setTime(val);
return javax.xml.bind.DatatypeConverter.printTime(calendar);
}
/**
* <p>
* Converts the string argument into a date/time ({@link Date}) value.
*
* @param lexicalXSDDateTime
* A string containing lexical representation of xsd:dateTime.
* @return A date/time ({@link Date}) value represented by the string argument.
* @throws IllegalArgumentException
* if string parameter does not conform to lexical value space defined in XML Schema Part 2: Datatypes
* for xsd:date/Time.
*/
public static java.util.Date parseDateTime(final String lexicalXSDDateTime) {
final Calendar calendar = javax.xml.bind.DatatypeConverter.parseDateTime(lexicalXSDDateTime);
return calendar.getTime();
}
/**
* <p>
* Converts a date/time ({@link Date}) value into a string.
*
* @param val
* A date/time ({@link Date}) value
* @return A string containing a lexical representation of xsd:dateTime
* @throws IllegalArgumentException
* if <tt>val</tt> is null.
*/
public static String printDateTime(final java.util.Date val) {
final Calendar calendar = Calendar.getInstance();
calendar.setTime(val);
return javax.xml.bind.DatatypeConverter.printDateTime(calendar);
}
}