Package org.apache.xerces.impl.dv.xs
Class DurationDV
- java.lang.Object
-
- org.apache.xerces.impl.dv.xs.TypeValidator
-
- org.apache.xerces.impl.dv.xs.AbstractDateTimeDV
-
- org.apache.xerces.impl.dv.xs.DurationDV
-
public class DurationDV extends AbstractDateTimeDV
Validator for <duration> datatype (W3C Schema Datatypes)INTERNAL:
- Usage of this class is not supported. It may be altered or removed at any time.
- Version:
- $Id: DurationDV.java 937741 2010-04-25 04:25:46Z mrglavas $
- Author:
- Elena Litani, Gopal Sharma, SUN Microsystem Inc.
-
-
Field Summary
Fields Modifier and Type Field Description static intDAYTIMEDURATION_TYPEstatic intDURATION_TYPEstatic intYEARMONTHDURATION_TYPE-
Fields inherited from class org.apache.xerces.impl.dv.xs.AbstractDateTimeDV
datatypeFactory, DAY, MONTH, YEAR
-
Fields inherited from class org.apache.xerces.impl.dv.xs.TypeValidator
EQUAL, GREATER_THAN, INDETERMINATE, LESS_THAN
-
-
Constructor Summary
Constructors Constructor Description DurationDV()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected shortcompareDates(org.apache.xerces.impl.dv.xs.AbstractDateTimeDV.DateTimeData date1, org.apache.xerces.impl.dv.xs.AbstractDateTimeDV.DateTimeData date2, boolean strict)Compares 2 given durations.protected java.lang.StringdateToString(org.apache.xerces.impl.dv.xs.AbstractDateTimeDV.DateTimeData date)java.lang.ObjectgetActualValue(java.lang.String content, ValidationContext context)protected javax.xml.datatype.DurationgetDuration(org.apache.xerces.impl.dv.xs.AbstractDateTimeDV.DateTimeData date)protected org.apache.xerces.impl.dv.xs.AbstractDateTimeDV.DateTimeDataparse(java.lang.String str, int durationType)Parses, validates and computes normalized version of duration objectprotected doubleparseSecond(java.lang.String buffer, int start, int end)-
Methods inherited from class org.apache.xerces.impl.dv.xs.AbstractDateTimeDV
append, append, append2, compare, compareOrder, findUTCSign, fQuotient, fQuotient, getAllowedFacets, getDate, getFractionalSecondsAsBigDecimal, getTime, getTimeZone, getXMLGregorianCalendar, getYearMonth, indexOf, isIdentical, isNextCharUTCSign, maxDayInMonthFor, mod, modulo, normalize, parseInt, parseIntYear, parseTimeZone, resetDateObj, saveUnnormalized, validateDateTime
-
Methods inherited from class org.apache.xerces.impl.dv.xs.TypeValidator
checkExtraRules, getDataLength, getDigit, getFractionDigits, getTotalDigits, isDigit
-
-
-
-
Field Detail
-
DURATION_TYPE
public static final int DURATION_TYPE
- See Also:
- Constant Field Values
-
YEARMONTHDURATION_TYPE
public static final int YEARMONTHDURATION_TYPE
- See Also:
- Constant Field Values
-
DAYTIMEDURATION_TYPE
public static final int DAYTIMEDURATION_TYPE
- See Also:
- Constant Field Values
-
-
Method Detail
-
getActualValue
public java.lang.Object getActualValue(java.lang.String content, ValidationContext context) throws InvalidDatatypeValueException- Specified by:
getActualValuein classTypeValidator- Throws:
InvalidDatatypeValueException
-
parse
protected org.apache.xerces.impl.dv.xs.AbstractDateTimeDV.DateTimeData parse(java.lang.String str, int durationType) throws SchemaDateTimeExceptionParses, validates and computes normalized version of duration object- Parameters:
str- The lexical representation of duration object PnYn MnDTnH nMnSdurationType-- Returns:
- normalized date representation
- Throws:
SchemaDateTimeException- Invalid lexical representation
-
compareDates
protected short compareDates(org.apache.xerces.impl.dv.xs.AbstractDateTimeDV.DateTimeData date1, org.apache.xerces.impl.dv.xs.AbstractDateTimeDV.DateTimeData date2, boolean strict)Compares 2 given durations. (refer to W3C Schema Datatypes "3.2.6 duration")- Overrides:
compareDatesin classAbstractDateTimeDV- Parameters:
date1- Unnormalized durationdate2- Unnormalized durationstrict- (min/max)Exclusive strict == true ( LESS_THAN ) or ( GREATER_THAN ) (min/max)Inclusive strict == false (LESS_EQUAL) or (GREATER_EQUAL)- Returns:
- INDETERMINATE if the order relationship between date1 and date2 is indeterminate. EQUAL if the order relation between date1 and date2 is EQUAL. If the strict parameter is true, return LESS_THAN if date1 is less than date2 and return GREATER_THAN if date1 is greater than date2. If the strict parameter is false, return LESS_THAN if date1 is less than OR equal to date2 and return GREATER_THAN if date1 is greater than OR equal to date2
-
parseSecond
protected double parseSecond(java.lang.String buffer, int start, int end) throws java.lang.NumberFormatException- Overrides:
parseSecondin classAbstractDateTimeDV- Throws:
java.lang.NumberFormatException
-
dateToString
protected java.lang.String dateToString(org.apache.xerces.impl.dv.xs.AbstractDateTimeDV.DateTimeData date)
- Overrides:
dateToStringin classAbstractDateTimeDV
-
getDuration
protected javax.xml.datatype.Duration getDuration(org.apache.xerces.impl.dv.xs.AbstractDateTimeDV.DateTimeData date)
- Overrides:
getDurationin classAbstractDateTimeDV
-
-