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<?>
closure
protected int
paramCount
protected java.lang.Class<?>
type
-
Constructor Summary
Constructors Modifier Constructor Description protected
ClosureConverter(java.lang.Class<?> type, Closure<?> closure)
-
Method Summary
Modifier and Type Method Description java.lang.Object
convert(java.lang.Object value, java.lang.String key)
Converts a given value.boolean
equals(java.lang.Object o)
Any two Converter instances registered for the same type are considered to be equal.boolean
handles(java.lang.Class<?> type)
Returnstrue
if this converter can handle conversions of the given type.int
hashCode()
java.lang.String
toString()
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)Returnstrue
if this converter can handle conversions of the given type.- Specified by:
handles
in 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:
convert
in 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:
equals
in classjava.lang.Object
- Parameters:
o
- the object with which to compare.- Returns:
true
if this object contains the same class;false
otherwise.
-
hashCode
public int hashCode()- Overrides:
hashCode
in classjava.lang.Object
-
toString
public java.lang.String toString()- Overrides:
toString
in classjava.lang.Object
-