Class AbstractCalendarParser
- java.lang.Object
-
- com.sun.msv.datatype.xsd.datetime.AbstractCalendarParser
-
- Direct Known Subclasses:
CalendarParser
,PreciseCalendarParser
abstract class AbstractCalendarParser extends java.lang.Object
Parses XML Schema date/time related types into a structure.
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
AbstractCalendarParser(java.lang.String format, java.lang.String value)
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description private static boolean
isDigit(char ch)
void
parse()
protected java.math.BigInteger
parseBigInteger(int minDigits, int maxDigits)
Parses the digits from vidx into aBigInteger
.protected abstract void
parseFractionSeconds()
protected int
parseInt(int minDigits, int maxDigits)
private char
peek()
private char
read()
protected abstract void
setDay(int i)
protected abstract void
setHours(int i)
protected abstract void
setMinutes(int i)
protected abstract void
setMonth(int i)
protected abstract void
setSeconds(int i)
protected abstract void
setTimeZone(java.util.TimeZone tz)
protected abstract void
setYear(int i)
private void
skip(char ch)
protected void
skipDigits()
Skips the extra digits.
-
-
-
Method Detail
-
parse
public void parse() throws java.lang.IllegalArgumentException
- Throws:
java.lang.IllegalArgumentException
-
peek
private char peek() throws java.lang.IllegalArgumentException
- Throws:
java.lang.IllegalArgumentException
-
read
private char read() throws java.lang.IllegalArgumentException
- Throws:
java.lang.IllegalArgumentException
-
skip
private void skip(char ch) throws java.lang.IllegalArgumentException
- Throws:
java.lang.IllegalArgumentException
-
skipDigits
protected final void skipDigits()
Skips the extra digits.
-
parseInt
protected final int parseInt(int minDigits, int maxDigits) throws java.lang.IllegalArgumentException
- Throws:
java.lang.IllegalArgumentException
-
parseBigInteger
protected final java.math.BigInteger parseBigInteger(int minDigits, int maxDigits) throws java.lang.IllegalArgumentException
Parses the digits from vidx into aBigInteger
. Number of digits can be obtained by comparing the difference ofvidx
.- Throws:
java.lang.IllegalArgumentException
-
isDigit
private static boolean isDigit(char ch)
-
parseFractionSeconds
protected abstract void parseFractionSeconds()
-
setTimeZone
protected abstract void setTimeZone(java.util.TimeZone tz)
-
setSeconds
protected abstract void setSeconds(int i)
-
setMinutes
protected abstract void setMinutes(int i)
-
setHours
protected abstract void setHours(int i)
-
setDay
protected abstract void setDay(int i)
-
setMonth
protected abstract void setMonth(int i)
-
setYear
protected abstract void setYear(int i)
-
-