org.apache.xerces.impl.dv.xs
public abstract class AbstractDateTimeDV extends TypeValidator
Version: $Id: AbstractDateTimeDV.java,v 1.40 2005/07/19 04:32:40 mrglavas Exp $
Field Summary | |
---|---|
protected static int | DAY |
protected DatatypeFactory | factory |
protected static int | MONTH |
protected static int | YEAR |
Method Summary | |
---|---|
protected void | append(StringBuffer message, int value, int nch) |
protected void | append(StringBuffer message, double value) |
int | compare(Object value1, Object value2) |
protected short | compareDates(AbstractDateTimeDV.DateTimeData date1, AbstractDateTimeDV.DateTimeData date2, boolean strict)
Compare algorithm described in dateDime (3.2.7).
|
protected short | compareOrder(AbstractDateTimeDV.DateTimeData date1, AbstractDateTimeDV.DateTimeData date2)
Given normalized values, determines order-relation
between give date/time objects.
|
protected String | dateToString(AbstractDateTimeDV.DateTimeData date) |
protected int | findUTCSign(String buffer, int start, int end)
Return index of UTC char: 'Z', '+', '-'
|
protected int | fQuotient(int a, int b) |
protected int | fQuotient(int temp, int low, int high) |
short | getAllowedFacets() |
protected int | getDate(String buffer, int start, int end, AbstractDateTimeDV.DateTimeData date)
Parses date CCYY-MM-DD
|
protected Duration | getDuration(AbstractDateTimeDV.DateTimeData data) |
protected void | getTime(String buffer, int start, int end, AbstractDateTimeDV.DateTimeData data)
Parses time hh:mm:ss.sss and time zone if any
|
protected void | getTimeZone(String buffer, AbstractDateTimeDV.DateTimeData data, int sign, int end)
Parses time zone: 'Z' or {+,-} followed by hh:mm
|
protected XMLGregorianCalendar | getXMLGregorianCalendar(AbstractDateTimeDV.DateTimeData data) |
protected int | getYearMonth(String buffer, int start, int end, AbstractDateTimeDV.DateTimeData date)
Parses date CCYY-MM
|
protected int | indexOf(String buffer, int start, int end, char ch)
Computes index of given char within StringBuffer
|
boolean | isIdentical(Object value1, Object value2) |
protected boolean | isNextCharUTCSign(String buffer, int start, int end)
Returns true if the character at start is 'Z', '+' or '-'. |
protected int | maxDayInMonthFor(int year, int month)
Given {year,month} computes maximum
number of days for given month
|
protected int | mod(int a, int b, int quotient) |
protected int | modulo(int temp, int low, int high) |
protected void | normalize(AbstractDateTimeDV.DateTimeData date)
If timezone present - normalize dateTime [E Adding durations to dateTimes]
|
protected int | parseInt(String buffer, int start, int end)
Given start and end position, parses string value
|
protected int | parseIntYear(String buffer, int end) |
protected double | parseSecond(String buffer, int start, int end) |
protected void | parseTimeZone(String buffer, int start, int end, AbstractDateTimeDV.DateTimeData date)
Shared code from Date and YearMonth datatypes.
|
protected void | resetDateObj(AbstractDateTimeDV.DateTimeData data)
Resets object representation of date/time
|
protected void | saveUnnormalized(AbstractDateTimeDV.DateTimeData date) |
protected void | validateDateTime(AbstractDateTimeDV.DateTimeData data)
Validates given date/time object accoring to W3C PR Schema
[D.1 ISO 8601 Conventions]
|
Parameters: date1 normalized date representation of the first value date2 normalized date representation of the second value strict
Returns: less, greater, less_equal, greater_equal, equal
Parameters: date1 date/time object date2 date/time object
Returns: 0 if date1 and date2 are equal, a value less than 0 if date1 is less than date2, a value greater than 0 if date1 is greater than date2
Parameters: start end
Returns: index of the UTC character that was found
Parameters: buffer start start position end end position date
Throws: RuntimeException
Parameters: start end data
Throws: RuntimeException
Parameters: data sign
Throws: RuntimeException
Parameters: buffer start start position end end position date
Throws: RuntimeException
Parameters: start end ch character to look for in StringBuffer
Returns: index of ch within StringBuffer
true
if the character at start is 'Z', '+' or '-'.Parameters: year month
Returns: integer containg the number of days in a given month
Parameters: date CCYY-MM-DDThh:mm:ss+03
Returns: CCYY-MM-DDThh:mm:ssZ
Parameters: buffer string to parse start start position end end position
Returns: return integer representation of characters
Parameters: end date
Throws: RuntimeException
Parameters: data date/time object
Parameters: date
Parameters: data