QuoteParser

public class QuoteParser extends Parser<QuoteResponse>

Turns a decoded GLOBAL_QUOTE payload into a QuoteResponse.

The quote arrives nested one level down, under a single top-level key, and its own fields are numbered rather than named. The parser reads whatever the first top-level key holds rather than matching that key by name, so an error payload — whose one key holds a message string instead of an object — falls out as a ClassCastException and is turned into an error response.

Constructors

Link copied to clipboard

Functions

Link copied to clipboard
public static N getNumberFromString<N extends Number>(String s, Function<String, N> parser)
Link copied to clipboard
Wraps a parse failure or an API error message in a response.
Link copied to clipboard
public QuoteResponse parse(Map<String, Object> stringObjectMap)
Reads the nested quote block into a response.
Link copied to clipboard
public static Map<String, Object> parseJSON(String responseBody)
Decodes a raw JSON response body into a generic String-keyed map, with the NoneableDouble/NoneableLong adapters registered so numeric-or-"None" fields decode correctly.
public static U parseJSON<U>(String responseBody, Class<U> c)
Decodes a raw JSON response body directly into an instance of c, with the NoneableDouble/NoneableLong adapters registered so numeric-or-"None" fields decode correctly.
Link copied to clipboard
public static List<U> parseJSONList<U>(Object object, Class<U> klass)
Converts an already-decoded JSON value, typically a List produced by parseJSON, into a List of klass instances, with the NoneableDouble/NoneableLong adapters registered so numeric-or-"None" fields decode correctly.
Link copied to clipboard
public static String toJSON(Map<String, Object> data)
Encodes a String-keyed map back into a JSON string, with the NoneableDouble/NoneableLong adapters registered.