001 package com.thetransactioncompany.jsonrpc2;
002
003
004 /**
005 * Enumeration of the three parameter types in JSON-RPC 2.0 requests and
006 * notifications.
007 *
008 * <ul>
009 * <li>{@link #NO_PARAMS} The method takes no parameters.
010 * <li>{@link #ARRAY} The method takes positional parameters, packed as a
011 * JSON array, e.g. {@code ["val1", "val2", ...]}.
012 * <li>{@link #OBJECT} The method takes named parameters, packed as a JSON
013 * object, e.g. {@code {"param1":"val1", "param2":"val2", ...}}.
014 * </ul>
015 *
016 * <p>The JSON-RPC 2.0 specification and user group forum can be found
017 * <a href="http://groups.google.com/group/json-rpc">here</a>.
018 *
019 * @author Vladimir Dzhuvinov
020 */
021 public enum JSONRPC2ParamsType {
022
023
024 /**
025 * No parameters.
026 */
027 NO_PARAMS,
028
029
030 /**
031 * Positional parameters, packed as a JSON array.
032 */
033 ARRAY,
034
035
036 /**
037 * Named parameters, packed as a JSON object.
038 */
039 OBJECT
040 }