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()
           
 
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()
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)
                 throws java.io.IOException
Throws:
java.io.IOException

writeField

public void writeField(java.lang.Object object,
                       java.lang.String name)
                throws java.io.IOException
Throws:
java.io.IOException

writeField

public void writeField(java.lang.Object object,
                       java.lang.String name,
                       java.lang.Class elementType)
                throws java.io.IOException
Throws:
java.io.IOException

writeField

public void writeField(java.lang.Object object,
                       java.lang.String fieldName,
                       java.lang.String jsonName)
                throws java.io.IOException
Throws:
java.io.IOException

writeField

public void writeField(java.lang.Object object,
                       java.lang.String fieldName,
                       java.lang.String jsonName,
                       java.lang.Class elementType)
                throws java.io.IOException
Throws:
java.io.IOException

writeValue

public void writeValue(java.lang.String name,
                       java.lang.Object value)
                throws java.io.IOException
Throws:
java.io.IOException

writeValue

public void writeValue(java.lang.String name,
                       java.lang.Object value,
                       java.lang.Class knownType)
                throws java.io.IOException
Throws:
java.io.IOException

writeValue

public void writeValue(java.lang.String name,
                       java.lang.Object value,
                       java.lang.Class knownType,
                       java.lang.Class elementType)
                throws java.io.IOException
Throws:
java.io.IOException

writeValue

public void writeValue(java.lang.Object value)
                throws java.io.IOException
Throws:
java.io.IOException

writeValue

public void writeValue(java.lang.Object value,
                       java.lang.Class knownType)
                throws java.io.IOException
Throws:
java.io.IOException

writeValue

public void writeValue(java.lang.Object value,
                       java.lang.Class knownType,
                       java.lang.Class elementType)
                throws java.io.IOException
Throws:
java.io.IOException

writeObjectStart

public void writeObjectStart(java.lang.String name)
                      throws java.io.IOException
Throws:
java.io.IOException

writeObjectStart

public void writeObjectStart(java.lang.String name,
                             java.lang.Class actualType,
                             java.lang.Class knownType)
                      throws java.io.IOException
Throws:
java.io.IOException

writeObjectStart

public void writeObjectStart()
                      throws java.io.IOException
Throws:
java.io.IOException

writeObjectStart

public void writeObjectStart(java.lang.Class actualType,
                             java.lang.Class knownType)
                      throws java.io.IOException
Throws:
java.io.IOException

writeObjectEnd

public void writeObjectEnd()
                    throws java.io.IOException
Throws:
java.io.IOException

writeArrayStart

public void writeArrayStart(java.lang.String name)
                     throws java.io.IOException
Throws:
java.io.IOException

writeArrayStart

public void writeArrayStart()
                     throws java.io.IOException
Throws:
java.io.IOException

writeArrayEnd

public void writeArrayEnd()
                   throws java.io.IOException
Throws:
java.io.IOException

writeType

public void writeType(java.lang.Class type)
               throws java.io.IOException
Throws:
java.io.IOException

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)