Class JsonUtil

java.lang.Object
io.grpc.internal.JsonUtil

public class JsonUtil extends Object
Helper utility to work with JSON values in Java types. Includes the JSON dialect used by Protocol Buffers.
  • Constructor Details

    • JsonUtil

      public JsonUtil()
  • Method Details

    • getList

      @Nullable public static List<?> getList(Map<String,?> obj, String key)
      Gets a list from an object for the given key. If the key is not present, this returns null. If the value is not a List, throws an exception.
    • getListOfObjects

      @Nullable public static List<Map<String,?>> getListOfObjects(Map<String,?> obj, String key)
      Gets a list from an object for the given key, and verifies all entries are objects. If the key is not present, this returns null. If the value is not a List or an entry is not an object, throws an exception.
    • getListOfStrings

      @Nullable public static List<String> getListOfStrings(Map<String,?> obj, String key)
      Gets a list from an object for the given key, and verifies all entries are strings. If the key is not present, this returns null. If the value is not a List or an entry is not a string, throws an exception.
    • getObject

      @Nullable public static Map<String,?> getObject(Map<String,?> obj, String key)
      Gets an object from an object for the given key. If the key is not present, this returns null. If the value is not a Map, throws an exception.
    • getNumberAsDouble

      @Nullable public static Double getNumberAsDouble(Map<String,?> obj, String key)
      Gets a number from an object for the given key. If the key is not present, this returns null. If the value does not represent a double, throws an exception.
    • getNumberAsFloat

      @Nullable public static Float getNumberAsFloat(Map<String,?> obj, String key)
      Gets a number from an object for the given key. If the key is not present, this returns null. If the value does not represent a float, throws an exception.
    • getNumberAsInteger

      @Nullable public static Integer getNumberAsInteger(Map<String,?> obj, String key)
      Gets a number from an object for the given key, casted to an integer. If the key is not present, this returns null. If the value does not represent an integer, throws an exception.
    • getNumberAsLong

      public static Long getNumberAsLong(Map<String,?> obj, String key)
      Gets a number from an object for the given key, casted to an long. If the key is not present, this returns null. If the value does not represent a long integer, throws an exception.
    • getString

      @Nullable public static String getString(Map<String,?> obj, String key)
      Gets a string from an object for the given key. If the key is not present, this returns null. If the value is not a String, throws an exception.
    • getStringAsDuration

      public static Long getStringAsDuration(Map<String,?> obj, String key)
      Gets a string from an object for the given key, parsed as a duration (defined by protobuf). If the key is not present, this returns null. If the value is not a String or not properly formatted, throws an exception.
    • getBoolean

      @Nullable public static Boolean getBoolean(Map<String,?> obj, String key)
      Gets a boolean from an object for the given key. If the key is not present, this returns null. If the value is not a Boolean, throws an exception.
    • checkObjectList

      public static List<Map<String,?>> checkObjectList(List<?> rawList)
      Casts a list of unchecked JSON values to a list of checked objects in Java type. If the given list contains a value that is not a Map, throws an exception.
    • checkStringList

      public static List<String> checkStringList(List<?> rawList)
      Casts a list of unchecked JSON values to a list of String. If the given list contains a value that is not a String, throws an exception.