Top Description Inners Fields Constructors Methods
org.h2.util

public final Class DateTimeTemplate

extends Object
Class Inheritance
Static Imports
org.h2.util.DateTimeTemplate.FieldType.AMPM, .DateTimeTemplate.FieldType.DAY_OF_MONTH, .DateTimeTemplate.FieldType.DAY_OF_YEAR, .DateTimeTemplate.FieldType.DELIMITER, .DateTimeTemplate.FieldType.FRACTION, .DateTimeTemplate.FieldType.HOUR12, .DateTimeTemplate.FieldType.HOUR24, .DateTimeTemplate.FieldType.MINUTE, .DateTimeTemplate.FieldType.MONTH, .DateTimeTemplate.FieldType.ROUNDED_YEAR, .DateTimeTemplate.FieldType.SECOND_OF_DAY, .DateTimeTemplate.FieldType.SECOND_OF_MINUTE, .DateTimeTemplate.FieldType.TIME_ZONE_HOUR, .DateTimeTemplate.FieldType.TIME_ZONE_MINUTE, .DateTimeTemplate.FieldType.TIME_ZONE_SECOND, .DateTimeTemplate.FieldType.YEAR, .DateTimeUtils.FRACTIONAL_SECONDS_TABLE, org.h2.util.DateTimeUtils.*, .DateTimeUtils.NANOS_PER_MINUTE, .DateTimeUtils.NANOS_PER_SECOND

Date-time template.

Nested and Inner Type Summary

Modifier and TypeClass and Description
private static class
private static class
public static class
private abstract static class
private static class

Field Summary

Modifier and TypeField and Description
private static final SmallLRUCache<String, DateTimeTemplate>
private final boolean
private final boolean
private final boolean
private final DateTimeTemplate.Part[]

Constructor Summary

AccessConstructor and Description
private
DateTimeTemplate(DateTimeTemplate.Part[] parts, boolean containsDate, boolean containsTime, boolean containsTimeZone)

Method Summary

Modifier and TypeMethod and Description
private static int
checkUsed(int usedFields, int type, String template)

private static long
constructDate(int[] target, int[] yearMonth)

private static int
constructOffset(int[] target)

private static long
constructTime(int[] target)

public String
format(Value value)

public static DateTimeTemplate
of(String template)

public Value
parse(String string, TypeInfo targetType, CastDataProvider provider)

private int[]
parse(String string, int year)

private static DateTimeTemplate
private static int[]
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

CACHEback to summary
private static final SmallLRUCache<String, DateTimeTemplate> CACHE
containsDateback to summary
private final boolean containsDate
containsTimeback to summary
private final boolean containsTime
containsTimeZoneback to summary
private final boolean containsTimeZone
partsback to summary
private final DateTimeTemplate.Part[] parts

Constructor Detail

DateTimeTemplateback to summary
private DateTimeTemplate(DateTimeTemplate.Part[] parts, boolean containsDate, boolean containsTime, boolean containsTimeZone)

Method Detail

checkUsedback to summary
private static int checkUsed(int usedFields, int type, String template)
constructDateback to summary
private static long constructDate(int[] target, int[] yearMonth)
constructOffsetback to summary
private static int constructOffset(int[] target)
constructTimeback to summary
private static long constructTime(int[] target)
formatback to summary
public String format(Value value)
ofback to summary
public static DateTimeTemplate of(String template)
parseback to summary
public Value parse(String string, TypeInfo targetType, CastDataProvider provider)
parseback to summary
private int[] parse(String string, int year)
parseTemplateback to summary
private static DateTimeTemplate parseTemplate(String template)
yearMonthback to summary
private static int[] yearMonth(CastDataProvider provider)
org.h2.util back to summary

private final Class DateTimeTemplate.Delimiter

extends Part
Class Inheritance

Field Summary

Modifier and TypeField and Description
pack-priv static final DateTimeTemplate.Delimiter
pack-priv static final DateTimeTemplate.Delimiter
pack-priv static final DateTimeTemplate.Delimiter
private final char
pack-priv static final DateTimeTemplate.Delimiter
pack-priv static final DateTimeTemplate.Delimiter
pack-priv static final DateTimeTemplate.Delimiter
pack-priv static final DateTimeTemplate.Delimiter
pack-priv static final DateTimeTemplate.Delimiter

Constructor Summary

AccessConstructor and Description
private
Delimiter(char delimiter)

Method Summary

Modifier and TypeMethod and Description
public void
format(StringBuilder builder, long dateValue, long timeNanos, int offsetSeconds)

Implements abstract org.h2.util.DateTimeTemplate.Part.format.

public void
parse(int[] target, DateTimeTemplate.Scanner s, boolean delimited, int year)

Implements abstract org.h2.util.DateTimeTemplate.Part.parse.

pack-priv int

Field Detail

APOSTROPHEback to summary
pack-priv static final DateTimeTemplate.Delimiter APOSTROPHE
COLONback to summary
pack-priv static final DateTimeTemplate.Delimiter COLON
COMMAback to summary
pack-priv static final DateTimeTemplate.Delimiter COMMA
delimiterback to summary
private final char delimiter
MINUS_SIGNback to summary
pack-priv static final DateTimeTemplate.Delimiter MINUS_SIGN
PERIODback to summary
pack-priv static final DateTimeTemplate.Delimiter PERIOD
SEMICOLONback to summary
pack-priv static final DateTimeTemplate.Delimiter SEMICOLON
SOLIDUSback to summary
pack-priv static final DateTimeTemplate.Delimiter SOLIDUS
SPACEback to summary
pack-priv static final DateTimeTemplate.Delimiter SPACE

Constructor Detail

Delimiterback to summary
private Delimiter(char delimiter)

Method Detail

formatback to summary
public void format(StringBuilder builder, long dateValue, long timeNanos, int offsetSeconds)

Implements abstract org.h2.util.DateTimeTemplate.Part.format.

Annotations
@Override
parseback to summary
public void parse(int[] target, DateTimeTemplate.Scanner s, boolean delimited, int year)

Implements abstract org.h2.util.DateTimeTemplate.Part.parse.

Annotations
@Override
typeback to summary
pack-priv int type()

Implements abstract org.h2.util.DateTimeTemplate.Part.type.

Annotations
@Override
org.h2.util back to summary

private final Class DateTimeTemplate.Field

extends Part
Class Inheritance

Field Summary

Modifier and TypeField and Description
pack-priv static final DateTimeTemplate.Field
pack-priv static final DateTimeTemplate.Field
pack-priv static final DateTimeTemplate.Field
private final int
private static final DateTimeTemplate.Field[]
pack-priv static final DateTimeTemplate.Field
pack-priv static final DateTimeTemplate.Field
pack-priv static final DateTimeTemplate.Field
pack-priv static final DateTimeTemplate.Field
pack-priv static final DateTimeTemplate.Field
pack-priv static final DateTimeTemplate.Field
pack-priv static final DateTimeTemplate.Field
pack-priv static final DateTimeTemplate.Field
private final int
pack-priv static final DateTimeTemplate.Field
pack-priv static final DateTimeTemplate.Field
pack-priv static final DateTimeTemplate.Field
pack-priv static final DateTimeTemplate.Field
Y

pack-priv static final DateTimeTemplate.Field
pack-priv static final DateTimeTemplate.Field
pack-priv static final DateTimeTemplate.Field

Constructor Summary

AccessConstructor and Description
pack-priv
Field(int type, int digits)

Method Summary

Modifier and TypeMethod and Description
pack-priv static DateTimeTemplate.Field
ff(int digits)

pack-priv void
format(StringBuilder builder, long dateValue, long timeNanos, int offsetSeconds)

Implements abstract org.h2.util.DateTimeTemplate.Part.format.

private static void
formatLast(StringBuilder builder, int value, int digits)

pack-priv void
parse(int[] target, DateTimeTemplate.Scanner s, boolean delimited, int year)

Implements abstract org.h2.util.DateTimeTemplate.Part.parse.

pack-priv int

Field Detail

AM_PMback to summary
pack-priv static final DateTimeTemplate.Field AM_PM
DDback to summary
pack-priv static final DateTimeTemplate.Field DD
DDDback to summary
pack-priv static final DateTimeTemplate.Field DDD
digitsback to summary
private final int digits
FFback to summary
private static final DateTimeTemplate.Field[] FF
HH12back to summary
pack-priv static final DateTimeTemplate.Field HH12
HH24back to summary
pack-priv static final DateTimeTemplate.Field HH24
MIback to summary
pack-priv static final DateTimeTemplate.Field MI
MMback to summary
pack-priv static final DateTimeTemplate.Field MM
RRback to summary
pack-priv static final DateTimeTemplate.Field RR
RRRRback to summary
pack-priv static final DateTimeTemplate.Field RRRR
SSback to summary
pack-priv static final DateTimeTemplate.Field SS
SSSSSback to summary
pack-priv static final DateTimeTemplate.Field SSSSS
typeback to summary
private final int type
TZHback to summary
pack-priv static final DateTimeTemplate.Field TZH
TZMback to summary
pack-priv static final DateTimeTemplate.Field TZM
TZSback to summary
pack-priv static final DateTimeTemplate.Field TZS
Yback to summary
pack-priv static final DateTimeTemplate.Field Y
YYback to summary
pack-priv static final DateTimeTemplate.Field YY
YYYback to summary
pack-priv static final DateTimeTemplate.Field YYY
YYYYback to summary
pack-priv static final DateTimeTemplate.Field YYYY

Constructor Detail

Fieldback to summary
pack-priv Field(int type, int digits)

Method Detail

ffback to summary
pack-priv static DateTimeTemplate.Field ff(int digits)
formatback to summary
pack-priv void format(StringBuilder builder, long dateValue, long timeNanos, int offsetSeconds)

Implements abstract org.h2.util.DateTimeTemplate.Part.format.

Annotations
@Override
formatLastback to summary
private static void formatLast(StringBuilder builder, int value, int digits)
parseback to summary
pack-priv void parse(int[] target, DateTimeTemplate.Scanner s, boolean delimited, int year)

Implements abstract org.h2.util.DateTimeTemplate.Part.parse.

Annotations
@Override
typeback to summary
pack-priv int type()

Implements abstract org.h2.util.DateTimeTemplate.Part.type.

Annotations
@Override
org.h2.util back to summary

public final Class DateTimeTemplate.FieldType

extends Object
Class Inheritance

Field Summary

Modifier and TypeField and Description
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int

Constructor Summary

AccessConstructor and Description
public

Method Summary

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

AMPMback to summary
pack-priv static final int AMPM
DAY_OF_MONTHback to summary
pack-priv static final int DAY_OF_MONTH
DAY_OF_YEARback to summary
pack-priv static final int DAY_OF_YEAR
DELIMITERback to summary
pack-priv static final int DELIMITER
FRACTIONback to summary
pack-priv static final int FRACTION
HOUR12back to summary
pack-priv static final int HOUR12
HOUR24back to summary
pack-priv static final int HOUR24
MINUTEback to summary
pack-priv static final int MINUTE
MONTHback to summary
pack-priv static final int MONTH
ROUNDED_YEARback to summary
pack-priv static final int ROUNDED_YEAR
SECOND_OF_DAYback to summary
pack-priv static final int SECOND_OF_DAY
SECOND_OF_MINUTEback to summary
pack-priv static final int SECOND_OF_MINUTE
TIME_ZONE_HOURback to summary
pack-priv static final int TIME_ZONE_HOUR
TIME_ZONE_MINUTEback to summary
pack-priv static final int TIME_ZONE_MINUTE
TIME_ZONE_SECONDback to summary
pack-priv static final int TIME_ZONE_SECOND
YEARback to summary
pack-priv static final int YEAR

Constructor Detail

FieldTypeback to summary
public FieldType()
org.h2.util back to summary

private abstract Class DateTimeTemplate.Part

extends Object
Class Inheritance
Known Direct Subclasses
org.h2.util.DateTimeTemplate.Delimiter, org.h2.util.DateTimeTemplate.Field

Constructor Summary

AccessConstructor and Description
pack-priv
Part()

Method Summary

Modifier and TypeMethod and Description
pack-priv abstract void
format(StringBuilder builder, long dateValue, long timeNanos, int offsetSeconds)

pack-priv abstract void
parse(int[] target, DateTimeTemplate.Scanner s, boolean delimited, int year)

pack-priv abstract int
type()

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Constructor Detail

Partback to summary
pack-priv Part()

Method Detail

formatback to summary
pack-priv abstract void format(StringBuilder builder, long dateValue, long timeNanos, int offsetSeconds)
parseback to summary
pack-priv abstract void parse(int[] target, DateTimeTemplate.Scanner s, boolean delimited, int year)
typeback to summary
pack-priv abstract int type()
org.h2.util back to summary

private final Class DateTimeTemplate.Scanner

extends Object
Class Inheritance

Field Summary

Modifier and TypeField and Description
private final int
private int
pack-priv final String

Constructor Summary

AccessConstructor and Description
pack-priv
Scanner(String string)

Method Summary

Modifier and TypeMethod and Description
pack-priv int
pack-priv void
readChar(char c)

pack-priv boolean
readCharIf(char c)

pack-priv int
readNanos(int digits, boolean delimited)

pack-priv int
readPositiveInt(int digits, boolean delimited)

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

lengthback to summary
private final int length
offsetback to summary
private int offset
stringback to summary
pack-priv final String string

Constructor Detail

Scannerback to summary
pack-priv Scanner(String string)

Method Detail

readCharback to summary
pack-priv int readChar()
readCharback to summary
pack-priv void readChar(char c)
readCharIfback to summary
pack-priv boolean readCharIf(char c)
readNanosback to summary
pack-priv int readNanos(int digits, boolean delimited)
readPositiveIntback to summary
pack-priv int readPositiveInt(int digits, boolean delimited)