Package groovy.json
Class DefaultJsonGenerator.ClosureConverter
java.lang.Object
groovy.json.DefaultJsonGenerator.ClosureConverter
- All Implemented Interfaces:
JsonGenerator.Converter
- Enclosing class:
- DefaultJsonGenerator
protected static class DefaultJsonGenerator.ClosureConverter extends java.lang.Object implements JsonGenerator.Converter
A converter that handles converting a given type using a closure.
- Since:
- 2.5.0
-
Field Summary
Fields Modifier and Type Field Description protected Closure<?>closureprotected intparamCountprotected java.lang.Class<?>type -
Constructor Summary
Constructors Modifier Constructor Description protectedClosureConverter(java.lang.Class<?> type, Closure<?> closure) -
Method Summary
Modifier and Type Method Description java.lang.Objectconvert(java.lang.Object value, java.lang.String key)Converts a given value.booleanequals(java.lang.Object o)Any two Converter instances registered for the same type are considered to be equal.booleanhandles(java.lang.Class<?> type)Returnstrueif this converter can handle conversions of the given type.inthashCode()java.lang.StringtoString()Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Field Details
-
type
protected final java.lang.Class<?> type -
closure
-
paramCount
protected final int paramCount
-
-
Constructor Details
-
ClosureConverter
-
-
Method Details
-
handles
public boolean handles(java.lang.Class<?> type)Returnstrueif this converter can handle conversions of the given type.- Specified by:
handlesin interfaceJsonGenerator.Converter- Parameters:
type- the type of the object to convert- Returns:
- true if this converter can successfully convert values of the given type
-
convert
public java.lang.Object convert(java.lang.Object value, java.lang.String key)Converts a given value.- Specified by:
convertin interfaceJsonGenerator.Converter- Parameters:
value- the object to convertkey- the key name for the value, may benull- Returns:
- the converted object
-
equals
public boolean equals(java.lang.Object o)Any two Converter instances registered for the same type are considered to be equal. This comparison makes managing instances in a Set easier; since there is no chaining of Converters it makes sense to only allow one per type.- Overrides:
equalsin classjava.lang.Object- Parameters:
o- the object with which to compare.- Returns:
trueif this object contains the same class;falseotherwise.
-
hashCode
public int hashCode()- Overrides:
hashCodein classjava.lang.Object
-
toString
public java.lang.String toString()- Overrides:
toStringin classjava.lang.Object
-