org.infinispan.schematic.internal.document
Class JsonReader.DateValueMatcher
java.lang.Object
org.infinispan.schematic.internal.document.JsonReader.SimpleValueMatcher
org.infinispan.schematic.internal.document.JsonReader.DateValueMatcher
- All Implemented Interfaces:
- JsonReader.ValueMatcher
- Enclosing class:
- JsonReader
@NotThreadSafe
public static class JsonReader.DateValueMatcher
- extends JsonReader.SimpleValueMatcher
The component that parses a tokenized JSON stream and attempts to evaluate literal values such as dates
- Since:
- 5.1
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
JsonReader.DateValueMatcher
public JsonReader.DateValueMatcher(DocumentValueFactory values)
- Create a new matcher that uses the supplied
DocumentValueFactory
instance.
- Parameters:
values
- the factory for creating value objects; may not be null
parseValue
public Object parseValue(String value)
- Parse the value given by the supplied string into an appropriate value object. This method looks for specific patterns
of Date strings; if no known pattern is found, it just returns the supplied value.
- Specified by:
parseValue
in interface JsonReader.ValueMatcher
- Overrides:
parseValue
in class JsonReader.SimpleValueMatcher
- Parameters:
value
- the string representation of the value
- Returns:
- the value
parseDateFromLiteral
protected Date parseDateFromLiteral(String value)
- Parse the date represented by the supplied value. This method is called by the
parseValue(String)
method. This
method checks the following formats:
- a string literal date of the form
"yyyy-MM-ddTHH:mm:ss"
where T
is a literal character
- a string literal date of the form
"yyyy-MM-ddTHH:mm:ssZ"
where T
and Z
are literal characters
- a string literal date of the form
"yyyy-MM-ddTHH:mm:ssGMT+00:00"
where
T
, and GMT
are literal characters
- a string literal date of the form
"/Date(millisOrIso)/"
- a string literal date of the form
"\/Date(millisOrIso)\/"
Note that this method does not handle the new Date(...)
or Date(...)
representations, as
that's handled elsewhere.
- Parameters:
value
- the string representation of the value; never null and never empty
- Returns:
- the number, or null if the value could not be parsed
evaluateDate
protected Date evaluateDate(String millisOrIso)
Copyright © 2008-2012 JBoss, a division of Red Hat. All Rights Reserved.