Class Json

java.lang.Object
com.restfb.json.Json

public final class Json extends Object
This class serves as the entry point to the minimal-json API.

To parse a given JSON input, use the parse() methods like in this example:

 JsonObject object = Json.parse(string).asObject();
 

To create a JSON data structure to be serialized, use the methods value(), array(), and object(). For example, the following snippet will produce the JSON string {"foo": 23, "bar": true}:

 String string = Json.object().add("foo", 23).add("bar", true).toString();
 

To create a JSON array from a given Java array, you can use one of the array() methods with varargs parameters:

 String[] names = ...
 JsonArray array = Json.array(names);
 
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final JsonValue
    Represents the JSON literal false.
    static final JsonValue
    Represents the JSON literal null.
    static final JsonValue
    Represents the JSON literal true.
  • Method Summary

    Modifier and Type
    Method
    Description
    static JsonArray
    Creates a new empty JsonArray.
    static JsonArray
    array(boolean... values)
    Creates a new JsonArray that contains the JSON representations of the given boolean values.
    static JsonArray
    array(double... values)
    Creates a new JsonArray that contains the JSON representations of the given double values.
    static JsonArray
    array(float... values)
    Creates a new JsonArray that contains the JSON representations of the given float values.
    static JsonArray
    array(int... values)
    Creates a new JsonArray that contains the JSON representations of the given int values.
    static JsonArray
    array(long... values)
    Creates a new JsonArray that contains the JSON representations of the given long values.
    static JsonArray
    array(String... strings)
    Creates a new JsonArray that contains the JSON representations of the given strings.
    static JsonObject
    Creates a new empty JsonObject.
    static JsonValue
    parse(Reader reader)
    Reads the entire input from the given reader and parses it as JSON.
    static JsonValue
    parse(String string)
    Parses the given input string as JSON.
    static JsonValue
    value(boolean value)
    Returns a JsonValue instance that represents the given boolean value.
    static JsonValue
    value(double value)
    Returns a JsonValue instance that represents the given double value.
    static JsonValue
    value(float value)
    Returns a JsonValue instance that represents the given float value.
    static JsonValue
    value(int value)
    Returns a JsonValue instance that represents the given int value.
    static JsonValue
    value(long value)
    Returns a JsonValue instance that represents the given long value.
    static JsonValue
    value(String string)
    Returns a JsonValue instance that represents the given string.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • NULL

      public static final JsonValue NULL
      Represents the JSON literal null.
    • TRUE

      public static final JsonValue TRUE
      Represents the JSON literal true.
    • FALSE

      public static final JsonValue FALSE
      Represents the JSON literal false.
  • Method Details

    • value

      public static JsonValue value(int value)
      Returns a JsonValue instance that represents the given int value.
      Parameters:
      value - the value to get a JSON representation for
      Returns:
      a JSON value that represents the given value
    • value

      public static JsonValue value(long value)
      Returns a JsonValue instance that represents the given long value.
      Parameters:
      value - the value to get a JSON representation for
      Returns:
      a JSON value that represents the given value
    • value

      public static JsonValue value(float value)
      Returns a JsonValue instance that represents the given float value.
      Parameters:
      value - the value to get a JSON representation for
      Returns:
      a JSON value that represents the given value
    • value

      public static JsonValue value(double value)
      Returns a JsonValue instance that represents the given double value.
      Parameters:
      value - the value to get a JSON representation for
      Returns:
      a JSON value that represents the given value
    • value

      public static JsonValue value(String string)
      Returns a JsonValue instance that represents the given string.
      Parameters:
      string - the string to get a JSON representation for
      Returns:
      a JSON value that represents the given string
    • value

      public static JsonValue value(boolean value)
      Returns a JsonValue instance that represents the given boolean value.
      Parameters:
      value - the value to get a JSON representation for
      Returns:
      a JSON value that represents the given value
    • array

      public static JsonArray array()
      Creates a new empty JsonArray. This is equivalent to creating a new JsonArray using the constructor.
      Returns:
      a new empty JSON array
    • array

      public static JsonArray array(int... values)
      Creates a new JsonArray that contains the JSON representations of the given int values.
      Parameters:
      values - the values to be included in the new JSON array
      Returns:
      a new JSON array that contains the given values
    • array

      public static JsonArray array(long... values)
      Creates a new JsonArray that contains the JSON representations of the given long values.
      Parameters:
      values - the values to be included in the new JSON array
      Returns:
      a new JSON array that contains the given values
    • array

      public static JsonArray array(float... values)
      Creates a new JsonArray that contains the JSON representations of the given float values.
      Parameters:
      values - the values to be included in the new JSON array
      Returns:
      a new JSON array that contains the given values
    • array

      public static JsonArray array(double... values)
      Creates a new JsonArray that contains the JSON representations of the given double values.
      Parameters:
      values - the values to be included in the new JSON array
      Returns:
      a new JSON array that contains the given values
    • array

      public static JsonArray array(boolean... values)
      Creates a new JsonArray that contains the JSON representations of the given boolean values.
      Parameters:
      values - the values to be included in the new JSON array
      Returns:
      a new JSON array that contains the given values
    • array

      public static JsonArray array(String... strings)
      Creates a new JsonArray that contains the JSON representations of the given strings.
      Parameters:
      strings - the strings to be included in the new JSON array
      Returns:
      a new JSON array that contains the given strings
    • object

      public static JsonObject object()
      Creates a new empty JsonObject. This is equivalent to creating a new JsonObject using the constructor.
      Returns:
      a new empty JSON object
    • parse

      public static JsonValue parse(String string)
      Parses the given input string as JSON. The input must contain a valid JSON value, optionally padded with whitespace.
      Parameters:
      string - the input string, must be valid JSON
      Returns:
      a value that represents the parsed JSON
      Throws:
      ParseException - if the input is not valid JSON
    • parse

      public static JsonValue parse(Reader reader) throws IOException
      Reads the entire input from the given reader and parses it as JSON. The input must contain a valid JSON value, optionally padded with whitespace.

      Characters are read in chunks into an input buffer. Hence, wrapping a reader in an additional BufferedReader likely won't improve reading performance.

      Parameters:
      reader - the reader to read the JSON value from
      Returns:
      a value that represents the parsed JSON
      Throws:
      IOException - if an I/O error occurs in the reader
      ParseException - if the input is not valid JSON