001package 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 * @author Vladimir Dzhuvinov
017 */
018public enum JSONRPC2ParamsType {
019
020
021        /**
022         * No parameters.
023         */
024        NO_PARAMS,
025        
026        
027        /**
028         * Positional parameters, packed as a JSON array.
029         */
030        ARRAY,
031        
032        
033        /**
034         * Named parameters, packed as a JSON object.
035         */
036        OBJECT
037}