1 22 23 package org.xquark.schema.datatypes; 24 25 import java.text.SimpleDateFormat ; 26 27 import org.apache.xerces.impl.xpath.regex.RegularExpression; 28 29 30 class GDayType extends AbstractDateTimeType { 31 private static final String RCSRevision = "$Revision: 1.1 $"; 32 private static final String RCSName = "$Name: $"; 33 34 private SimpleDateFormat format; 35 private RegularExpression regex; 36 37 GDayType() { 38 super("gDay", PrimitiveType.GDAY); 39 format = new SimpleDateFormat ("---dd"); 40 format.setLenient(false); 41 regex = new RegularExpression("(\\-\\-\\-[0-9]{2})"+TIMEZONE_PATTERN, "X"); 42 } 43 44 protected SimpleDateFormat getDateTimeFormat() { 45 return format; 46 } 47 48 protected RegularExpression getRegularExpression() { 49 return regex; 50 } 51 52 protected boolean isTimeFormat() { 53 return false; 54 } 55 56 protected boolean isDateFormat() { 57 return true; 58 } 59 60 protected DateTime createDateTime(long millis, long tz, boolean tzSpecified) { 61 return new Value(millis, tz, tzSpecified); 62 } 63 64 class Value extends DateTime { 65 66 public Value(long millis, long tz, boolean tzSpecified) { 67 super(millis, tz, tzSpecified); 68 } 69 70 protected boolean checkClass(Object obj) { 71 return obj instanceof Value; 72 } 73 74 public String toString() { 75 return stringValue(this); 76 } 77 } 78 } 79 | Popular Tags |