kodi
Public Member Functions | Public Attributes | List of all members
JSONRPC::JsonRpcMethod Class Reference

Structure for a published json rpc method. More...

#include <JSONServiceDescription.h>

Inheritance diagram for JSONRPC::JsonRpcMethod:
Inheritance graph
[legend]
Collaboration diagram for JSONRPC::JsonRpcMethod:
Collaboration graph
[legend]

Public Member Functions

bool Parse (const CVariant &value)
 
JSONRPC_STATUS Check (const CVariant &requestParameters, ITransportLayer *transport, IClient *client, bool notification, MethodCall &methodCall, CVariant &outputParameters) const
 

Public Attributes

std::string missingReference
 
std::string name
 Name of the represented method.
 
MethodCall method
 Pointer tot he implementation of the represented method.
 
TransportLayerCapability transportneed = Response
 Definition of the type of request/response.
 
OperationPermission permission = ReadData
 Definition of the permissions needed to execute the method.
 
std::string description
 Description of the method.
 
std::vector< JSONSchemaTypeDefinitionPtr > parameters
 List of accepted parameters.
 
JSONSchemaTypeDefinitionPtr returns
 Definition of the return value.
 

Additional Inherited Members

- Static Protected Member Functions inherited from JSONRPC::CJSONUtils
static void HandleLimits (const CVariant &parameterObject, CVariant &result, int size, int &start, int &end)
 
static bool ParseSorting (const CVariant &parameterObject, SortBy &sortBy, SortOrder &sortOrder, SortAttribute &sortAttributes)
 
static void ParseLimits (const CVariant &parameterObject, int &limitStart, int &limitEnd)
 
static bool ParameterExists (const CVariant &parameterObject, const std::string &key, unsigned int position)
 Checks if the given object contains a parameter. More...
 
static bool IsValueMember (const CVariant &value, const std::string &key)
 Checks if the given object contains a value with the given key. More...
 
static CVariant GetParameter (const CVariant &parameterObject, const std::string &key, unsigned int position)
 Returns the json value of a parameter. More...
 
static CVariant GetParameter (const CVariant &parameterObject, const std::string &key, unsigned int position, const CVariant &fallback)
 Returns the json value of a parameter or the given default value. More...
 
static std::string GetString (const CVariant &value, const char *defaultValue)
 Returns the given json value as a string. More...
 
static TransportLayerCapability StringToTransportLayer (const std::string &transport)
 Returns a TransportLayerCapability value of the given string representation. More...
 
static JSONSchemaType StringToSchemaValueType (const std::string &valueType)
 Returns a JSONSchemaType value for the given string representation. More...
 
static std::string SchemaValueTypeToString (JSONSchemaType valueType)
 Returns a string representation for the given JSONSchemaType. More...
 
static void SchemaValueTypeToJson (JSONSchemaType valueType, CVariant &jsonObject)
 Converts the given json schema type into a json object. More...
 
static const char * ValueTypeToString (CVariant::VariantType valueType)
 
static bool IsParameterType (const CVariant &parameterObject, const char *key, unsigned int position, JSONSchemaType valueType)
 Checks if the parameter with the given name or at the given position is of a certain type. More...
 
static bool IsType (const CVariant &value, JSONSchemaType valueType)
 Checks if the given json value is of the given type. More...
 
static void SetDefaultValue (CVariant &value, JSONSchemaType valueType)
 Sets the value of the given json value to the default value of the given type. More...
 
static bool HasType (JSONSchemaType typeObject, JSONSchemaType type)
 
static bool ParameterNotNull (const CVariant &parameterObject, const std::string &key)
 
static void CopyStringArray (const CVariant &jsonStringArray, std::vector< std::string > &stringArray)
 Copies the values from the jsonStringArray to the stringArray. stringArray is cleared. More...
 
static void SetFromDBDate (const CVariant &jsonDate, CDateTime &date)
 
static void SetFromDBDateTime (const CVariant &jsonDate, CDateTime &date)
 
static bool GetXspFiltering (const std::string &type, const CVariant &filter, std::string &xsp)
 
static void MillisecondsToTimeObject (int time, CVariant &result)
 

Detailed Description

Structure for a published json rpc method.

Represents a published json rpc method and is used to verify an incoming json rpc request against a defined method.


The documentation for this class was generated from the following files: