Class AsyncJSON.Factory
- Enclosing class:
- AsyncJSON
The factory that creates AsyncJSON instances.
The factory can be configured with custom JSON.Convertors,
and with cached strings that will not be allocated if they can
be looked up from the cache.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleanprotected Stringcached(ByteBuffer buffer) Attempts to return a cached string from the buffer bytes.getConvertor(String className) Returns theJSON.Convertorassociated with the given class name, if any.booleanvoidputConvertor(String className, JSON.Convertor convertor) Associates the givenJSON.Convertorto the given class name.removeConvertor(String className) Removes theJSON.Convertorassociated with the given class name.voidsetArrayConverter(Function<List<?>, Object> arrayConverter) Sets the function to convert JSON arrays from their default Java representation, aList<Object>, to another Java data structure such as anObject[].voidsetDetailedParseException(boolean detailedParseException)
-
Constructor Details
-
Factory
public Factory()
-
-
Method Details
-
getArrayConverter
- Returns:
- the function to customize the Java representation of JSON arrays
- See Also:
-
setArrayConverter
Sets the function to convert JSON arrays from their default Java representation, a
List<Object>, to another Java data structure such as anObject[].- Parameters:
arrayConverter- the function to customize the Java representation of JSON arrays- See Also:
-
isDetailedParseException
public boolean isDetailedParseException()- Returns:
- whether a parse failure should report the whole JSON string or just the last chunk
-
setDetailedParseException
public void setDetailedParseException(boolean detailedParseException) - Parameters:
detailedParseException- whether a parse failure should report the whole JSON string or just the last chunk
-
cache
- Parameters:
value- the string to cache- Returns:
- whether the value can be cached
-
cached
Attempts to return a cached string from the buffer bytes.
In case of a cache hit, the string is returned and the buffer position updated.
In case of cache miss,
nullis returned and the buffer position is left unaltered.- Parameters:
buffer- the buffer to lookup the string from- Returns:
- a cached string or
null
-
newAsyncJSON
- Returns:
- a new parser instance
-
putConvertor
Associates the given
JSON.Convertorto the given class name.- Parameters:
className- the domain class name such ascom.acme.Personconvertor- theJSON.Convertorthat convertsMapto domain objects
-
removeConvertor
Removes the
JSON.Convertorassociated with the given class name.- Parameters:
className- the class name associated with theJSON.Convertor- Returns:
- the
JSON.Convertorassociated with the class name, ornull
-
getConvertor
Returns the
JSON.Convertorassociated with the given class name, if any.- Parameters:
className- the class name associated with theJSON.Convertor- Returns:
- the
JSON.Convertorassociated with the class name, ornull
-