libgdx API

com.badlogic.gdx.utils
Class Json

java.lang.Object
  extended by com.badlogic.gdx.utils.Json

public class Json
extends java.lang.Object

Reads/writes Java objects to/from JSON, automatically.

Author:
Nathan Sweet

Nested Class Summary
static interface Json.Serializable
           
static interface Json.Serializer<T>
           
 
Constructor Summary
Json()
           
Json(JsonWriter.OutputType outputType)
           
 
Method Summary
 void addClassTag(java.lang.String tag, java.lang.Class type)
           
<T> T
fromJson(java.lang.Class<T> type, char[] data, int offset, int length)
           
<T> T
fromJson(java.lang.Class<T> type, java.lang.Class elementType, char[] data, int offset, int length)
           
<T> T
fromJson(java.lang.Class<T> type, java.lang.Class elementType, FileHandle file)
           
<T> T
fromJson(java.lang.Class<T> type, java.lang.Class elementType, java.io.InputStream input)
           
<T> T
fromJson(java.lang.Class<T> type, java.lang.Class elementType, java.io.Reader reader)
           
<T> T
fromJson(java.lang.Class<T> type, java.lang.Class elementType, java.lang.String json)
           
<T> T
fromJson(java.lang.Class<T> type, FileHandle file)
           
<T> T
fromJson(java.lang.Class<T> type, java.io.InputStream input)
           
<T> T
fromJson(java.lang.Class<T> type, java.io.Reader reader)
           
<T> T
fromJson(java.lang.Class<T> type, java.lang.String json)
           
 java.lang.String prettyPrint(java.lang.Object object)
           
 java.lang.String prettyPrint(java.lang.Object object, boolean fieldsOnSameLine)
           
 java.lang.String prettyPrint(java.lang.String json)
           
 java.lang.String prettyPrint(java.lang.String json, boolean fieldsOnSameLine)
           
 void readField(java.lang.Object object, java.lang.String name, java.lang.Class elementType, java.lang.Object jsonData)
           
 void readField(java.lang.Object object, java.lang.String name, java.lang.Object jsonData)
           
 void readField(java.lang.Object object, java.lang.String fieldName, java.lang.String jsonName, java.lang.Class elementType, java.lang.Object jsonData)
           
 void readField(java.lang.Object object, java.lang.String fieldName, java.lang.String jsonName, java.lang.Object jsonData)
           
 void readFields(java.lang.Object object, java.lang.Object jsonData)
           
<T> T
readValue(java.lang.Class<T> type, java.lang.Class elementType, java.lang.Object jsonData)
           
<T> T
readValue(java.lang.Class<T> type, java.lang.Class elementType, T defaultValue, java.lang.Object jsonData)
           
<T> T
readValue(java.lang.Class<T> type, java.lang.Object jsonData)
           
<T> T
readValue(java.lang.String name, java.lang.Class<T> type, java.lang.Class elementType, java.lang.Object jsonData)
           
<T> T
readValue(java.lang.String name, java.lang.Class<T> type, java.lang.Class elementType, T defaultValue, java.lang.Object jsonData)
           
<T> T
readValue(java.lang.String name, java.lang.Class<T> type, java.lang.Object jsonData)
           
<T> T
readValue(java.lang.String name, java.lang.Class<T> type, T defaultValue, java.lang.Object jsonData)
           
 void setElementType(java.lang.Class type, java.lang.String fieldName, java.lang.Class elementType)
           
 void setIgnoreUnknownFields(boolean ignoreUnknownFields)
           
 void setOutputType(JsonWriter.OutputType outputType)
           
<T> void
setSerializer(java.lang.Class<T> type, Json.Serializer<T> serializer)
           
 void setTypeName(java.lang.String typeName)
          Sets the name of the JSON field to store the Java class name or class tag when required to avoid ambiguity during deserialization.
 void setUsePrototypes(boolean usePrototypes)
           
 java.lang.String toJson(java.lang.Object object)
           
 java.lang.String toJson(java.lang.Object object, java.lang.Class knownType)
           
 java.lang.String toJson(java.lang.Object object, java.lang.Class knownType, java.lang.Class elementType)
           
 void toJson(java.lang.Object object, java.lang.Class knownType, java.lang.Class elementType, FileHandle file)
           
 void toJson(java.lang.Object object, java.lang.Class knownType, java.lang.Class elementType, java.io.Writer writer)
           
 void toJson(java.lang.Object object, java.lang.Class knownType, FileHandle file)
           
 void toJson(java.lang.Object object, java.lang.Class knownType, java.io.Writer writer)
           
 void toJson(java.lang.Object object, FileHandle file)
           
 void toJson(java.lang.Object object, java.io.Writer writer)
           
 void writeArrayEnd()
           
 void writeArrayStart()
           
 void writeArrayStart(java.lang.String name)
           
 void writeField(java.lang.Object object, java.lang.String name)
           
 void writeField(java.lang.Object object, java.lang.String name, java.lang.Class elementType)
           
 void writeField(java.lang.Object object, java.lang.String fieldName, java.lang.String jsonName)
           
 void writeField(java.lang.Object object, java.lang.String fieldName, java.lang.String jsonName, java.lang.Class elementType)
           
 void writeFields(java.lang.Object object)
           
 void writeObjectEnd()
           
 void writeObjectStart()
           
 void writeObjectStart(java.lang.Class actualType, java.lang.Class knownType)
           
 void writeObjectStart(java.lang.String name)
           
 void writeObjectStart(java.lang.String name, java.lang.Class actualType, java.lang.Class knownType)
           
 void writeType(java.lang.Class type)
           
 void writeValue(java.lang.Object value)
           
 void writeValue(java.lang.Object value, java.lang.Class knownType)
           
 void writeValue(java.lang.Object value, java.lang.Class knownType, java.lang.Class elementType)
           
 void writeValue(java.lang.String name, java.lang.Object value)
           
 void writeValue(java.lang.String name, java.lang.Object value, java.lang.Class knownType)
           
 void writeValue(java.lang.String name, java.lang.Object value, java.lang.Class knownType, java.lang.Class elementType)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Json

public Json()

Json

public Json(JsonWriter.OutputType outputType)
Method Detail

setIgnoreUnknownFields

public void setIgnoreUnknownFields(boolean ignoreUnknownFields)

setOutputType

public void setOutputType(JsonWriter.OutputType outputType)

addClassTag

public void addClassTag(java.lang.String tag,
                        java.lang.Class type)

setTypeName

public void setTypeName(java.lang.String typeName)
Sets the name of the JSON field to store the Java class name or class tag when required to avoid ambiguity during deserialization. Set to null to never output this information, but be warned that deserialization may fail.


setSerializer

public <T> void setSerializer(java.lang.Class<T> type,
                              Json.Serializer<T> serializer)

setUsePrototypes

public void setUsePrototypes(boolean usePrototypes)

setElementType

public void setElementType(java.lang.Class type,
                           java.lang.String fieldName,
                           java.lang.Class elementType)

toJson

public java.lang.String toJson(java.lang.Object object)

toJson

public java.lang.String toJson(java.lang.Object object,
                               java.lang.Class knownType)

toJson

public java.lang.String toJson(java.lang.Object object,
                               java.lang.Class knownType,
                               java.lang.Class elementType)

toJson

public void toJson(java.lang.Object object,
                   FileHandle file)

toJson

public void toJson(java.lang.Object object,
                   java.lang.Class knownType,
                   FileHandle file)

toJson

public void toJson(java.lang.Object object,
                   java.lang.Class knownType,
                   java.lang.Class elementType,
                   FileHandle file)

toJson

public void toJson(java.lang.Object object,
                   java.io.Writer writer)

toJson

public void toJson(java.lang.Object object,
                   java.lang.Class knownType,
                   java.io.Writer writer)

toJson

public void toJson(java.lang.Object object,
                   java.lang.Class knownType,
                   java.lang.Class elementType,
                   java.io.Writer writer)

writeFields

public void writeFields(java.lang.Object object)

writeField

public void writeField(java.lang.Object object,
                       java.lang.String name)

writeField

public void writeField(java.lang.Object object,
                       java.lang.String name,
                       java.lang.Class elementType)

writeField

public void writeField(java.lang.Object object,
                       java.lang.String fieldName,
                       java.lang.String jsonName)

writeField

public void writeField(java.lang.Object object,
                       java.lang.String fieldName,
                       java.lang.String jsonName,
                       java.lang.Class elementType)

writeValue

public void writeValue(java.lang.String name,
                       java.lang.Object value)

writeValue

public void writeValue(java.lang.String name,
                       java.lang.Object value,
                       java.lang.Class knownType)

writeValue

public void writeValue(java.lang.String name,
                       java.lang.Object value,
                       java.lang.Class knownType,
                       java.lang.Class elementType)

writeValue

public void writeValue(java.lang.Object value)

writeValue

public void writeValue(java.lang.Object value,
                       java.lang.Class knownType)

writeValue

public void writeValue(java.lang.Object value,
                       java.lang.Class knownType,
                       java.lang.Class elementType)

writeObjectStart

public void writeObjectStart(java.lang.String name)

writeObjectStart

public void writeObjectStart(java.lang.String name,
                             java.lang.Class actualType,
                             java.lang.Class knownType)

writeObjectStart

public void writeObjectStart()

writeObjectStart

public void writeObjectStart(java.lang.Class actualType,
                             java.lang.Class knownType)

writeObjectEnd

public void writeObjectEnd()

writeArrayStart

public void writeArrayStart(java.lang.String name)

writeArrayStart

public void writeArrayStart()

writeArrayEnd

public void writeArrayEnd()

writeType

public void writeType(java.lang.Class type)

fromJson

public <T> T fromJson(java.lang.Class<T> type,
                      java.io.Reader reader)

fromJson

public <T> T fromJson(java.lang.Class<T> type,
                      java.lang.Class elementType,
                      java.io.Reader reader)

fromJson

public <T> T fromJson(java.lang.Class<T> type,
                      java.io.InputStream input)

fromJson

public <T> T fromJson(java.lang.Class<T> type,
                      java.lang.Class elementType,
                      java.io.InputStream input)

fromJson

public <T> T fromJson(java.lang.Class<T> type,
                      FileHandle file)

fromJson

public <T> T fromJson(java.lang.Class<T> type,
                      java.lang.Class elementType,
                      FileHandle file)

fromJson

public <T> T fromJson(java.lang.Class<T> type,
                      char[] data,
                      int offset,
                      int length)

fromJson

public <T> T fromJson(java.lang.Class<T> type,
                      java.lang.Class elementType,
                      char[] data,
                      int offset,
                      int length)

fromJson

public <T> T fromJson(java.lang.Class<T> type,
                      java.lang.String json)

fromJson

public <T> T fromJson(java.lang.Class<T> type,
                      java.lang.Class elementType,
                      java.lang.String json)

readField

public void readField(java.lang.Object object,
                      java.lang.String name,
                      java.lang.Object jsonData)

readField

public void readField(java.lang.Object object,
                      java.lang.String name,
                      java.lang.Class elementType,
                      java.lang.Object jsonData)

readField

public void readField(java.lang.Object object,
                      java.lang.String fieldName,
                      java.lang.String jsonName,
                      java.lang.Object jsonData)

readField

public void readField(java.lang.Object object,
                      java.lang.String fieldName,
                      java.lang.String jsonName,
                      java.lang.Class elementType,
                      java.lang.Object jsonData)

readFields

public void readFields(java.lang.Object object,
                       java.lang.Object jsonData)

readValue

public <T> T readValue(java.lang.String name,
                       java.lang.Class<T> type,
                       java.lang.Object jsonData)

readValue

public <T> T readValue(java.lang.String name,
                       java.lang.Class<T> type,
                       T defaultValue,
                       java.lang.Object jsonData)

readValue

public <T> T readValue(java.lang.String name,
                       java.lang.Class<T> type,
                       java.lang.Class elementType,
                       java.lang.Object jsonData)

readValue

public <T> T readValue(java.lang.String name,
                       java.lang.Class<T> type,
                       java.lang.Class elementType,
                       T defaultValue,
                       java.lang.Object jsonData)

readValue

public <T> T readValue(java.lang.Class<T> type,
                       java.lang.Class elementType,
                       T defaultValue,
                       java.lang.Object jsonData)

readValue

public <T> T readValue(java.lang.Class<T> type,
                       java.lang.Object jsonData)

readValue

public <T> T readValue(java.lang.Class<T> type,
                       java.lang.Class elementType,
                       java.lang.Object jsonData)

prettyPrint

public java.lang.String prettyPrint(java.lang.Object object)

prettyPrint

public java.lang.String prettyPrint(java.lang.String json)

prettyPrint

public java.lang.String prettyPrint(java.lang.Object object,
                                    boolean fieldsOnSameLine)

prettyPrint

public java.lang.String prettyPrint(java.lang.String json,
                                    boolean fieldsOnSameLine)

libgdx API

Copyright 2010 Mario Zechner (contact@badlogicgames.com), Nathan Sweet (admin@esotericsoftware.com)