From 50b0df6ec521df873ba532cc71586ea4b228430f Mon Sep 17 00:00:00 2001 From: HaseenaSainul Date: Tue, 9 Jan 2024 08:51:46 -0500 Subject: [PATCH 1/6] Proxy/JsonGenerator warning fixes --- CMakeLists.txt | 7 + definitions/CMakeLists.txt | 5 +- interfaces/CMakeLists.txt | 2 +- interfaces/IAVSClient.h | 10 +- interfaces/IAmazonPrime.h | 6 +- interfaces/IApplication.h | 12 +- interfaces/IBluetoothAudio.h | 26 +-- interfaces/IBrowser.h | 55 ++++--- interfaces/ICryptography.h | 20 +-- interfaces/ICustomerCareOperations.h | 2 +- interfaces/IDictionary.h | 15 +- interfaces/IDisplayInfo.h | 47 +++--- interfaces/IDolby.h | 15 +- interfaces/ILanguageTag.h | 6 +- interfaces/IMath.h | 8 +- interfaces/IMessageControl.h | 10 +- interfaces/INetworkControl.h | 19 ++- interfaces/INetworkTools.h | 18 +-- interfaces/IOCDM.h | 10 +- interfaces/IPackageManager.h | 178 +++++++++++++++------ interfaces/IPlayerInfo.h | 6 +- interfaces/IScriptEngine.h | 7 +- interfaces/ITextToSpeech.h | 53 +++--- interfaces/ITimeZone.h | 5 +- interfaces/IValuePoint.h | 22 ++- interfaces/IVolumeControl.h | 10 +- interfaces/IWatchDog.h | 6 +- interfaces/IWifiControl.h | 36 +++-- interfaces/IZigWave.h | 11 +- jsonrpc/BluetoothControl.json | 3 +- jsonrpc/BluetoothRemoteControl.json | 3 +- jsonrpc/Browser.json | 1 + jsonrpc/Butler.json | 46 ++---- jsonrpc/Cobalt.json | 1 + jsonrpc/Compositor.json | 3 +- jsonrpc/Containers.json | 3 +- jsonrpc/DHCPServer.json | 1 + jsonrpc/DIALServer.json | 1 + jsonrpc/DTV.json | 230 ++++++++++++++------------- jsonrpc/DeviceIdentification.json | 1 + jsonrpc/DeviceInfo.json | 79 ++++----- jsonrpc/DisplayInfo.json | 1 + jsonrpc/FirmwareControl.json | 1 + jsonrpc/IOConnector.json | 3 +- jsonrpc/IOControl.json | 3 +- jsonrpc/InputSwitch.json | 1 + jsonrpc/LISA.json | 6 +- jsonrpc/LocationSync.json | 3 +- jsonrpc/Messenger.json | 7 +- jsonrpc/Monitor.json | 7 +- jsonrpc/Netflix.json | 1 + jsonrpc/OCDM.json | 2 + jsonrpc/Packager.json | 5 +- jsonrpc/PerformanceMonitor.json | 7 + jsonrpc/PlayerInfo.json | 31 +--- jsonrpc/Power.json | 1 + jsonrpc/Provisioning.json | 1 + jsonrpc/RemoteControl.json | 1 + jsonrpc/SecureShellServer.json | 7 +- jsonrpc/SecurityAgent.json | 1 + jsonrpc/Spark.json | 1 + jsonrpc/StateControl.json | 1 + jsonrpc/Streamer.json | 1 + jsonrpc/SubsystemControl.json | 1 + jsonrpc/SystemCommands.json | 1 + jsonrpc/TestController.json | 1 + jsonrpc/TestUtility.json | 99 +++++------- jsonrpc/TimeSync.json | 1 + jsonrpc/TraceControl.json | 3 + jsonrpc/WebKitBrowser.json | 1 + 70 files changed, 648 insertions(+), 550 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 3addeb79..85139155 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -24,6 +24,13 @@ find_package(WPEFramework) set(INTERFACES_PATTERNS "I*.h" CACHE STRING "Patterns matching files for which stubs should be generated") set(JSONRPC_PATTERNS "*.json" CACHE STRING "Patterns matching files for which json stubs should be generated") +file(GLOB EXCLUDED_FILES + "${CMAKE_SOURCE_DIR}/interfaces/ICommand.h" + "${CMAKE_SOURCE_DIR}/interfaces/ICompositionBuffer.h" + "${CMAKE_SOURCE_DIR}/interfaces/IDRM.h" + "${CMAKE_SOURCE_DIR}/interfaces/IExternalBase.h" + ) + if(ENABLE_STRICT_COMPILER_SETTINGS) if(CMAKE_CXX_COMPILER_ID MATCHES "Clang") message(FATAL_ERROR "Compiling with Clang") diff --git a/definitions/CMakeLists.txt b/definitions/CMakeLists.txt index adacc7bd..51a0a415 100644 --- a/definitions/CMakeLists.txt +++ b/definitions/CMakeLists.txt @@ -31,12 +31,13 @@ find_package(${NAMESPACE}PrivilegedRequest QUIET) set(Target ${NAMESPACE}${PROJECT_NAME}) separate_arguments(JSONRPC_PATTERNS) -list(TRANSFORM JSONRPC_PATTERNS PREPEND "${CMAKE_CURRENT_SOURCE_DIR}/../jsonrpc/") +list(TRANSFORM JSONRPC_PATTERNS PREPEND "${CMAKE_SOURCE_DIR}/jsonrpc/") file(GLOB JSON_FILE ${JSONRPC_PATTERNS}) separate_arguments(INTERFACES_PATTERNS) -list(TRANSFORM INTERFACES_PATTERNS PREPEND "${CMAKE_CURRENT_SOURCE_DIR}/../interfaces/") +list(TRANSFORM INTERFACES_PATTERNS PREPEND "${CMAKE_SOURCE_DIR}/interfaces/") file(GLOB INTERFACE_FILE ${INTERFACES_PATTERNS}) +list(REMOVE_ITEM INTERFACE_FILE ${EXCLUDED_FILES}) set(PUBLIC_HEADERS "definitions.h" "ValuePoint.h") diff --git a/interfaces/CMakeLists.txt b/interfaces/CMakeLists.txt index 055064ef..3a89e183 100644 --- a/interfaces/CMakeLists.txt +++ b/interfaces/CMakeLists.txt @@ -36,7 +36,7 @@ endif() separate_arguments(INTERFACES_PATTERNS) file(GLOB INTERFACES_HEADERS ${INTERFACES_PATTERNS}) - +list(REMOVE_ITEM INTERFACES_HEADERS ${EXCLUDED_FILES}) ProxyStubGenerator(INPUT "${INTERFACES_HEADERS}" OUTDIR "${CMAKE_CURRENT_BINARY_DIR}/generated" INCLUDE_PATH ${GENERATOR_SEARCH_PATH}) file(GLOB JSON_HEADERS json/*.h) diff --git a/interfaces/IAVSClient.h b/interfaces/IAVSClient.h index 865c4951..992cd346 100644 --- a/interfaces/IAVSClient.h +++ b/interfaces/IAVSClient.h @@ -23,7 +23,7 @@ namespace WPEFramework { namespace Exchange { - // @json @uncompliant:collapsed + // @json 1.0.0 @uncompliant:collapsed struct EXTERNAL IAVSController : virtual public Core::IUnknown { enum { ID = ID_AVSCONTROLLER }; @@ -39,8 +39,8 @@ namespace Exchange { SPEAKING }; - /// @brief notifies about dialogue state changes - /// @param state The new state (e.g. SPEAKING) + /// @brief Notifies about dialogue state changes + /// @param state: The new state (e.g. SPEAKING) virtual void DialogueStateChange(const dialoguestate state) = 0; }; @@ -48,12 +48,12 @@ namespace Exchange { virtual void Unregister(const INotification* sink) = 0; /// @brief Mutes the audio output of AVS - /// @param mute Mute or umute (e.g. true) + /// @param mute: Mute or umute (e.g. true) /// @retval ERROR_GENERAL when there is a fatal error or authorisation is not possible virtual uint32_t Mute(const bool muted) = 0; /// @brief Starts or stops the voice recording, skipping keyword detection - /// @param start Start or stop voice recording (e.g. true) + /// @param start: Start or stop voice recording (e.g. true) /// @retval ERROR_GENERAL when there is a fatal error or authorisation is not possible virtual uint32_t Record(const bool started) = 0; }; diff --git a/interfaces/IAmazonPrime.h b/interfaces/IAmazonPrime.h index b8b070dc..df24140c 100644 --- a/interfaces/IAmazonPrime.h +++ b/interfaces/IAmazonPrime.h @@ -23,7 +23,7 @@ namespace WPEFramework { namespace Exchange { - // @json @uncompliant:collapsed + // @json 1.0.0 @uncompliant:collapsed struct EXTERNAL IAmazonPrime : virtual public Core::IUnknown { enum { ID = ID_AMAZONPRIME }; @@ -33,7 +33,7 @@ namespace Exchange { enum { ID = ID_AMAZONPRIME_NOTIFICATION }; // @brief Receive a message from the generic message bus - // @param messsage the message that was received. + // @param messsage: The message that was received. virtual void Receive(const string& message) = 0; }; @@ -41,7 +41,7 @@ namespace Exchange { virtual void Unregister(IAmazonPrime::INotification* ignition) = 0; // @brief Send a message over the message bus to ignition - // @param messsage the message to send according the amazon spec found + // @param messsage: The message to send according the amazon spec found // in the parter portal. virtual uint32_t Send(const string& message) = 0; }; diff --git a/interfaces/IApplication.h b/interfaces/IApplication.h index c6818fff..a145a758 100644 --- a/interfaces/IApplication.h +++ b/interfaces/IApplication.h @@ -23,7 +23,7 @@ namespace WPEFramework { namespace Exchange { - // @json @uncompliant:collapsed + // @json 1.0.0 @uncompliant:collapsed struct EXTERNAL IApplication : virtual public Core::IUnknown { enum { ID = ID_APPLICATION }; @@ -37,7 +37,7 @@ namespace Exchange { ~INotification() override = default; /* @brief Application visibility changes */ - /* @param hidden Denotes if application is currently hidden */ + /* @param hidden: Denotes if application is currently hidden */ virtual void VisibilityChange(const bool hidden) = 0; }; @@ -82,17 +82,17 @@ namespace Exchange { virtual void Unregister(INotification* sink) = 0; // @brief Resets application data - // @param type Type of reset to perform + // @param type: Type of reset to perform virtual uint32_t Reset(const resettype type) = 0; // @property // @brief Application-specific identification string - // @param id Identifier string + // @param id: Identifier string virtual uint32_t Identifier(string& id /* @out */) const = 0; // @property // @brief URI of the associated application-specific content - // @param link Content URI (e.g. https://youtube.com) + // @param link: Content URI (e.g. https://youtube.com) virtual uint32_t ContentLink(const string& link) = 0; // @property @@ -107,7 +107,7 @@ namespace Exchange { // @property // @brief Current application user interface language - // @param language Language string as per RFC5646 (e.g. en) + // @param language: Language string as per RFC5646 (e.g. en) virtual uint32_t Language(string& language /* @out */) const = 0; virtual uint32_t Language(const string&) = 0; }; diff --git a/interfaces/IBluetoothAudio.h b/interfaces/IBluetoothAudio.h index 9e8f52bc..423234ec 100644 --- a/interfaces/IBluetoothAudio.h +++ b/interfaces/IBluetoothAudio.h @@ -48,21 +48,21 @@ namespace Exchange { }; struct CodecProperties { - audiocodec Codec /* @brief Audio codec used */ ; - string /* @opaque */ Settings /* @brief Codec-specific audio quality preset, compression profile, etc */ ; + audiocodec Codec /* @brief Audio codec used */; + string /* @opaque */ Settings /* @brief Codec-specific audio quality preset, compression profile, etc */; }; struct DRMProperties { - drmscheme DRM /* @brief Content protection scheme used */ ; - string /* @opaque */ Settings /* @brief DRM-specific content protection level, encoding rules, etc */ ; + drmscheme DRM /* @brief Content protection scheme used */; + string /* @opaque */ Settings /* @brief DRM-specific content protection level, encoding rules, etc */; }; struct StreamProperties { - uint32_t SampleRate /* @brief Sample rate in Hz (e.g. 44100) */ ; - uint32_t BitRate /* @brief Target bitrate in bits per second (eg. 320000) */ ; - uint8_t Channels /* @brief Number of audio channels (e.g. 2) */ ; - uint8_t Resolution /* @brief Sampling resolution in bits per sample (e.g. 16) */ ; - bool IsResampled /* @brief Indicates if the source stream is being resampled by the stack to match sink capabilities */ ; + uint32_t SampleRate /* @brief Sample rate in Hz (e.g. 44100) */; + uint32_t BitRate /* @brief Target bitrate in bits per second (eg. 320000) */; + uint8_t Channels /* @brief Number of audio channels (e.g. 2) */; + uint8_t Resolution /* @brief Sampling resolution in bits per sample (e.g. 16) */; + bool IsResampled /* @brief Indicates if the source stream is being resampled by the stack to match sink capabilities */; }; struct EXTERNAL IStream : virtual public Core::IUnknown { @@ -117,13 +117,14 @@ namespace Exchange { enum { ID = ID_BLUETOOTHAUDIO_SINK_CALLBACK }; // @brief Signals audio sink state change + // @param state: Changed BluetoothAudio State virtual void StateChanged(const IBluetoothAudio::state state) = 0; }; virtual Core::hresult Callback(ICallback* callback) = 0; // @brief Assigns a Bluetooth sink device for audio playback - // @param address Address of the bluetooth device to assign + // @param address: Address of the bluetooth device to assign // @retval ERROR_BAD_REQUEST Device address value is invalid // @retval ERROR_ALREADY_CONNECTED A sink device is already assigned virtual Core::hresult Assign(const string& address) = 0; @@ -148,7 +149,7 @@ namespace Exchange { // @property // @brief Latency of the audio sink device - // @param latency Audio latency in milliseconds (e.g. 20) + // @param latency: Audio latency in milliseconds (e.g. 20) // @retval ERROR_BAD_REQUEST Latency value is invalid virtual Core::hresult Latency(const int16_t latency) = 0; virtual Core::hresult Latency(int16_t& latency /* @out */) const = 0; @@ -174,7 +175,7 @@ namespace Exchange { virtual Core::hresult DRM(DRMProperties& properties /* @out */) const = 0; // @property - // @brief v of the currently transmitted audio stream + // @brief Properties of the currently transmitted audio stream // @retval ERROR_ILLEGAL_STATE The sink device currently is not connected or not yet configured virtual Core::hresult Stream(StreamProperties& properties /* @out */) const = 0; }; @@ -210,6 +211,7 @@ namespace Exchange { enum { ID = ID_BLUETOOTHAUDIO_SOURCE_CALLBACK }; // @brief Signals audio source state change + // @param state: Changed BluetoothAudio State virtual void StateChanged(const IBluetoothAudio::state state) = 0; }; diff --git a/interfaces/IBrowser.h b/interfaces/IBrowser.h index 01dec61f..9b273909 100644 --- a/interfaces/IBrowser.h +++ b/interfaces/IBrowser.h @@ -53,7 +53,7 @@ namespace Exchange { virtual void Hide(const bool hidden) = 0; }; - // @json @uncompliant:extended // NOTE: extended format is deprecated!! Do not just copy this line! + // @json 1.0.0 @uncompliant:extended // NOTE: extended format is deprecated!! Do not just copy this line! struct EXTERNAL IWebBrowser : virtual public Core::IUnknown { enum { ID = ID_WEB_BROWSER }; @@ -83,10 +83,10 @@ namespace Exchange { virtual void LoadFailed(const string& URL) = 0; // @brief Signals a URL change in the browser // @param URL The URL that has been loaded or requested (e.g. https://example.com) - // @param loaded loaded (true) or not (false) + // @param loaded Loaded (true) or not (false) virtual void URLChange(const string& URL, const bool loaded) = 0; // @brief Signals a visibility change of the browser - // @param hidden hidden (true) or visible (false) + // @param hidden Hidden (true) or Visible (false) virtual void VisibilityChange(const bool hidden) = 0; // @brief Notifies that the web page requests to close its window virtual void PageClosure() = 0; @@ -99,19 +99,19 @@ namespace Exchange { // @property // @brief Page loaded in the browser - // @param url Loaded URL (e.g. https://example.com) + // @param url: Loaded URL (e.g. https://example.com) virtual uint32_t URL(string& url /* @out */) const = 0; virtual uint32_t URL(const string& url) = 0; // @property // @brief Browser window visibility state - // @param visible Visiblity state (e.g. ) + // @param visible: Visiblity state (e.g. ) virtual uint32_t Visibility(VisibilityType& visible /* @out */) const = 0; virtual uint32_t Visibility(const VisibilityType visible) = 0; // @property // @brief Current framerate the browser is rendering at - // @param fps Current FPS + // @param fps: Current FPS virtual uint32_t FPS(uint8_t& fps /* @out */) const = 0; /* @json:omit */ @@ -121,37 +121,37 @@ namespace Exchange { // @property // @brief UserAgent string used by the browser - // @param useragent UserAgent value (e.g. Mozilla/5.0 (Linux; x86_64 GNU/Linux) AppleWebKit/601.1 (KHTML, like Gecko) Version/8.0 Safari/601.1 WP) + // @param useragent: UserAgent value (e.g. Mozilla/5.0 (Linux; x86_64 GNU/Linux) AppleWebKit/601.1 (KHTML, like Gecko) Version/8.0 Safari/601.1 WP) virtual uint32_t UserAgent(string& useragent /* @out */) const = 0; virtual uint32_t UserAgent(const string& useragent) = 0; // @property // @brief Controls the local storage availability - // @param state enabled or disabled + // @param state: Enabled or Disabled virtual uint32_t LocalStorageEnabled(bool& enabled /* @out */) const = 0; virtual uint32_t LocalStorageEnabled(const bool enabled) = 0; // @property // @brief HTTP cookies accept policy - // @param policy HTTP Cookie Accept Policy Type (e.g. always) + // @param policy: HTTP Cookie Accept Policy Type (e.g. always) virtual uint32_t HTTPCookieAcceptPolicy(HTTPCookieAcceptPolicyType& policy /* @out */) const = 0; virtual uint32_t HTTPCookieAcceptPolicy(const HTTPCookieAcceptPolicyType policy) = 0; // @property // @brief Response for legacy $badger. - // @param payload base64 encoded JSON string response to be delivered to $badger.callback + // @param payload: Base64 encoded JSON string response to be delivered to $badger.callback virtual uint32_t BridgeReply(const string& payload) = 0; // @property // @brief Send legacy $badger event. - // @param payload base64 encoded JSON string response to be delivered to window.$badger.event + // @param payload: Base64 encoded JSON string response to be delivered to window.$badger.event virtual uint32_t BridgeEvent(const string& payload) = 0; // @brief Initiate garbage collection virtual uint32_t CollectGarbage() = 0; }; - // @json @uncompliant:extended + // @json 1.0.0 @uncompliant:extended struct EXTERNAL IBrowserResources : virtual public Core::IUnknown { enum { ID = ID_BROWSER_RESOURCES }; @@ -160,7 +160,7 @@ namespace Exchange { // @property // @brief Headers to send on all requests that the browser makes - // @param header Header Name + // @param header: Header Name // @json:omit virtual uint32_t Headers(IStringIterator*& header /* @out */) const = 0; // @json:omit @@ -168,64 +168,65 @@ namespace Exchange { // @property // @brief User scripts used by the browser - // @param uris JSON array containing URIs pointing to user scripts, supported protocols: file:// + // @param uris: JSON array containing URIs pointing to user scripts, supported protocols: file:// virtual uint32_t UserScripts(IStringIterator*& uris /* @out */) const = 0; virtual uint32_t UserScripts(IStringIterator* const uris) = 0; // @property // @brief User style sheets used by the browser - // @param uris JSON array containing URIs pointing to user style sheets, supported protocols: file:// + // @param uris: JSON array containing URIs pointing to user style sheets, supported protocols: file:// virtual uint32_t UserStyleSheets(IStringIterator*& uris /* @out */) const = 0; virtual uint32_t UserStyleSheets(IStringIterator* const uris) = 0; }; - // @json @uncompliant:extended + // @json 1.0.0 @uncompliant:extended struct EXTERNAL IBrowserSecurity : virtual public Core::IUnknown { enum { ID = ID_BROWSER_SECURITY }; // @property // @brief Security profile for secure connections - // @param profile Security profile for secure connections (e.g. compatible) + // @param profile: Security profile for secure connections (e.g. compatible) virtual uint32_t SecurityProfile(string& profile /* @out */) const = 0; virtual uint32_t SecurityProfile(const string& profile) = 0; enum MixedContentPolicyType : uint8_t { ALLOWED = 0 /* @text:allowed */, - BLOCKED = 1 /* @text:blocked */ + BLOCKED = 1 /* @text:blocked */ }; // @property // @brief Mixed content policy - // @param policy Mixed content policy type + // @param policy: Mixed content policy type virtual uint32_t MixedContentPolicy(MixedContentPolicyType& policy /* @out */) const = 0; virtual uint32_t MixedContentPolicy(const MixedContentPolicyType policy) = 0; }; - /* @json @uncompliant:extended */ + /* @json 1.0.0 @uncompliant:extended */ struct EXTERNAL IBrowserScripting : virtual public Core::IUnknown { enum { ID = ID_BROWSER_SCRIPTING }; // @brief Run javascript in main frame. - // @param script Utf8 encoded JS code string. + // @param script: Utf8 encoded JS code string. virtual uint32_t RunJavaScript(const string& script) = 0; // @brief Add user script to be executed at document start. - // @param script Utf8 encoded JS code string. + // @param script: Utf8 encoded JS code string. + // @param topFrameOnly: Enable only top frame virtual uint32_t AddUserScript(const string& script, const bool topFrameOnly) = 0; // @brief Remove all user scripts. virtual uint32_t RemoveAllUserScripts() = 0; }; - /* @json @uncompliant:extended */ + /* @json 1.0.0 @uncompliant:extended */ struct EXTERNAL IBrowserCookieJar : virtual public Core::IUnknown { enum { ID = ID_BROWSER_COOKIEJAR }; struct Config { - uint32_t version; /* Version of payload format */ - uint32_t checksum; /* The checksum of the string used for payload creation */ - string payload; /* Base64 string representation of compressed and encrypted cookies */ + uint32_t version /* @brief Version of payload format */; + uint32_t checksum /* @brief The checksum of the string used for payload creation */; + string payload /* @brief Base64 string representation of compressed and encrypted cookies */; }; /* @event */ @@ -240,6 +241,8 @@ namespace Exchange { virtual void Unregister(INotification* sink) = 0; // @property + // @brief Get/Set CookieJar config details + // @param cookieJarInfo: Config info CookieJar virtual uint32_t CookieJar(Config& cookieJarInfo /* @out */) const = 0; virtual uint32_t CookieJar(const Config& cookieJarInfo) = 0; }; diff --git a/interfaces/ICryptography.h b/interfaces/ICryptography.h index b411b4bd..02aa108d 100644 --- a/interfaces/ICryptography.h +++ b/interfaces/ICryptography.h @@ -54,7 +54,7 @@ namespace Exchange { enum { ID = ID_CRYPTOGRAPHY_RANDOM }; // Generates an array of cryptographically strong random bytes - virtual uint16_t Generate(const uint16_t length, uint8_t data[] /* @out @maxlength:length */) const = 0; + virtual uint16_t Generate(const uint16_t length, uint8_t data[] /* @out @length:length */) const = 0; }; struct EXTERNAL IHash : virtual public Core::IUnknown { @@ -62,10 +62,10 @@ namespace Exchange { enum { ID = ID_CRYPTOGRAPHY_HASH }; // Ingest data into the hash calculator (multiple calls possible) - virtual uint32_t Ingest(const uint32_t length, const uint8_t data[] /* @in @length:length */) = 0; + virtual uint32_t Ingest(const uint32_t length /* @restrict:4M-1 */, const uint8_t data[] /* @in @length:length */) = 0; // Calculate the hash from all ingested data - virtual uint8_t Calculate(const uint8_t maxLength, uint8_t data[] /* @out @maxlength:maxLength */) = 0; + virtual uint8_t Calculate(const uint8_t maxLength, uint8_t data[] /* @out @length:maxLength */) = 0; }; struct EXTERNAL ICipher : virtual public Core::IUnknown { @@ -78,13 +78,13 @@ namespace Exchange { // Encrypt data virtual int32_t Encrypt(const uint8_t ivLength, const uint8_t iv[] /* @in @length:ivLength */, - const uint32_t inputLength, const uint8_t input[] /* @in @length:inputLength */, - const uint32_t maxOutputLength, uint8_t output[] /* @out @maxlength:maxOutputLength */) const = 0; + const uint32_t inputLength /* @restrict:4M-1 */, const uint8_t input[] /* @in @length:inputLength */, + const uint32_t maxOutputLength, uint8_t output[] /* @out @length:maxOutputLength */) const = 0; // Decrypt data virtual int32_t Decrypt(const uint8_t ivLength, const uint8_t iv[] /* @in @length:ivLength */, - const uint32_t inputLength, const uint8_t input[] /* @in @length:inputLength */, - const uint32_t maxOutputLength, uint8_t output[] /* @out @maxlength:maxOutputLength */) const = 0; + const uint32_t inputLength /* @restrict:4M-1 */, const uint8_t input[] /* @in @length:inputLength */, + const uint32_t maxOutputLength, uint8_t output[] /* @out @length:maxOutputLength */) const = 0; }; struct EXTERNAL IDiffieHellman : virtual public Core::IUnknown { @@ -103,7 +103,7 @@ namespace Exchange { enum { ID = ID_CRYPTOGRAPHY_PERSISTENT }; - enum keytype { + enum keytype : uint8_t { AES128, AES256, HMAC128, @@ -140,13 +140,13 @@ namespace Exchange { virtual uint32_t Import(const uint16_t length, const uint8_t blob[] /* @in @length:length */) = 0; // Export unencrypted data blob out of the vault (returns blob ID), only public blobs are exportable - virtual uint16_t Export(const uint32_t id, const uint16_t maxLength, uint8_t blob[] /* @out @maxlength:maxLength */) const = 0; + virtual uint16_t Export(const uint32_t id, const uint16_t maxLength, uint8_t blob[] /* @out @length:maxLength */) const = 0; // Set encrypted data blob in the vault (returns blob ID) virtual uint32_t Set(const uint16_t length, const uint8_t blob[] /* @in @length:length */) = 0; // Get encrypted data blob out of the vault (data identified by ID, returns size of the retrieved data) - virtual uint16_t Get(const uint32_t id, const uint16_t maxLength, uint8_t blob[] /* @out @maxlength:maxLength */) const = 0; + virtual uint16_t Get(const uint32_t id, const uint16_t maxLength, uint8_t blob[] /* @out @length:maxLength */) const = 0; // Generates a random data blob of specified length in the vault (returns blob ID) virtual uint32_t Generate(const uint16_t length) = 0; diff --git a/interfaces/ICustomerCareOperations.h b/interfaces/ICustomerCareOperations.h index 5dfb507c..1471140a 100644 --- a/interfaces/ICustomerCareOperations.h +++ b/interfaces/ICustomerCareOperations.h @@ -23,7 +23,7 @@ namespace WPEFramework { namespace Exchange { - // @json + // @json 1.0.0 struct EXTERNAL ICustomerCareOperations : virtual public Core::IUnknown { enum { ID = ID_CUSTOMER_CARE_OPERATIONS }; diff --git a/interfaces/IDictionary.h b/interfaces/IDictionary.h index 73fe30df..15ef9985 100644 --- a/interfaces/IDictionary.h +++ b/interfaces/IDictionary.h @@ -23,8 +23,6 @@ namespace WPEFramework { namespace Exchange { - // This interface gives direct access to a Browser to change - // Browser specific properties like displayed URL. /* @json 1.0.0 */ struct EXTERNAL IDictionary : virtual public Core::IUnknown { enum { ID = ID_DICTIONARY }; @@ -35,7 +33,10 @@ namespace Exchange { ~INotification() override = default; - // Signal changes on the subscribed namespace.. + // @brief Changes on the subscribed namespace.. + // @param nameSpace: NameSpace to be used + // @param key: Key to be used + // @param value: Value of the key virtual void Modified(const string& nameSpace, const string& key, const string& value) = 0; }; @@ -59,8 +60,14 @@ namespace Exchange { virtual void Register(const string& nameSpace, struct IDictionary::INotification* sink) = 0; virtual void Unregister(const string& nameSpace, struct IDictionary::INotification* sink) = 0; - // Getters and Setters for the dictionary. + // @brief Getters for the dictionary. + // @param nameSpace: NameSpace to be used + // @param key: Key to be used virtual Core::hresult Get(const string& nameSpace, const string& key, string& value /* @out */) const = 0; + // @brief Setters for the dictionary. + // @param nameSpace: NameSpace to be used + // @param key: Key to be used + // @param value: Value to be set virtual Core::hresult Set(const string& nameSpace, const string& key, const string& value) = 0; // @json:omit diff --git a/interfaces/IDisplayInfo.h b/interfaces/IDisplayInfo.h index 6d67054f..3ad2f947 100644 --- a/interfaces/IDisplayInfo.h +++ b/interfaces/IDisplayInfo.h @@ -25,7 +25,7 @@ namespace WPEFramework { namespace Exchange { - /* @json */ + /* @json 1.0.0 */ struct EXTERNAL IGraphicsProperties : virtual public Core::IUnknown { enum { ID = ID_GRAPHICS_PROPERTIES }; @@ -40,7 +40,7 @@ namespace Exchange { virtual uint32_t FreeGpuRam(uint64_t& free /* @out */) const = 0; }; - /* @json @uncompliant:extended */ // NOTE: extended format is deprecated!! Do not just copy this line! + /* @json 1.0.0 @uncompliant:extended */ // NOTE: extended format is deprecated!! Do not just copy this line! struct EXTERNAL IConnectionProperties : virtual public Core::IUnknown { enum { ID = ID_CONNECTION_PROPERTIES }; @@ -62,6 +62,8 @@ namespace Exchange { HDCP_CHANGE, }; + // @brief Signal changes on the display update.. + // @param event: Source of this event virtual void Updated(const Source event) = 0; }; @@ -70,55 +72,56 @@ namespace Exchange { // @property // @brief Current audio passthrough status on HDMI - // @param passthru: enabled/disabled + // @param passthru: Enabled/Disabled virtual uint32_t IsAudioPassthrough (bool& passthru /* @out */) const = 0; // @property // @brief Current HDMI connection status - // @param isconnected: connected/disconnected + // @param isconnected: Connected/Disconnected virtual uint32_t Connected(bool& isconnected /* @out */) const = 0; // @property // @brief Horizontal resolution of TV - // @param width: width of TV in pixels + // @param width: Width of TV in pixels virtual uint32_t Width(uint32_t& width /* @out */) const = 0; // @property // @brief Vertical resolution of TV - // @param height: height of TV in pixels + // @param height: Height of TV in pixels virtual uint32_t Height(uint32_t& height /* @out */) const = 0; // @property // @brief Vertical Frequency - // @param vf: vertical freq + // @param vf: Vertical freq virtual uint32_t VerticalFreq(uint32_t& vf /* @out */) const = 0; // @brief TV's Extended Display Identification Data - // @param edid: edid byte string + // @param length: Length of EDID byte string + // @param data: EDID byte string virtual uint32_t EDID (uint16_t& length /* @inout */, uint8_t data[] /* @out @length:length */) const = 0; // @brief Horizontal size in centimeters - // @param width: width in cm + // @param width: Width in cm virtual uint32_t WidthInCentimeters(uint8_t& width /* @out */) const = 0; // @brief Vertical size in centimeters - // @param width: height in cm + // @param width: Height in cm virtual uint32_t HeightInCentimeters(uint8_t& height /* @out */) const = 0; // @property // @brief HDCP protocol used for transmission - // @param value: protocol + // @param value: Protocol virtual uint32_t HDCPProtection (HDCPProtectionType& value /* @out */) const = 0; virtual uint32_t HDCPProtection (const HDCPProtectionType value) = 0; // @property // @brief Video output port on the STB used for connection to TV - // @param name: video output port name + // @param name: Video output port name virtual uint32_t PortName (string& name /* @out */) const = 0; }; - /* @json */ + /* @json 1.0.0 */ struct EXTERNAL IHDRProperties : virtual public Core::IUnknown { enum { ID = ID_HDR_PROPERTIES }; @@ -135,12 +138,12 @@ namespace Exchange { // @property // @brief HDR formats supported by TV - // @return HDRType: array of HDR formats + // @return HDRType: Array of HDR formats virtual uint32_t TVCapabilities(IHDRIterator*& type /* @out */) const = 0; // @property // @brief HDR formats supported by STB - // @return HDRType: array of HDR formats + // @return HDRType: Array of HDR formats virtual uint32_t STBCapabilities(IHDRIterator*& type /* @out */) const = 0; // @property @@ -149,7 +152,7 @@ namespace Exchange { virtual uint32_t HDRSetting(HDRType& type /* @out */) const = 0; }; - /* @json */ + /* @json 1.0.0 */ struct EXTERNAL IDisplayProperties : virtual public Core::IUnknown { enum { ID = ID_DISPLAY_PROPERTIES }; @@ -217,32 +220,32 @@ namespace Exchange { // @property // @brief Provides access to the display's Colour space (chroma subsampling format) - // @param cs: colour space + // @param cs: Colour space virtual uint32_t ColorSpace(ColourSpaceType& cs /* @out */) const = 0; // @property // @brief Provides access to Frame Rate - // @param rate: frame rate + // @param rate: Frame rate virtual uint32_t FrameRate(FrameRateType& rate /* @out */) const = 0; // @property // @brief Provides access to display's colour Depth - // @param colour: colour depth + // @param colour: Colour depth virtual uint32_t ColourDepth(ColourDepthType& colour /* @out */) const = 0; // @property // @brief Provides access to display's colorimetry - // @param colorimetry: display colorimetry + // @param colorimetry: Display colorimetry virtual uint32_t Colorimetry(IColorimetryIterator*& colorimetry /* @out */) const = 0; // @property // @brief Provides access to display's Qauntization Range - // @param qr: quantization range + // @param qr: Quantization range virtual uint32_t QuantizationRange(QuantizationRangeType& qr /* @out */) const = 0; // @property // @brief Provides access to display's Electro optical transfer function - // @param eotf: display's EOTF + // @param eotf: Display's EOTF virtual uint32_t EOTF(EotfType& eotf /* @out */) const = 0; }; } diff --git a/interfaces/IDolby.h b/interfaces/IDolby.h index 5f29b017..9f824d45 100644 --- a/interfaces/IDolby.h +++ b/interfaces/IDolby.h @@ -26,7 +26,7 @@ namespace Exchange { namespace Dolby { - // @json @uncompliant:extended + // @json 1.0.0 @uncompliant:extended struct EXTERNAL IOutput : virtual public Core::IUnknown { enum { ID = ID_DOLBY_OUTPUT }; @@ -58,7 +58,10 @@ namespace Exchange { enum { ID = ID_DOLBY_OUTPUT_NOTIFICATION }; ~INotification() override = default; + // @brief Signal audio mode change // @text soundmodechanged @alt:deprecated dolby_audiomodechanged + // @param mode: Changed Mode + // @param enabled: Enabled/Disabled virtual void AudioModeChanged(const Dolby::IOutput::SoundModes mode, const bool enabled) = 0; }; @@ -68,25 +71,23 @@ namespace Exchange { // @property // @text dolbyatmossupported @alt:deprecated dolby_atmosmetadata // @brief Atmos capabilities of Sink - // @return supported: atmos supported or unsupported virtual uint32_t AtmosMetadata(bool& supported /* @out */) const = 0; // @property - // @alt:deprecated dolby_soundmode + // @text: dolbysoundmode @alt:deprecated dolby_soundmode // @brief Sound Mode - Mono/Stereo/Surround - // @return mode: sound mode virtual uint32_t SoundMode(Dolby::IOutput::SoundModes& mode /* @out */) const = 0; // @property // @text dolbyatmosoutput @alt:deprecated dolby_enableatmosoutput // @brief Enable Atmos Audio Output - // @param enable: enable/disable + // @param enable: Enable/Disable virtual uint32_t EnableAtmosOutput(const bool enable /* @in */) = 0; // @property - // @text:dolbymode @alt:dolby_mode + // @text:dolbymode @alt:deprecated dolby_mode // @brief Dolby Mode - // @param mode: dolby mode type + // @param mode: Dolby mode type virtual uint32_t Mode(const Dolby::IOutput::Type& mode) = 0; virtual uint32_t Mode(Dolby::IOutput::Type& mode /* @out */) const = 0; diff --git a/interfaces/ILanguageTag.h b/interfaces/ILanguageTag.h index 5997e66e..45d5f330 100644 --- a/interfaces/ILanguageTag.h +++ b/interfaces/ILanguageTag.h @@ -24,7 +24,7 @@ namespace WPEFramework { namespace Exchange { - // @json @uncompliant:collapsed + // @json 1.0.0 @uncompliant:collapsed struct EXTERNAL ILanguageTag : virtual public Core::IUnknown { enum { ID = ID_LANGUAGETAG }; @@ -35,7 +35,7 @@ namespace Exchange { ~INotification() override = default; // @brief Notify that the Language tag has been changed - // @param language new LangauageTag value. + // @param language: New LangauageTag value. virtual void LanguageChanged(const string& language) = 0; }; @@ -47,7 +47,7 @@ namespace Exchange { // @property // @brief Current application user interface language tag - // @param language Language string as per RFC5646 (e.g. en) + // @param language: Language string as per RFC5646 (e.g. en) virtual uint32_t Language(string& language /* @out */) const = 0; virtual uint32_t Language(const string& language) = 0; diff --git a/interfaces/IMath.h b/interfaces/IMath.h index bd1ceb03..5f8acea4 100644 --- a/interfaces/IMath.h +++ b/interfaces/IMath.h @@ -25,14 +25,20 @@ namespace WPEFramework { namespace Exchange { // This is an example to show the workings and how to develope a COMRPC/JSONRPC method/interface - /* @json */ + /* @json 1.0.0 */ struct EXTERNAL IMath : virtual public Core::IUnknown { enum { ID = ID_MATH }; ~IMath() override = default; + // @brief Perform addition on given inputs + // @param A: First input + // @param B: Second input virtual uint32_t Add(const uint16_t A, const uint16_t B, uint16_t& sum /* @out */) const = 0; + // @brief Perform subtraction on given inputs + // @param A: First input + // @param B: Second input virtual uint32_t Sub(const uint16_t A, const uint16_t B, uint16_t& sum /* @out */) const = 0; }; } diff --git a/interfaces/IMessageControl.h b/interfaces/IMessageControl.h index e4d1ef0b..9daae5b9 100644 --- a/interfaces/IMessageControl.h +++ b/interfaces/IMessageControl.h @@ -28,7 +28,7 @@ namespace WPEFramework { namespace Exchange { -// @json +// @json 1.0.0 struct EXTERNAL IMessageControl : virtual public Core::IUnknown { enum { ID = ID_MESSAGE_CONTROL }; @@ -44,10 +44,10 @@ struct EXTERNAL IMessageControl : virtual public Core::IUnknown { using IControlIterator = RPC::IIteratorType; // @brief Enables/disables a message control - // @param type Message type - // @param module Name of the module the message is originating from (e.g. Plugin_BluetoothControl) - // @param category Name of the message category (e.g. Information) - // @param enabled Denotes if control should be enabled (true) or disabled (false) + // @param type: Message type + // @param module: Name of the module the message is originating from (e.g. Plugin_BluetoothControl) + // @param category: Name of the message category (e.g. Information) + // @param enabled: Denotes if control should be enabled (true) or disabled (false) virtual uint32_t Enable(const messagetype type, const string& category, const string& module, const bool enabled) = 0; // @property diff --git a/interfaces/INetworkControl.h b/interfaces/INetworkControl.h index b34596df..6cf9a182 100644 --- a/interfaces/INetworkControl.h +++ b/interfaces/INetworkControl.h @@ -25,7 +25,7 @@ namespace WPEFramework { namespace Exchange { - /* @json */ + /* @json 1.0.0 */ struct EXTERNAL INetworkControl : virtual public Core::IUnknown { enum { ID = ID_NETWORKCONTROL }; @@ -40,10 +40,10 @@ namespace Exchange { }; struct NetworkInfo { - string address; - string defaultGateway; - uint8_t mask; - ModeType mode; + string address /* @brief IP Address */; + string defaultGateway /* @brief Default Gateway */; + uint8_t mask /* @brief Network mask */; + ModeType mode /* @brief Mode of interface activation Dynamic or Static */; }; using INetworkInfoIterator = RPC::IIteratorType; @@ -54,6 +54,8 @@ namespace Exchange { enum { ID = ID_NETWORKCONTROL_NOTIFICATION }; ~INotification() override = default; + // @brief Signal interface update + // @param interfaceName: Name of the interface where an update occured virtual void Update(const string& interfaceName) = 0; }; @@ -73,20 +75,27 @@ namespace Exchange { // @property // @brief Network info of requested interface + // @param networkInfo: Info about requested interface + // @retval ERROR_UNAVAILABLE Failed to set/retrieve network virtual uint32_t Network(const string& interface /* @index */, INetworkInfoIterator*& networkInfo /* @out */) const = 0; virtual uint32_t Network(const string& interface /* @index */, INetworkInfoIterator* const& networkInfo /* @in */) = 0; // @property // @brief DNS list + // @param dns: List of DNS + // @retval ERROR_UNAVAILABLE Failed to set/retrieve DNS virtual uint32_t DNS(IStringIterator*& dns /* @out */) const = 0; virtual uint32_t DNS(IStringIterator* const& dns /* @in */) = 0; // @property // @brief Provides given requested interface is up or not + // @param up: Up/Down requested interface + // @retval ERROR_UNAVAILABLE Failed to set/retrieve UP virtual uint32_t Up(const string& interface /* @index */, bool& up /* @out */) const = 0; virtual uint32_t Up(const string& interface /* @index */, const bool up /* @in */) = 0; // @brief Flush and reload requested interface + // @param interface: Name of the interface to be flushed virtual uint32_t Flush(const string& interface) = 0; }; } diff --git a/interfaces/INetworkTools.h b/interfaces/INetworkTools.h index 7e38d071..530c3674 100644 --- a/interfaces/INetworkTools.h +++ b/interfaces/INetworkTools.h @@ -24,7 +24,7 @@ namespace WPEFramework { namespace Exchange { - // @json + // @json 1.0.0 struct EXTERNAL INetworkTools : virtual public Core::IUnknown { enum { ID = ID_NETWORKTOOLS }; @@ -35,25 +35,23 @@ namespace Exchange { ~ICallback() override = default; // @brief Signals an message from a given host - // @param source is the NodeId of the system that send the metadta presented in the next field. - // @param metadata depending on the tool started, this JSON string will contain additiona information on this notification. + // @param source: The NodeId of the system that send the metadta presented in the next field. + // @param metadata: Depending on the tool started, this JSON string will contain additional information on this notification. virtual void Report (const string& source, const string& metadata) = 0; }; ~INetworkTools() override = default; // @brief Ping the given destination with ICMP packages. - // @param reportOn interface for receiving information back. - // @param The node id of the host we would like to ping (ipv4/ipv6) - // @param Time out, continue to ping for the given duration. - // @param Count maximum number of pings to send. + // @param destination: The node id of the host we would like to ping (ipv4/ipv6) + // @param timeOutInSeconds: Time out, continue to ping for the given duration. + // @param count: Maximum number of pings to send. // @retval ERROR_NONE, ERROR_INPROGRES means an icmp check is already in progress . virtual uint32_t Ping(const string& destination, const uint16_t timeOutInSeconds, const uint16_t count) = 0; // @brief TraceRoute to the given destination with ICMP packages. - // @param reportOn interface for receiving information back. - // @param The node id of the host we would like to ping traceroute (ipv4/ipv6). - // @param Time out, continue to trace for the given duration. + // @param destination: The node id of the host we would like to ping (ipv4/ipv6) + // @param timeOutInSeconds: Time out, continue to ping for the given duration. // @retval ERROR_NONE, ERROR_INPROGRES means an icmp check is already in progress virtual uint32_t TraceRoute(const string& destination, const uint16_t timeOutInSeconds) = 0; diff --git a/interfaces/IOCDM.h b/interfaces/IOCDM.h index a92fc368..5acdc16c 100644 --- a/interfaces/IOCDM.h +++ b/interfaces/IOCDM.h @@ -156,7 +156,7 @@ struct ISessionExt : virtual public Core::IUnknown { uint16_t drmHeaderLength) = 0; - virtual OCDM_RESULT GetChallengeDataExt(uint8_t* challenge /* @inout @length:challengeSize */, + virtual OCDM_RESULT GetChallengeDataExt(uint8_t* challenge /* @inout @length:challengeSize @maxlength:challengeSize */, uint16_t& challengeSize /* @inout */, uint32_t isLDL) = 0; @@ -165,7 +165,7 @@ struct ISessionExt : virtual public Core::IUnknown { virtual OCDM_RESULT StoreLicenseData(const uint8_t licenseData[] /* @in @length:licenseDataSize */, uint16_t licenseDataSize, - uint8_t* secureStopId /* @out @maxlength:16 */) + uint8_t* secureStopId /* @out @length:16 */) = 0; virtual OCDM_RESULT SelectKeyId(const uint8_t keyLength, @@ -225,7 +225,7 @@ struct IAccessorOCDM : virtual public Core::IUnknown { virtual uint32_t ResetSecureStops(const std::string& keySystem) = 0; virtual OCDM_RESULT GetSecureStopIds(const std::string& keySystem, - uint8_t ids[] /* @out @maxlength:idsLength */, uint16_t idsLength, + uint8_t ids[] /* @out @length:idsLength */, uint16_t idsLength, uint32_t& count /* @inout */) = 0; @@ -247,12 +247,12 @@ struct IAccessorOCDM : virtual public Core::IUnknown { virtual OCDM_RESULT DeleteSecureStore(const std::string& keySystem) = 0; virtual OCDM_RESULT GetKeyStoreHash(const std::string& keySystem, - uint8_t keyStoreHash[] /* @out @maxlength:keyStoreHashLength */, + uint8_t keyStoreHash[] /* @out @length:keyStoreHashLength */, uint16_t keyStoreHashLength) = 0; virtual OCDM_RESULT GetSecureStoreHash(const std::string& keySystem, - uint8_t secureStoreHash[] /* @out @maxlength:secureStoreHashLength */, + uint8_t secureStoreHash[] /* @out @length:secureStoreHashLength */, uint16_t secureStoreHashLength) = 0; }; diff --git a/interfaces/IPackageManager.h b/interfaces/IPackageManager.h index 87429d8f..3d91606b 100644 --- a/interfaces/IPackageManager.h +++ b/interfaces/IPackageManager.h @@ -27,14 +27,23 @@ namespace WPEFramework { namespace Exchange { - /* @json */ + /* @json 1.0.0 */ struct EXTERNAL IPackageManager : virtual public Core::IUnknown { using IStringIterator = RPC::IIteratorType; enum { ID = ID_PACKAGEMANAGER }; - /* @brief Download the application bundle. */ + // @brief Download the application bundle. + // @param type: Type of the package + // @param id: Id of the package + // @param version: Version of the package + // @param url: URL used to install package + // @param appName: Application Name + // @param category: Category of the package + // @param handle: Handle to the active installtion + // that can be used to refer to it later. + // e.g. for canceling or progress information virtual uint32_t Install(const string& type, const string& id, const string& version, @@ -43,13 +52,29 @@ namespace Exchange { const string& category, string& handle /* @out */) = 0; - /* @brief Uninstall the application. */ + // @brief Uninstall the application. + // @param type: Type of the package + // @param id: Id of the package + // @param version: Version of the package + // @param uninstallType: Type of uninstall + // @param handle: Handle to the active uninstallation + // that can be used to refer to it later. + // e.g. for canceling or progress information virtual uint32_t Uninstall(const string& type, const string& id, const string& version, const string& uninstallType, string& handle /* @out */) = 0; - /* @brief Download arbitrary application's resource file. */ + + // @brief Download arbitrary application's resource file. + // @param type: Type of the package + // @param id: Id of the package + // @param version: Version of the package + // @param url: URL used to download package + // @param resKey: Resorce Key + // @param handle: Handle to the active download + // that can be used to refer to it later. + // e.g. for canceling or progress information virtual uint32_t Download(const string& type, const string& id, const string& version, @@ -57,7 +82,11 @@ namespace Exchange { const string& url, string& handle /* @out */) = 0; - /* @brief Delete persistent data stored locally. */ + // @brief Delete persistent data stored locally. + // @param type: Type of the package + // @param id: Id of the package + // @param version: Version of the package + // @param resetType: Type of Reset virtual uint32_t Reset(const string& type, const string& id, const string& version, @@ -65,50 +94,68 @@ namespace Exchange { struct EXTERNAL StorageInfo { - struct EXTERNAL StorageDetails - { - string path; - string quotaKB; - string usedKB; - }; - - StorageDetails apps; - StorageDetails persistent; + struct EXTERNAL StorageDetails + { + string path /* @brief Path of Storage */; + string quotaKB /* @brief Total Space allowed in KB */; + string usedKB /* @brief Used Space in KB */; + }; + StorageDetails apps /* @brief Storage details of application */; + StorageDetails persistent /* @brief Storage details of persistent */; }; - /* @brief Information on the storage usage. */ + // @brief Information on the storage usage. + // @param type: Type of the package + // @param id: Id of the package + // @param version: Version of the package + // @param storageinfo: Info about Storage virtual uint32_t GetStorageDetails(const string& type, const string& id, const string& version, StorageInfo& storageinfo /* @out */) const = 0; struct EXTERNAL KeyValue { - string key; - string value; + string key /* @brief Key */; + string value /* @brief Value */; }; using IKeyValueIterator = RPC::IIteratorType; struct MetadataPayload { - string appName; - string type; - string category; - string url; + string appName /* @brief Name of the application */; + string type /* @brief Type of the package */; + string category /* @brief Category of the package */; + string url /* @brief URL used for operation */; }; - /* @brief Set an arbitrary metadata. */ + // @brief Set an arbitrary metadata. + // @param type: Type of the package + // @param id: Id of the package + // @param version: Version of the package + // @param key: Key used to set arbitrary meta data + // @param value: Value of given key virtual uint32_t SetAuxMetadata(const string& type, const string& id, const string& version, const string& key, const string& value) = 0; - /* @brief Clears an arbitrary metadata. */ + // @brief Clears an arbitrary metadata. + // @param type: Type of the package + // @param id: Id of the package + // @param version: Version of the package + // @param key: Key used to clear arbitrary meta data virtual uint32_t ClearAuxMetadata(const string& type, const string& id, const string& version, const string& key) = 0; - /* @brief Get application metadata. */ + // @brief Get application metadata. + // @param type: Type of the package + // @param id: Id of the package + // @param version: Version of the package + // @param metadata: Payload of meta data + // @param resources: Resources + // @param auxMetadata: Arbitrary metadata virtual uint32_t GetMetadata(const string& type, const string& id, const string& version, @@ -116,10 +163,13 @@ namespace Exchange { IPackageManager::IKeyValueIterator*& resources /* @out */, IPackageManager::IKeyValueIterator*& auxMetadata /* @out */) const = 0; - /* @brief Cancel asynchronous request. */ + // @brief Cancel asynchronous request. + // @param handle: Handle of the currently progressing operation (i.e, install/uninstal/download) virtual uint32_t Cancel(const string& handle) = 0; - /* @brief Estimated progress of a request. */ + // @brief Estimated progress of a request. + // @param handle: Handle of the currently progressing operation (i.e, install/uninstal/download) + // @param progress: Indication of installation progress virtual uint32_t GetProgress(const string& handle, uint32_t& progress /* @out */) const = 0; /* @event */ @@ -127,7 +177,14 @@ namespace Exchange { enum {ID = ID_PACKAGEMANAGER_NOTIFICATION}; - /* @brief Completion of asynchronous operation. */ + // @brief Completion of asynchronous operation. + // @param handle: Handle of the currently progressing operation (i.e, install/uninstal/download) + // @param operation: Type of the operation + // @param type: Type of the package + // @param id: Id of the package + // @param version: Version of the package + // @param status: Current status of the operation + // @param details: Details about the operation virtual void OperationStatus(const string& handle, const string& operation, const string& type, const string& id, const string& version, const string& status, const string& details) = 0; }; @@ -136,13 +193,19 @@ namespace Exchange { virtual uint32_t Unregister(IPackageManager::INotification* notification) = 0; struct EXTERNAL PackageKey { - string id; - string version; + string id /* @brief Unique identifier of the package */; + string version /* @brief Version of the package */; }; using IPackageKeyIterator = RPC::IIteratorType; - /* @brief List installed applications. */ + // @brief List installed applications. + // @param type: Type of the package + // @param id: Id of the package + // @param version: Version of the package + // @param appName: Application Name + // @param category: Category of the package + // @param installedIds: Ids of Installed Package virtual uint32_t GetList( const string& type, const string& id, @@ -151,7 +214,16 @@ namespace Exchange { const string& category, IPackageKeyIterator*& installedIds /* @out */) const = 0; - /* @brief Lock the application. Preventing uninstallation. */ + // @brief Lock the application. Preventing uninstallation + // @param type: Type of the package + // @param id: Id of the package + // @param version: Version of the package + // @param reason: Reason to lock the application + // @param owner: Owner used to lock + // @param handle: Handle to the lock + // that can be used to refer to it later. + // e.g. for unlock later + virtual uint32_t Lock(const string& type, const string& id, const string& version, @@ -160,15 +232,20 @@ namespace Exchange { string& handle /* @out */) = 0; - /* @brief Unlock application. */ + // @brief Unlock application. + // @param handle: Handle got during the Lock, it is to be used to Unlock operation virtual uint32_t Unlock(const string& handle) = 0; struct LockInfo { - string reason; - string owner; + string reason /* @brief Reason of Locking */; + string owner /* @brief Owner of Locking */; }; - /* @brief Get lock info. */ + // @brief Get lock info. + // @param type: Type of the package + // @param id: Id of the package + // @param version: Version of the package + // @param result: Info about Lock virtual uint32_t GetLockInfo(const string& type, const string& id, const string& version, @@ -178,20 +255,31 @@ namespace Exchange { struct EXTERNAL IPackageManagerBroker : virtual public Core::IUnknown { - enum { ID = ID_PACKAGEMANAGER_BROKER }; - - virtual uint32_t Offer(IPackageManager* packagemanager) = 0; - virtual uint32_t Revoke(const IPackageManager* packagemanager) = 0; - + enum { ID = ID_PACKAGEMANAGER_BROKER }; + // @brief Offer Package Manager + // @param packagemanager: Package manager instance + virtual uint32_t Offer(IPackageManager* packagemanager) = 0; + // @brief Revoke Package Manager + // @param packagemanager: Package manager instance + virtual uint32_t Revoke(const IPackageManager* packagemanager) = 0; }; struct EXTERNAL IPackageManagerCallback : virtual public Core::IUnknown { - enum { ID = ID_PACKAGEMANAGER_CALLBACK }; - - virtual void OperationStatusUpdate(const string& handle, const string& operation, const string& type, const string& id, - const string& version, const string& status, const string& details) = 0; - + enum { ID = ID_PACKAGEMANAGER_CALLBACK }; + + // @brief Notify Update in requested operation (install/uninstall/download) + // @param handle: Handle of the operation + // @param operation: Type of the operation + // @param type: Type of the package + // @param id: Id of the package + // @param version: Version of the package + // @param status: Current status of the operation + // @param details: Details about the operation + virtual void OperationStatusUpdate(const string& handle, const string& operation, + const string& type, const string& id, + const string& version, const string& status, + const string& details) = 0; }; } diff --git a/interfaces/IPlayerInfo.h b/interfaces/IPlayerInfo.h index 0356cd03..62a3f0cc 100644 --- a/interfaces/IPlayerInfo.h +++ b/interfaces/IPlayerInfo.h @@ -26,7 +26,7 @@ namespace WPEFramework { namespace Exchange { - // @json + // @json 1.0.0 struct EXTERNAL IPlayerProperties : virtual public Core::IUnknown { enum { ID = ID_PLAYER_PROPERTIES }; @@ -108,19 +108,19 @@ namespace Exchange { typedef RPC::IIteratorType IVideoCodecIterator; // @property + // @brief Query Audio Codecs List virtual uint32_t AudioCodecs(IAudioCodecIterator*& codec /* @out */) const = 0; // @property + // @brief Query Video Codecs List virtual uint32_t VideoCodecs(IVideoCodecIterator*& codec /* @out */) const = 0; // @property // @brief Current Video playback resolution - // @param res: resolution virtual uint32_t Resolution(PlaybackResolution& res /* @out */) const = 0; // @property // @brief Checks Loudness Equivalence in platform - // @param ae: enabled/disabled virtual uint32_t IsAudioEquivalenceEnabled(bool& ae /* @out */) const = 0; }; } diff --git a/interfaces/IScriptEngine.h b/interfaces/IScriptEngine.h index 9da191cd..ae346f0c 100644 --- a/interfaces/IScriptEngine.h +++ b/interfaces/IScriptEngine.h @@ -4,7 +4,7 @@ namespace WPEFramework { namespace Exchange { - // @json + // @json 1.0.0 struct EXTERNAL IScriptEngine : virtual public Core::IUnknown { enum { ID = ID_SCRIPT_ENGINE }; @@ -14,7 +14,8 @@ namespace Exchange { ~INotification() override = default; - // Signal changes on the subscribed namespace.. + // @brief Signal changes on the subscribed namespace.. + // @param URL: Loaded URL (e.g. https://example.com) virtual void URLChanged(const string& URL) = 0; }; @@ -25,7 +26,7 @@ namespace Exchange { // @property // @brief Script to be loaded into the engine and to be executed. - // @param url Loaded URL (e.g. https://example.com) + // @param url: Loaded URL (e.g. https://example.com) virtual Core::hresult URL(string& url /* @out */) const = 0; virtual Core::hresult URL(const string& url) = 0; }; diff --git a/interfaces/ITextToSpeech.h b/interfaces/ITextToSpeech.h index d28359e1..8f561992 100644 --- a/interfaces/ITextToSpeech.h +++ b/interfaces/ITextToSpeech.h @@ -42,15 +42,15 @@ namespace Exchange { // Signal changes on the subscribed namespace // @brief Notify TTS enabled/disabled - // @param state enabled/disabled + // @param state: Enabled/Disabled virtual void Enabled(const bool state) = 0; // @brief Notify change in voice used for speaking - // @param voice voice changed + // @param voice: Voice is changed virtual void VoiceChanged(const string voice) = 0; // @brief Notify speechid based on the speech state(eg: start,pause,..etc) - // @param speechid id of the text + // @param speechid: Id of the text virtual void WillSpeak(const uint32_t speechid) = 0; virtual void SpeechStart(const uint32_t speechid) = 0; virtual void SpeechPause(const uint32_t speechid) = 0; @@ -68,54 +68,53 @@ namespace Exchange { // @property // @brief Query the status/enable tts - // @param enable status/enable virtual uint32_t Enable(const bool enable) = 0; virtual uint32_t Enable(bool &enable /* @out */) const = 0; // @brief Set the tts configuration attributes // @param config tts configuration - // @param status return status - virtual uint32_t SetConfiguration(const Configuration &config,TTSErrorDetail &status/* @out */) = 0; + // @param status: Return status + virtual uint32_t SetConfiguration(const Configuration &config, TTSErrorDetail &status/* @out */) = 0; - virtual uint32_t SetFallbackText(const string scenario,const string value) = 0; + virtual uint32_t SetFallbackText(const string scenario, const string value) = 0; virtual uint32_t SetAPIKey(const string apikey) = 0; virtual uint32_t SetPrimaryVolDuck(const uint8_t prim) = 0; - virtual uint32_t SetACL(const string method,const string apps) = 0; + virtual uint32_t SetACL(const string method, const string apps) = 0; // @brief Retrieve tts configuration attributes - // @param config tts configuration + // @param config: TTS configuration virtual uint32_t GetConfiguration(Configuration &config/* @out */) const = 0; // @brief List voices available - // @param language input - // @param voices list of voices - virtual uint32_t ListVoices(const string language,RPC::IStringIterator*& voices/* @out */) const = 0; + // @param language: Input language + // @param voices: list of voices + virtual uint32_t ListVoices(const string language, RPC::IStringIterator*& voices/* @out */) const = 0; // @brief Speaks text provided - // @param callsign of app - // @param text for conversion - // @param speechid returns id for the text - // @param status return status - virtual uint32_t Speak(const string callsign,const string text,uint32_t &speechid/* @out */,TTSErrorDetail &status/* @out */) = 0; + // @param callsign: Callsign of app + // @param text: Text for conversion + // @param speechid: Returns id for the text + // @param status: Return status + virtual uint32_t Speak(const string callsign, const string text, uint32_t &speechid/* @out */, TTSErrorDetail &status/* @out */) = 0; // @brief Cancel the speech - // @param speechid id of text to be cancelled + // @param speechid: Id of text to be cancelled virtual uint32_t Cancel(const uint32_t speechid) = 0; // @brief Pause the speech - // @param speechid id of text to be paused - // @param status return status - virtual uint32_t Pause(const uint32_t speechid,TTSErrorDetail &status /* @out */) = 0; + // @param speechid: Id of text to be paused + // @param status: Return status + virtual uint32_t Pause(const uint32_t speechid, TTSErrorDetail &status /* @out */) = 0; // @brief Resume the speech - // @param speechid id of text to be resumed - // @param status return status - virtual uint32_t Resume(const uint32_t speechid,TTSErrorDetail &status /* @out */) = 0; + // @param speechid: Id of text to be resumed + // @param status: Return status + virtual uint32_t Resume(const uint32_t speechid, TTSErrorDetail &status /* @out */) = 0; // @brief Get speech status - // @param speechid id of text to get status - // @param state speech state - virtual uint32_t GetSpeechState(const uint32_t speechid,SpeechState &state/* @out */) = 0; + // @param speechid: Id of text to get status + // @param state: Speech state + virtual uint32_t GetSpeechState(const uint32_t speechid, SpeechState &state/* @out */) = 0; }; } // Exchange diff --git a/interfaces/ITimeZone.h b/interfaces/ITimeZone.h index 0e073c2e..25d39e94 100644 --- a/interfaces/ITimeZone.h +++ b/interfaces/ITimeZone.h @@ -24,7 +24,7 @@ namespace WPEFramework { namespace Exchange { - /* @json @uncompliant:collapsed */ + /* @json 1.0.0 @uncompliant:collapsed */ struct EXTERNAL ITimeZone : virtual public Core::IUnknown { enum { ID = ID_TIMEZONE }; @@ -34,7 +34,7 @@ namespace Exchange { // Signal that the TimeZone has been changed for the system // @brief TimeZone was set for the system - // @param timeZone the new TimeZone + // @param timeZone: New TimeZone virtual void TimeZoneChanged(const string& timeZone) = 0; }; @@ -43,7 +43,6 @@ namespace Exchange { // @property // @brief TimeZone for system - // @param value: timezone virtual uint32_t TimeZone(string& timeZone /* @out */) const = 0; virtual uint32_t TimeZone(const string& timeZone) = 0; }; diff --git a/interfaces/IValuePoint.h b/interfaces/IValuePoint.h index 30556dcd..8f0519b7 100644 --- a/interfaces/IValuePoint.h +++ b/interfaces/IValuePoint.h @@ -23,7 +23,7 @@ namespace WPEFramework { namespace Exchange { - /* @json */ + /* @json 1.0.0 */ struct EXTERNAL IValuePoint : virtual public Core::IUnknown { enum { ID = ID_VALUE_POINT }; @@ -49,7 +49,11 @@ namespace Exchange { enum { ID = ID_VALUE_POINT_NOTIFICATION }; // Push changes. If the Current value changes, the next method is called. + // @brief Signal event any change in value + // @param id: Id of the value virtual void Update(const uint32_t id) = 0; + // @brief Signal event any change in Metadata + // @param id: Id of the Metadata virtual void Metadata(const uint32_t id) = 0; }; @@ -115,46 +119,38 @@ namespace Exchange { // @property // @brief Each IValuePoint instance has a unique identifier that identifies the instance. The // value returned here return the unique ID of this IValuePoint. - // @param ID is the unique identification of this element. virtual uint32_t Identifier(uint32_t& ID /* @out */) const = 0; // @property // @brief If this IValuePoint belongs to a bundle that has multiple IValuePoints the id // that identifies the bundle and the result will be Core::ERROR_NONE. If it does // not belong to a bundle, this call returns Core::ERROR_UNAVAILABLE, - // @param ID is the unique identification of the parent element. virtual uint32_t Bundle(uint32_t& ID /* @out */) const = 0; // @property // @brief Current state/condition of this IValuePoint - // @param value is the current condition of this IValuePoint virtual uint32_t Condition(condition& value /* @out */) const = 0; // @property - // @brief Characteristics of this IElement - // @param value represent the characteristics of this IValuePoint + // @brief Characteristics of this IValuePoint(IElement) virtual uint32_t Type(uint32_t& value /* @out */) const = 0; // @property - // @brief The minimum value this IElement can reach. - // @param value represent the minimum value this IValuePoint can reach. + // @brief The minimum value this IValuePoint(IElement) can reach. virtual uint32_t Minimum(int32_t& value /* @out */) const = 0; // @property - // @brief The maximum value this IElement can reach. - // @param value represent the maxium value this IValuePoint can reach. + // @brief The maximum value this IValuePoint(IElement) can reach. virtual uint32_t Maximum(int32_t& value /* @out */) const = 0; // @property // @brief The current value of this IValuePoint. - // @param value represent the current value of this IValuePoint. + // @param value: Represent the current value of this IValuePoint. virtual uint32_t Value(int32_t& value /* @out */) const = 0; virtual uint32_t Value(const int32_t value) = 0; // @property // @brief There most be more than meets the eye, report it as a JSON string. - // @param value represent the metadata associated with this IValuePoint. - // virtual uint32_t Metadata(string& value /* @out */) const = 0; // Periodically we might like to be evaluated, call this method at a set time. diff --git a/interfaces/IVolumeControl.h b/interfaces/IVolumeControl.h index a7159729..946f01db 100644 --- a/interfaces/IVolumeControl.h +++ b/interfaces/IVolumeControl.h @@ -24,7 +24,7 @@ namespace WPEFramework { namespace Exchange { - // @json @uncompliant:extended + // @json 1.0.0 @uncompliant:extended struct EXTERNAL IVolumeControl : virtual public Core::IUnknown { enum { ID = ID_VOLUMECONTROL }; @@ -35,11 +35,11 @@ namespace Exchange { ~INotification() override = default; // @brief Signals volume change - // @param volume New bolume level in percent (e.g. 100) + // @param volume: New bolume level in percent (e.g. 100) virtual void Volume(const uint8_t volume) = 0; // @brief Signals mute state change - // @param muted New mute state (true: muted, false: un-muted) + // @param muted: New mute state (true: muted, false: un-muted) virtual void Muted(const bool muted) = 0; }; @@ -50,14 +50,14 @@ namespace Exchange { // @property // @brief Audio mute state - // @param muted Mute state (true: muted, false: un-muted) + // @param muted: Mute state (true: muted, false: un-muted) // @retval ERROR_GENERAL Failed to set/retrieve muting state virtual uint32_t Muted(const bool muted) = 0; virtual uint32_t Muted(bool& muted /* @out */) const = 0; // @property // @brief Audio volume level - // @param volume Volume level in percent (e.g. 100) + // @param volume: Volume level in percent (e.g. 100) // @retval ERROR_GENERAL Failed to set/retrieve audio volume virtual uint32_t Volume(const uint8_t volume) = 0; virtual uint32_t Volume(uint8_t& volume /* @out */) const = 0; diff --git a/interfaces/IWatchDog.h b/interfaces/IWatchDog.h index adf7c283..73007c1e 100644 --- a/interfaces/IWatchDog.h +++ b/interfaces/IWatchDog.h @@ -5,7 +5,7 @@ namespace WPEFramework { namespace Exchange { - // @json + // @json 1.0.0 struct EXTERNAL IWatchDog : virtual public Core::IUnknown { enum { ID = ID_WATCHDOG }; @@ -13,8 +13,8 @@ namespace Exchange { ~IWatchDog() override = default; // @brief Touch the watchdog as a sign of life. - // @param callsign In case a specific watchdog needs to be padded pass - // the name of the callsign for which we want to touch. + // @param callsign: In case a specific watchdog needs to be padded pass + // the name of the callsign for which we want to touch. virtual uint32_t Touch(const string& callsign) = 0; }; } diff --git a/interfaces/IWifiControl.h b/interfaces/IWifiControl.h index 396979ab..80868e79 100644 --- a/interfaces/IWifiControl.h +++ b/interfaces/IWifiControl.h @@ -25,7 +25,7 @@ namespace WPEFramework { namespace Exchange { - /* @json */ + /* @json 1.0.0 */ struct EXTERNAL IWifiControl : virtual public Core::IUnknown { enum { ID = ID_WIFICONTROL }; @@ -53,29 +53,29 @@ namespace Exchange { NONE = 0x00 }; - Security method; - Key keys /* @bitmask */; + Security method /* @brief Security method */; + Key keys /* @bitmask @brief Security Keys */; }; using ISecurityIterator = RPC::IIteratorType; struct NetworkInfo { - string ssid; - uint64_t bssid; - uint32_t frequency; - int32_t signal; - Security security /* @bitmask */; + string ssid /* @brief SSID of the network */; + uint64_t bssid /* @brief BSSID of the network */; + uint32_t frequency /* @brief Frequency used */; + int32_t signal /* @brief Signal strength */; + Security security /* @bitmask @brief Security method */; }; using INetworkInfoIterator = RPC::IIteratorType; using IStringIterator = RPC::IIteratorType; struct ConfigInfo { - bool hidden; - bool accesspoint; - string ssid; - string secret; - string identity; - Security method; - SecurityInfo::Key key; + bool hidden /* @brief Visibility of the router (hidden or visible) */; + bool accesspoint /* @brief Accesspoint or not */; + string ssid /* @brief SSID of the router/ap */; + string secret /* @brief Secret key used */; + string identity /* @brief Identity */; + Security method /* @brief Security method */; + SecurityInfo::Key key /* @brief Security Info: method and keys */; }; // @event @@ -87,6 +87,7 @@ namespace Exchange { virtual void NetworkChange() = 0; // @brief Notifies that wifi connection changes + // @param ssid: SSID of connection changed network virtual void ConnectionChange(const string& ssid) = 0; }; @@ -112,6 +113,7 @@ namespace Exchange { // NOTE: Setting the config by indicating the ssid, but in the POD the SSID member is empty, will // remove the config and disconnect to this SSID (if applicable). // @brief Provide config details for requested SSID + // @param configInfo: Details about requested SSID virtual uint32_t Config(const string& ssid /* @index */, ConfigInfo& configInfo /* @out */) const = 0; virtual uint32_t Config(const string& ssid /* @index */, const ConfigInfo& configInfo) = 0; @@ -121,11 +123,15 @@ namespace Exchange { virtual uint32_t AbortScan() = 0; // @brief Connect device to requested SSID + // @param configSSID: SSID to be connected virtual uint32_t Connect(const string& configSSID) = 0; // @brief Disconnect device from requested SSID + // @param configSSID: SSID to be disconnected virtual uint32_t Disconnect(const string& configSSID) = 0; // @brief Status of current device, like which SSID is connected and it is in scanning state or not + // @param connectedSsid: SSID of connected router/ap + // @param isScanning: Scanning is in progress or not virtual uint32_t Status(string& connectedSsid /* @out */, bool& isScanning /* @out */) const = 0; }; } diff --git a/interfaces/IZigWave.h b/interfaces/IZigWave.h index 789fa26e..2d82143c 100644 --- a/interfaces/IZigWave.h +++ b/interfaces/IZigWave.h @@ -24,9 +24,9 @@ // @stubgen:include namespace WPEFramework { - namespace Exchange { + namespace Exchange { - /* @json */ + /* @json 1.0.0 */ struct EXTERNAL IZigWave : virtual public Core::IUnknown { enum { ID = ID_ZIGWAVE }; @@ -59,7 +59,7 @@ namespace WPEFramework { // @brief To allow new devices to the network, the controller should be placed // into an accepting mode. By enabling this mode, the controller can // accept new devices. - // @param enabled (true) or disable (false) the accepting mode. + // @param enabled: Enabled (true) or Disable (false) the accepting mode. // /* @alt accept */ virtual Core::hresult Permutable(const uint32_t address /* @index */, bool& enabled /* @out */) const = 0; @@ -68,14 +68,17 @@ namespace WPEFramework { // @property // @brief Get the information of available devices. An id of 0xFFFFFFFF means // all devices available by this plugin. - // virtual Core::hresult Devices(const uint32_t id /* @index */, IDeviceIterator*& devices /* @out */) const = 0; // @brief Bind the *out* from the soure to the *in* of the destination + // @param source: Source to be bound + // @param destination: Destination to be bound // @return: The success of the binding action. virtual Core::hresult Bind(const uint32_t source, const uint32_t destination) = 0; // @brief Unbind the *out* from the soure to the *in* of the destination + // @param source: Source to be unbound + // @param destination: Destination to be unbound // @return: The success of the unbinding action. virtual Core::hresult Unbind(const uint32_t source, const uint32_t destination) = 0; diff --git a/jsonrpc/BluetoothControl.json b/jsonrpc/BluetoothControl.json index d2b135d1..e383dfa2 100644 --- a/jsonrpc/BluetoothControl.json +++ b/jsonrpc/BluetoothControl.json @@ -3,6 +3,7 @@ "jsonrpc": "2.0", "mode": "auto", "info": { + "version": "1.0.0", "title": "Bluetooth Control API", "class": "BluetoothControl", "description": "Bluetooth Control JSON-RPC interface" @@ -1035,4 +1036,4 @@ } } } -} \ No newline at end of file +} diff --git a/jsonrpc/BluetoothRemoteControl.json b/jsonrpc/BluetoothRemoteControl.json index 609ee243..f8ecea70 100644 --- a/jsonrpc/BluetoothRemoteControl.json +++ b/jsonrpc/BluetoothRemoteControl.json @@ -2,6 +2,7 @@ "$schema": "interface.schema.json", "jsonrpc": "2.0", "info": { + "version": "1.0.0", "title": "Bluetooth Remote Control API", "class": "BluetoothRemoteControl", "format": "uncompliant-extended", @@ -158,7 +159,7 @@ "summary": "Enable or Disable the flow of Voice data fragments from the remote", "params": { "type": "boolean", - "description": "enable (true) or disable (false) flow of voice data" + "description": "Enable (true) or Disable (false) flow of voice data" }, "errors": [ { diff --git a/jsonrpc/Browser.json b/jsonrpc/Browser.json index 265366c3..6229c620 100644 --- a/jsonrpc/Browser.json +++ b/jsonrpc/Browser.json @@ -2,6 +2,7 @@ "$schema": "interface.schema.json", "jsonrpc": "2.0", "info": { + "version": "1.0.0", "title": "Browser API", "class": "Browser", "format": "uncompliant-extended", diff --git a/jsonrpc/Butler.json b/jsonrpc/Butler.json index 6a6d734e..58f9b8ff 100644 --- a/jsonrpc/Butler.json +++ b/jsonrpc/Butler.json @@ -2,6 +2,7 @@ "$schema": "interface.schema.json", "jsonrpc": "2.0", "info": { + "version": "1.0.0", "title": "Butler API", "class": "Butler", "format": "uncompliant-extended", @@ -12,9 +13,9 @@ }, "definitions": { "devicevalue": { + "description": "Value of the device", "type": "number", "signed": true, - "string": "Value of the device", "example": "1" }, "basicenum": { @@ -55,24 +56,6 @@ "emergency", "clock", "light" - ], - "enumvalues": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15 ] }, "dimensionenum": { @@ -87,15 +70,6 @@ "pulses", "degrees", "units" - ], - "enumvalues": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6 ] }, "device": { @@ -255,6 +229,7 @@ }, "members": { "type": "array", + "description": "An array of group member", "items": { "type": "object", "properties": { @@ -281,12 +256,13 @@ "example": 19 }, "id": { - "description": "The id of the single point in this meber, it is not a bundle ", + "description": "The id of the single point in this member, it is not a bundle", "type": "integer", "example": 19 }, "point": { "type": "array", + "description": "An array of device info", "items": { "$ref": "#/definitions/device" } @@ -304,7 +280,7 @@ ] }, "link": { - "summary": "link an external ID to a node", + "summary": "Link an external ID to a node", "params": { "type": "object", "properties": { @@ -328,7 +304,7 @@ ] }, "move": { - "summary": "move a node to another location", + "summary": "Move a node to another location", "params": { "type": "object", "properties": { @@ -352,13 +328,13 @@ ] }, "branch": { - "summary": "create a new group", + "summary": "Create a new group", "index": { "path": "The path leading up to the group", "example": "/ground" }, "params": { - "description": "name of the group to be created", + "description": "Name of the group to be created", "type": "string", "example": "Living" }, @@ -370,13 +346,13 @@ ] }, "delete": { - "summary": "destroy an existing, empty group", + "summary": "Destroy an existing, empty group", "index": { "path": "The path leading up to the group", "example": "/ground" }, "params": { - "description": "name of the element to be removed from the group", + "description": "Name of the element to be removed from the group", "type": "string", "example": "MainSwitch" }, diff --git a/jsonrpc/Cobalt.json b/jsonrpc/Cobalt.json index 4fc8d93d..8c0a386f 100644 --- a/jsonrpc/Cobalt.json +++ b/jsonrpc/Cobalt.json @@ -2,6 +2,7 @@ "$schema": "interface.schema.json", "jsonrpc": "2.0", "info": { + "version": "1.0.0", "title": "Cobalt API", "class": "Cobalt", "format": "uncompliant-extended", diff --git a/jsonrpc/Compositor.json b/jsonrpc/Compositor.json index 1275260c..96421f44 100644 --- a/jsonrpc/Compositor.json +++ b/jsonrpc/Compositor.json @@ -2,6 +2,7 @@ "$schema": "interface.schema.json", "jsonrpc": "2.0", "info": { + "version": "1.0.0", "title": "Compositor API", "class": "Compositor", "format": "uncompliant-extended", @@ -268,4 +269,4 @@ ] } } -} \ No newline at end of file +} diff --git a/jsonrpc/Containers.json b/jsonrpc/Containers.json index ae80be82..2b803ac4 100644 --- a/jsonrpc/Containers.json +++ b/jsonrpc/Containers.json @@ -2,6 +2,7 @@ "$schema": "interface.schema.json", "jsonrpc": "2.0", "info": { + "version": "1.0.0", "title": "Process Containers", "class": "Containers", "description": "Process Containers JSON-RPC API" @@ -194,4 +195,4 @@ ] } } -} \ No newline at end of file +} diff --git a/jsonrpc/DHCPServer.json b/jsonrpc/DHCPServer.json index fb6e46df..b9949345 100644 --- a/jsonrpc/DHCPServer.json +++ b/jsonrpc/DHCPServer.json @@ -2,6 +2,7 @@ "$schema": "interface.schema.json", "jsonrpc": "2.0", "info": { + "version": "1.0.0", "title": "DHCP Server API", "class": "DHCPServer", "description": "DHCP Server JSON-RPC interface" diff --git a/jsonrpc/DIALServer.json b/jsonrpc/DIALServer.json index 5d314366..e505a675 100644 --- a/jsonrpc/DIALServer.json +++ b/jsonrpc/DIALServer.json @@ -2,6 +2,7 @@ "$schema": "interface.schema.json", "jsonrpc": "2.0", "info": { + "version": "1.0.0", "title": "DIAL Server API", "class": "DIALServer", "format": "uncompliant-extended", diff --git a/jsonrpc/DTV.json b/jsonrpc/DTV.json index 109387f6..a9b06d39 100644 --- a/jsonrpc/DTV.json +++ b/jsonrpc/DTV.json @@ -2,10 +2,12 @@ "$schema": "https://raw.githubusercontent.com/rdkcentral/Thunder/master/Tools/JsonGenerator/schemas/interface.schema.json", "jsonrpc": "2.0", "info": { + "version": "1.0.0", "title": "DTV API", "class": "DTV", "format": "uncompliant-collapsed", - "description": "The `DTV` plugin provides access to DVB services provided by a DVB stack." + "description": "The `DTV` plugin provides access to DVB services provided by a DVB stack.", + "legacy": true }, "common": { "results": { @@ -41,7 +43,7 @@ ] }, "tunertype": { - "summary": "Tuner type", + "description": "Tuner type", "type": "string", "enum": [ "none", @@ -57,6 +59,7 @@ ] }, "lnbtype": { + "description": "LNB type", "type": "string", "enum": [ "single", @@ -65,6 +68,7 @@ ] }, "lnbpower": { + "description": "LNB power values", "type": "string", "enum":[ "off", @@ -73,6 +77,7 @@ ] }, "diseqc_cswitch": { + "description": "Diseqc cswitch", "type": "string", "enum": [ "off", @@ -83,6 +88,7 @@ ] }, "diseqc_tone": { + "description": "Diseqc Tone", "type": "string", "enum": [ "off", @@ -94,7 +100,7 @@ "type": "object", "properties": { "name": { - "summary": "User specified name for the LNB settings", + "description": "User specified name for the LNB settings", "type": "string", "example": "Universal" }, @@ -115,45 +121,45 @@ "example": "off" }, "is22k": { - "summary": "22kHz tone on/off", + "description": "22kHz tone on/off", "type": "boolean" }, "is12v": { - "summary": "12 volts on/off", + "description": "12 volts on/off", "type": "boolean" }, "ispulseposition": { - "summary": "Pulse position motor used to control dish position", + "description": "Pulse position motor used to control dish position", "type": "boolean" }, "isdiseqcposition": { - "summary": "Dish positioning is controlled by DiSEqC", + "description": "Dish positioning is controlled by DiSEqC", "type": "boolean" }, "issmatv": { - "summary": "SMATV switcher on/off", + "description": "SMATV switcher on/off", "type": "boolean" }, "diseqcrepeats": { - "summary": "Number of times to send a DiSEqC message to make sure it's been received", + "description": "Number of times to send a DiSEqC message to make sure it's been received", "type": "number", "signed": false, "size": 8 }, "u_switch": { - "summary": "DiSEqC uncommitted switch selector", + "description": "DiSEqC uncommitted switch selector", "type": "number", "signed": false, "size": 8 }, "unicablechannel": { - "summary": "Unicable channel", + "description": "Unicable channel", "type": "number", "signed": false, "size": 8 }, "unicablefreq": { - "summary": "Unicable frequency", + "description": "Unicable frequency", "type": "number", "signed": false, "size": 32 @@ -180,7 +186,7 @@ "type": "object", "properties": { "name": { - "summary": "User specified name for the satellite settings", + "description": "User specified name for the satellite settings", "type": "string", "example": "Astra 28.2E" }, @@ -192,7 +198,7 @@ "example": 282 }, "lnb": { - "summary": "Name of the LNB settings to be used when tuning to this satellite", + "description": "Name of the LNB settings to be used when tuning to this satellite", "type": "string", "example": "Universal" } @@ -204,6 +210,7 @@ ] }, "polarity": { + "description": "Polarity setting", "type": "string", "enum": [ "horizontal", @@ -213,7 +220,7 @@ ] }, "fec": { - "summary": "Forward error correction setting", + "description": "Forward error correction setting", "type": "string", "enum": [ "fecauto", @@ -232,6 +239,7 @@ ] }, "dvbsmodulation": { + "description": "DVB S Modulation supported by the platform", "type": "string", "enum": [ "auto", @@ -241,6 +249,7 @@ ] }, "searchtype": { + "description": "Supported Search Type", "type": "string", "enum": [ "frequency", @@ -248,16 +257,16 @@ ] }, "dvbstuningparams": { - "summary": "Parameters required to tune to a DVB-S/S2 signal", + "description": "Parameters required to tune to a DVB-S/S2 signal", "type": "object", "properties": { "satellite": { - "summary": "Name of the satellite settings to be used", + "description": "Name of the satellite settings to be used", "type": "string", "example": "Astra 28.2" }, "frequency": { - "summary": "Frequency of the transponder, in kHz", + "description": "Frequency of the transponder, in kHz", "type": "number", "signed": false, "size": 32, @@ -268,7 +277,7 @@ "example": "horizontal" }, "symbolrate": { - "summary": "Symbol rate in Ksymb/sec", + "description": "Symbol rate in Ksymb/sec", "type": "number", "signed": false, "size": 16, @@ -283,7 +292,7 @@ "example": "qpsk" }, "dvbs2": { - "summary": "True when tuning to a DVB-S2 signal", + "description": "True when tuning to a DVB-S2 signal", "type": "boolean" } }, @@ -298,6 +307,7 @@ ] }, "dvbcmodulation": { + "description": "DVB C Modulation supported by the platform", "type": "string", "enum": [ "auto", @@ -311,18 +321,18 @@ ] }, "dvbctuningparams": { - "summary": "Parameters required to tune to a DVB-C signal", + "description": "Parameters required to tune to a DVB-C signal", "type": "object", "properties": { "frequency": { - "summary": "Frequency of the transport, in Hz", + "description": "Frequency of the transport, in Hz", "type": "number", "signed": false, "size": 32, "example": 474000000 }, "symbolrate": { - "summary": "Symbol rate in Ksymb/sec", + "description": "Symbol rate in Ksymb/sec", "type": "number", "signed": false, "size": 16, @@ -340,7 +350,7 @@ ] }, "dvbtbandwidth": { - "summary": "Channel bandwidth", + "description": "Channel bandwidth", "type": "string", "enum": [ "5MHz", @@ -352,7 +362,7 @@ ] }, "ofdmmode": { - "summary": "OFDM mode", + "description": "OFDM mode", "type": "string", "enum": [ "ofdm_1K", @@ -365,11 +375,11 @@ ] }, "dvbttuningparams": { - "summary": "Parameters required to tune to a DVB-T/T2 signal", + "description": "Parameters required to tune to a DVB-T/T2 signal", "type": "object", "properties": { "frequency": { - "summary": "Frequency of the transport, in Hz", + "description": "Frequency of the transport, in Hz", "type": "number", "signed": false, "size": 32, @@ -384,11 +394,11 @@ "example": "ofdm_32K" }, "dvbt2": { - "summary": "True when tuning to a DVB-T2 signal", + "description": "True when tuning to a DVB-T2 signal", "type": "boolean" }, "plpid": { - "summary": "PLP ID for tuning to a DVB-T2 signal", + "description": "PLP ID for tuning to a DVB-T2 signal", "type": "number", "signed": false, "size": 8 @@ -402,12 +412,12 @@ ] }, "dvburistring": { - "summary": "DVB triplet of the form a.b.c, where 'a' is the original network ID, 'b' is the transport ID and 'c' is the service ID, in decimal", + "description": "DVB triplet of the form a.b.c, where 'a' is the original network ID, 'b' is the transport ID and 'c' is the service ID, in decimal", "type": "string", "example": "2.2041.9212" }, "servicetype": { - "summary": "(Version 2) Service type as given by the service descriptor in the SDT", + "description": "(Version 2) Service type as given by the service descriptor in the SDT", "type": "string", "enum": [ "tv", @@ -431,7 +441,7 @@ ] }, "runningstatus": { - "summary": "(Version 2) The running status as given by the service descriptor in the SDT", + "description": "(Version 2) The running status as given by the service descriptor in the SDT", "type": "string", "enum": [ "undefined", @@ -444,16 +454,16 @@ "example": "running" }, "service": { - "summary": "Service information", + "description": "Service information", "type": "object", "properties": { "fullname": { - "summary": "(Version 2) Full service name as given by the service descriptor in the SDT", + "description": "(Version 2) Full service name as given by the service descriptor in the SDT", "type": "string", "example": "Channel 4" }, "shortname": { - "summary": "Short service name as given by the service descriptor in the SDT", + "description": "Short service name as given by the service descriptor in the SDT", "type": "string", "example": "C4" }, @@ -465,25 +475,25 @@ "example": "tv" }, "lcn": { - "summary": "Logical channel number", + "description": "Logical channel number", "type": "number", "size": 16, "example": 1001 }, "scrambled": { - "summary": "(Version 2) True if the service is marked as scrambled in the SDT", + "description": "(Version 2) True if the service is marked as scrambled in the SDT", "type": "boolean" }, "hascadescriptor": { - "summary": "(Version 2) True if there is at least one CA descriptor in the service's PMT", + "description": "(Version 2) True if there is at least one CA descriptor in the service's PMT", "type": "boolean" }, "hidden": { - "summary": "(Version 2) True if the service should be hidden", + "description": "(Version 2) True if the service should be hidden", "type": "boolean" }, "selectable": { - "summary": "(Version 2) True if the service should be user selectable", + "description": "(Version 2) True if the service should be user selectable", "type": "boolean" }, "runningstatus": { @@ -504,7 +514,7 @@ ] }, "transport": { - "summary": "(Version 2) Details for a transport", + "description": "(Version 2) Details for a transport", "type": "object", "properties": { "tunertype": { @@ -512,28 +522,28 @@ "example": "dvbt" }, "originalnetworkid": { - "summary": "Original network ID of the transport", + "description": "Original network ID of the transport", "type": "number", "signed": false, "size": 16, "example": 8204 }, "transportid": { - "summary": "Transport ID of the transport", + "description": "Transport ID of the transport", "type": "number", "signed": false, "size": 16, "example": 8204 }, "strength": { - "summary": "Signal strength as a percentage", + "description": "Signal strength as a percentage", "type": "number", "signed": false, "size": 8, "example": "76" }, "quality": { - "summary": "Signal quality as a percentage", + "description": "Signal quality as a percentage", "type": "number", "signed": false, "size": 8, @@ -558,11 +568,11 @@ ] }, "eitevent": { - "summary": "EIT event information", + "description": "EIT event information", "type": "object", "properties": { "name": { - "summary": "Name of the DVB event as defined in the short event descriptor", + "description": "Name of the DVB event as defined in the short event descriptor", "type": "string", "example": "Channel 4 News" }, @@ -570,45 +580,45 @@ "type": "number", "signed": false, "size": 32, - "summary": "UTC start time of the event in seconds", + "description": "UTC start time of the event in seconds", "example": 1587562065 }, "duration": { - "summary": "Duration of the event in seconds", + "description": "Duration of the event in seconds", "type": "number", "signed": false, "size": 32, "example": 1800 }, "eventid": { - "summary": "ID of the event from the event information table", + "description": "ID of the event from the event information table", "type": "number", "signed": false, "size": 16, "example": 3012 }, "shortdescription": { - "summary": "Event description from the EIT short event descriptor", + "description": "Event description from the EIT short event descriptor", "type": "string", "example": "The current national and world news" }, "hassubtitles": { - "summary": "(Version 2) True if subtitles are available", + "description": "(Version 2) True if subtitles are available", "type": "boolean" }, "hasaudiodescription": { - "summary": "(Version 2) True if audio description is available", + "description": "(Version 2) True if audio description is available", "type": "boolean" }, "parentalrating": { - "summary": "(Version 2) Parental rating for the event, will be 0 if undefined", + "description": "(Version 2) Parental rating for the event, will be 0 if undefined", "type": "number", "signed": false, "size": 8, "example": 12 }, "contentdata": { - "summary": "(Version 2) The first 2 4-bit values from the content descriptor as separate bytes", + "description": "(Version 2) The first 2 4-bit values from the content descriptor as separate bytes", "type": "array", "items": { "type": "number", @@ -617,7 +627,7 @@ } }, "hasextendedinfo": { - "summary": "(Version 2) True if there's extended event information available", + "description": "(Version 2) True if there's extended event information available", "type": "boolean" } }, @@ -638,28 +648,28 @@ "type": "object", "properties": { "description": { - "summary": "Description of the item", + "description": "Description of the item", "type": "string", "example": "Actor 1" }, "item": { - "summary": "Item text", + "description": "Item text", "type": "string", "example": "Kermit The Frog" } } }, "extendedeventinfo": { - "summary": "(Version 2) Event information from the EIT extended event descriptor", + "description": "(Version 2) Event information from the EIT extended event descriptor", "type": "object", "properties": { "description": { - "summary": "Extended event description text", + "description": "Extended event description text", "type": "string", "example": "A long event description" }, "items": { - "summary": "", + "description": "An array of extended event item", "type": "array", "items": { "$ref": "#/definitions/extendedeventitem" @@ -670,7 +680,7 @@ ] }, "codec": { - "summary": "Video or audio codec type", + "description": "Video or audio codec type", "type": "string", "enum": [ "mpeg2", @@ -686,11 +696,11 @@ ] }, "component": { - "summary": "Video, audio, subtitle, teletext or data component info", + "description": "Video, audio, subtitle, teletext or data component info", "type": "object", "properties": { "type": { - "summary": "Type of data contained in this component", + "description": "Type of data contained in this component", "type": "string", "enum": [ "video", @@ -702,7 +712,7 @@ "example": "video" }, "tags": { - "summary": "Array of component tags", + "description": "Array of component tags", "type": "array", "items": { "type": "number", @@ -711,14 +721,14 @@ } }, "pid": { - "summary": "PID of the component", + "description": "PID of the component", "type": "number", "signed": false, "size": 16, "example": 1100 }, "video": { - "summary": "Video related information for a video component", + "description": "Video related information for a video component", "type": "object", "properties": { "codec": { @@ -727,19 +737,19 @@ } }, "audio": { - "summary": "Audio related information for an audio component", + "description": "Audio related information for an audio component", "type": "object", "properties": { "codec": { "$ref": "#/definitions/codec" }, "language": { - "summary": "ISO 3-char language code", + "description": "ISO 3-char language code", "type": "string", "example": "eng" }, "type": { - "summary": "Type of the audio contained in the component", + "description": "Type of the audio contained in the component", "type": "string", "enum": [ "undefined", @@ -751,7 +761,7 @@ "example": "normal" }, "mode": { - "summary": "Audio mode", + "description": "Audio mode", "type": "string", "enum": [ "mono", @@ -770,16 +780,16 @@ ] }, "subtitles": { - "summary": "DVB subtitle related information for a subtitle component", + "description": "DVB subtitle related information for a subtitle component", "type": "object", "properties": { "language": { - "summary": "ISO 3-char language code", + "description": "ISO 3-char language code", "type": "string", "example": "eng" }, "format": { - "summary": "Intended TV format for the subtitles", + "description": "Intended TV format for the subtitles", "type": "string", "enum": [ "default", @@ -795,13 +805,13 @@ ] }, "compositionpage": { - "summary": "Composition page to be used for subtitles in this component", + "description": "Composition page to be used for subtitles in this component", "type": "number", "signed": false, "size": 16 }, "ancillarypage": { - "summary": "Ancillary page to be used for subtitles in this component", + "description": "Ancillary page to be used for subtitles in this component", "type": "number", "signed": false, "size": 16 @@ -815,28 +825,28 @@ ] }, "teletext": { - "summary": "Teletext related information for a teletext component", + "description": "Teletext related information for a teletext component", "type": "object", "properties": { "language": { - "summary": "ISO 3-char language code", + "description": "ISO 3-char language code", "type": "string", "example": "eng" }, "type": { - "summary": "Type of teletext data", + "description": "Type of teletext data", "type": "number", "signed": false, "size": 8 }, "magazine": { - "summary": "Magazine number for this type and language", + "description": "Magazine number for this type and language", "type": "number", "signed": false, "size": 8 }, "page": { - "summary": "Page number for this type and language", + "description": "Page number for this type and language", "type": "number", "signed": false, "size": 8 @@ -856,7 +866,7 @@ ] }, "eventtype": { - "summary": "Event type that's sent as an asynchronous notification", + "description": "Event type that's sent as an asynchronous notification", "type": "string", "enum": [ "ServiceSearchStatus", @@ -1035,21 +1045,21 @@ "type": "object", "properties": { "tuner": { - "summary": "The tuner id used by the play handle", + "description": "The tuner id used by the play handle", "type": "number", "signed": false, "size": 8, "example": 0 }, "demux": { - "summary": "The demux id used by the play handle", + "description": "The demux id used by the play handle", "type": "number", "signed": false, "size": 8, "example": 0 }, "pmtpid": { - "summary": "The PMT PID of the service being played", + "description": "The PMT PID of the service being played", "type": "number", "signed": false, "size": 16, @@ -1059,7 +1069,7 @@ "$ref": "#/definitions/dvburistring" }, "lcn": { - "summary": "LCN of the service being played", + "description": "LCN of the service being played", "type": "number", "signed": false, "size": 16, @@ -1076,7 +1086,7 @@ } }, "signalInfo": { - "summary": "strength and quality of the currently tuned signal for the given play handle (version 2)", + "summary": "Strength and quality of the currently tuned signal for the given play handle (version 2)", "readonly": true, "index": { "name": "Play handle", @@ -1086,18 +1096,18 @@ "type": "object", "properties": { "locked": { - "summary": "Tuned locked status", + "description": "Tuned locked status", "type": "boolean" }, "strength": { - "summary": "The signal strength as a percentage", + "description": "The signal strength as a percentage", "type": "number", "signed": false, "size": 8, "example": "76" }, "quality": { - "summary": "The signal quality as a percentage", + "description": "The signal quality as a percentage", "type": "number", "signed": false, "size": 8, @@ -1114,29 +1124,29 @@ }, "methods": { "addLnb": { - "summary": "Add a new LNB to the database.\n \n### Events \n\n No Events", + "summary": "Add a new LNB to the database.", "params": { "$ref": "#/definitions/lnbsettings" }, "result": { - "summary": "true if the LNB is added, false otherwise", + "description": "Return true if the LNB is added, false otherwise", "type": "boolean", "example": true } }, "addSatellite": { - "summary": "Add a new satellite to the database.\n \n### Events \n\n No Events", + "summary": "Add a new satellite to the database.", "params": { "$ref": "#/definitions/satellitesettings" }, "result": { "type": "boolean", - "summary": "true if the satellite is added, false otherwise", + "description": "Return true if the satellite is added, false otherwise", "example": true } }, "startServiceSearch": { - "summary": "Starts a service search.\n \n### Events \n| Event | Description | \n| :----------- | :----------- | \n|`searchstatus`|Triggered during the course of a service search.|\n |`serviceupdated`|Triggered when a service is added|", + "summary": "Starts a service search.", "params": { "type": "object", "properties": { @@ -1149,11 +1159,11 @@ "example": "network" }, "retune": { - "summary": "true if current services are to be replaced in the database, false if the scan is to update the existing services", + "description": "Set to true if current services are to be replaced in the database, false if the scan is to update the existing services", "type": "boolean" }, "usetuningparams": { - "summary": "Set to true if the optional tuning parameters are defined", + "description": "Set to true if the optional tuning parameters are defined", "type": "boolean", "example": true }, @@ -1176,7 +1186,7 @@ }, "result": { "type": "boolean", - "summary": "true if the search is started, false otherwise", + "description": "Return true if the search is started, false otherwise", "example": true }, "events": [ @@ -1185,7 +1195,7 @@ ] }, "finishServiceSearch": { - "summary": "Finishes a service search.\n \n### Events \n\n No Events", + "summary": "Finishes a service search.", "params": { "type": "object", "properties": { @@ -1194,7 +1204,7 @@ "example": "dvbs" }, "savechanges": { - "summary": "true if the services found during the search should be saved", + "description": "Set true if the services found during the search should be saved", "type": "boolean", "example": true } @@ -1205,13 +1215,13 @@ ] }, "result": { - "summary": "false if the tunertype isn't valid, true otherwise", + "description": "Return false if the tunertype isn't valid, true otherwise", "type": "boolean", "example": true } }, "startPlaying": { - "summary": "Starts playing the specified service.\n \n### Events\n| Event | Description |\n| :----------- | :----------- |\n|`serviceupdated`|Triggered when info for a service changes|\n|`eventchanged`|Triggered when the EIT 'now' event changes|\n|`videochanged`|Triggered when the video PID or codec are changed|\n|`audiochanged`|Triggered when the audio PID or codec are changed|\n|`subtitleschanged`|Triggered when the subtitle PID or details are changed| ", + "summary": "Starts playing the specified service.", "params": { "type": "object", "properties": { @@ -1219,13 +1229,13 @@ "$ref": "#/definitions/dvburistring" }, "lcn": { - "summary": "LCN of the service to be tuned to", + "description": "LCN of the service to be tuned to", "type": "number", "signed": false, "size": 16 }, "monitoronly": { - "summary": "(Version 2) set to 'true' to monitor SI/PSI data only. Will default to 'false' if not defined", + "description": "(Version 2) set to 'true' to monitor SI/PSI data only. Will default to 'false' if not defined", "type": "boolean", "example": true } @@ -1234,7 +1244,7 @@ ] }, "result": { - "summary": "The play handle assigned to play the given service. Will be -1 if the service can't be played", + "description": "The play handle assigned to play the given service. Will be -1 if the service can't be played", "type": "number", "example": 0 }, @@ -1247,9 +1257,9 @@ ] }, "stopPlaying": { - "summary": "Stops playing the specified service.\n \n### Events \n\n No Events", + "summary": "Stops playing the specified service.", "params": { - "summary": "The play handle returned by startPlaying", + "description": "The play handle returned by startPlaying", "type": "number", "example": 0 }, @@ -1265,7 +1275,7 @@ "type": "object", "properties": { "handle": { - "summary": "The handle assigned for the search and to which this information is relevant", + "description": "The handle assigned for the search and to which this information is relevant", "type": "number", "size": 32, "unsigned": true, @@ -1276,12 +1286,12 @@ "example": "ServiceSearchStatus" }, "finished": { - "summary": "true if the service search has finished, false otherwise", + "description": "Set to true if the service search has finished, false otherwise", "type": "boolean", "example": false }, "progress": { - "summary": "Progress of the search expressed as a percentage", + "description": "Progress of the search expressed as a percentage", "type": "number", "size": 8, "unsigned": true, diff --git a/jsonrpc/DeviceIdentification.json b/jsonrpc/DeviceIdentification.json index 3872229c..39243fe5 100644 --- a/jsonrpc/DeviceIdentification.json +++ b/jsonrpc/DeviceIdentification.json @@ -2,6 +2,7 @@ "$schema": "interface.schema.json", "jsonrpc": "2.0", "info": { + "version": "1.0.0", "title": "Device Identification API", "class": "DeviceIdentification", "description": "DeviceIdentification JSON-RPC interface" diff --git a/jsonrpc/DeviceInfo.json b/jsonrpc/DeviceInfo.json index 27a11c4d..ad66dc84 100644 --- a/jsonrpc/DeviceInfo.json +++ b/jsonrpc/DeviceInfo.json @@ -2,10 +2,12 @@ "$schema": "interface.schema.json", "jsonrpc": "2.0", "info": { + "version": "1.0.0", "title": "Device Info API", "class": "DeviceInfo", "format": "uncompliant-extended", - "description": "DeviceInfo JSON-RPC interface" + "description": "DeviceInfo JSON-RPC interface", + "legacy": true }, "common": { "$ref": "common.json" @@ -51,20 +53,12 @@ "HDMI1", "DISPLAYPORT" ], - "enumvalues": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6 - ], "description": "Audio output supported by the device", "example": "analog" }, "audiooutputs": { "type": "array", + "description": "An array of audio output supported by the device", "items": { "$ref": "#/definitions/audioPort" } @@ -93,7 +87,7 @@ "example": "none" }, "audiocapabilities": { - "summary": "An array of audio capabilities", + "description": "An array of audio capabilities", "type": "array", "items": { "$ref": "#/definitions/audiocapability" @@ -117,7 +111,7 @@ "example": "dolby_volume" }, "ms12capabilities": { - "summary": "An array of MS12 audio capabilities", + "description": "An array of MS12 audio capabilities", "type": "array", "items": { "$ref": "#/definitions/ms12capability" @@ -141,7 +135,7 @@ "example": "music" }, "ms12profiles": { - "summary": "An array of MS12 audio profiles", + "description": "An array of MS12 audio profiles", "type": "array", "items": { "$ref": "#/definitions/ms12profile" @@ -160,22 +154,12 @@ "HDMI1", "DISPLAYPORT" ], - "enumvalues": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8 - ], "description": "Video output supported by the device", "example": "displayport" }, "videooutputs": { "type": "array", + "description": "An array of video output supported by the device", "items": { "$ref": "#/definitions/videoDisplay" } @@ -206,35 +190,12 @@ "4320p30", "4320p60" ], - "enumvalues": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21 - ], "description": "Resolution supported by the device", "example": "1080p" }, "output_resolutions": { "type": "array", + "description": "An array of resolution supported by the device", "items": { "$ref": "#/definitions/output_resolution" } @@ -259,7 +220,7 @@ "example": "hdcp_20" }, "videooutputcapabilities": { - "summary": "Video capabilities of the output", + "description": "Video capabilities of the output", "type": "object", "properties": { "hdcp": { @@ -287,7 +248,7 @@ ] }, "audiooutputcapabilities": { - "summary": "Audio capabilities of the output", + "description": "Audio capabilities of the output", "type": "object", "properties": { "audioPort": { @@ -459,6 +420,7 @@ "properties": { "audiooutputcapabilities": { "type": "array", + "description": "An array of audiooutputcapabilities", "items": { "$ref": "#/definitions/audiooutputcapabilities" } @@ -497,6 +459,7 @@ }, "videooutputcapabilities": { "type": "array", + "description": "An array of videooutputcapabilities", "items": { "$ref": "#/definitions/videooutputcapabilities" } @@ -667,6 +630,7 @@ }, "ip": { "type": "array", + "description": "An array of Interface IP address", "items": { "type": "string", "description": "Interface IP address", @@ -688,22 +652,27 @@ "type": "object", "properties": { "total": { + "description": "Number of total", "type": "number", "example": 0 }, "open": { + "description": "Number of open", "type": "number", "example": 0 }, "link": { + "description": "Number of link", "type": "number", "example": 0 }, "exception": { + "description": "Number of exception", "type": "number", "example": 0 }, "shutdown": { + "description": "Number of shutdown", "type": "number", "example": 0 }, @@ -769,7 +738,7 @@ "type": "object", "properties": { "EDID": { - "summary": "A base64 encoded byte array string representing the EDID", + "description": "A base64 encoded byte array string representing the EDID", "type": "string", "example": "AP///////wAQrMLQVEJTMQUdAQOANR546q11qVRNnSYPUFSlSwCBALMA0QBxT6lAgYDRwAEBVl4AoKCgKVAwIDUADighAAAaAAAA/wBNWTNORDkxVjFTQlQKAAAA/ABERUxMIFAyNDE4RAogAAAA/QAxVh1xHAAKICAgICAgARsCAxuxUJAFBAMCBxYBBhESFRMUHyBlAwwAEAACOoAYcTgtQFgsRQAOKCEAAB4BHYAYcRwWIFgsJQAOKCEAAJ6/FgCggDgTQDAgOgAOKCEAABp+OQCggDgfQDAgOgAOKCEAABoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA2A" } @@ -792,14 +761,17 @@ "type": "object", "properties": { "imagename": { + "description": "Name of firmware image", "type": "string", "example": "PX051AEI_VBN_2203_sprint_20220331225312sdy_NG" }, "sdk": { + "description": "SDK version string", "type": "string", "example": "17.3" }, "mediarite": { + "description": "Mediarite value", "type": "string", "example": "8.3.53" }, @@ -826,6 +798,7 @@ "type": "object", "properties": { "serialnumber": { + "description": "Device Serial Number", "type": "string", "example": "PAW400003744" } @@ -890,6 +863,7 @@ "type": "object", "properties": { "model": { + "description": "Device model name", "type": "string", "example": "Pace Xi5" } @@ -912,6 +886,7 @@ "type": "object", "properties": { "year": { + "description": "Device model year", "type": "number", "size": 16, "example": "2020" @@ -935,6 +910,7 @@ "type": "object", "properties": { "name": { + "description": "Device friendly name", "type": "string", "example": "My device" } @@ -957,6 +933,7 @@ "type": "object", "properties": { "name": { + "description": "Device Platform name", "type": "string", "example": "Linux" } diff --git a/jsonrpc/DisplayInfo.json b/jsonrpc/DisplayInfo.json index acb19068..ce52f5e2 100644 --- a/jsonrpc/DisplayInfo.json +++ b/jsonrpc/DisplayInfo.json @@ -2,6 +2,7 @@ "$schema": "interface.schema.json", "jsonrpc": "2.0", "info": { + "version": "1.0.0", "title": "Display Info API", "class": "DisplayInfo", "description": "DisplayInfo JSON-RPC interface" diff --git a/jsonrpc/FirmwareControl.json b/jsonrpc/FirmwareControl.json index 204898c0..4521cce3 100644 --- a/jsonrpc/FirmwareControl.json +++ b/jsonrpc/FirmwareControl.json @@ -2,6 +2,7 @@ "$schema": "interface.schema.json", "jsonrpc": "2.0", "info": { + "version": "1.0.0", "title": "Firmware Control API", "class": "FirmwareControl", "description": "Firmware Control JSON-RPC interface" diff --git a/jsonrpc/IOConnector.json b/jsonrpc/IOConnector.json index be90aa62..0a27fea3 100644 --- a/jsonrpc/IOConnector.json +++ b/jsonrpc/IOConnector.json @@ -2,6 +2,7 @@ "$schema": "interface.schema.json", "jsonrpc": "2.0", "info": { + "version": "1.0.0", "title": "IO Connector API", "class": "IOConnector", "format": "uncompliant-extended", @@ -14,7 +15,7 @@ "pinvalue": { "type": "number", "signed": true, - "string": "Value of the pin", + "description": "Value of the pin", "example": "1" } }, diff --git a/jsonrpc/IOControl.json b/jsonrpc/IOControl.json index d69664fc..2dc7c179 100644 --- a/jsonrpc/IOControl.json +++ b/jsonrpc/IOControl.json @@ -2,6 +2,7 @@ "$schema": "interface.schema.json", "jsonrpc": "2.0", "info": { + "version": "1.0.0", "title": "IO Control API", "class": "IOControl", "format": "uncompliant-extended", @@ -14,7 +15,7 @@ "pinvalue": { "type": "number", "signed": true, - "string": "Value of the pin", + "description": "Value of the pin", "example": "1" } }, diff --git a/jsonrpc/InputSwitch.json b/jsonrpc/InputSwitch.json index 7b88f281..b37e9940 100644 --- a/jsonrpc/InputSwitch.json +++ b/jsonrpc/InputSwitch.json @@ -2,6 +2,7 @@ "$schema": "interface.schema.json", "jsonrpc": "2.0", "info": { + "version": "1.0.0", "title": "Input Switch API", "class": "InputSwitch", "description": "InputSwitch JSON-RPC interface" diff --git a/jsonrpc/LISA.json b/jsonrpc/LISA.json index 2413716a..e72e8b00 100644 --- a/jsonrpc/LISA.json +++ b/jsonrpc/LISA.json @@ -2,10 +2,12 @@ "$schema": "interface.schema.json", "jsonrpc": "2.0", "info": { + "version": "1.0.0", "title": "LISA API", "class": "LISA", "format": "uncompliant-extended", - "description": "LISA JSON-RPC interface" + "description": "LISA JSON-RPC interface", + "legacy": true }, "common": { "$ref": "common.json" @@ -198,6 +200,7 @@ }, "installed": { "type": "array", + "description": "List of installedApp", "items": { "$ref": "#/definitions/installedApp" } @@ -261,6 +264,7 @@ "properties": { "apps": { "type": "array", + "description": "List of apps", "items": { "$ref": "#/definitions/app" } diff --git a/jsonrpc/LocationSync.json b/jsonrpc/LocationSync.json index 06869139..14053f0d 100644 --- a/jsonrpc/LocationSync.json +++ b/jsonrpc/LocationSync.json @@ -2,6 +2,7 @@ "$schema": "interface.schema.json", "jsonrpc": "2.0", "info": { + "version": "1.0.0", "title": "Location Sync API", "class": "LocationSync", "description": "Location Sync JSON-RPC interface" @@ -10,7 +11,7 @@ "$ref": "common.json" }, "methods": { - "LocationSync.1.sync": { + "sync": { "summary": "Synchronizes the location", "result": { "$ref": "#/common/results/void" diff --git a/jsonrpc/Messenger.json b/jsonrpc/Messenger.json index 09ad3414..ca5400fd 100644 --- a/jsonrpc/Messenger.json +++ b/jsonrpc/Messenger.json @@ -2,6 +2,7 @@ "$schema": "interface.schema.json", "jsonrpc": "2.0", "info": { + "version": "1.0.0", "title": "Messenger API", "class": "Messenger", "description": "Messenger JSON-RPC interface" @@ -28,7 +29,7 @@ } }, "methods": { - "Messenger.1.join": { + "join": { "summary": "Joins a messaging room", "description": "Use this method to join a room. If the specified room does not exist, then it will be created.", "events": [ @@ -86,7 +87,7 @@ } ] }, - "Messenger.1.leave": { + "leave": { "summary": "Leaves a messaging room", "description": "Use this method to leave a room. The room ID becomes invalid after this call. If there are no more users, the room will be destroyed and related resources freed.", "events": [ @@ -112,7 +113,7 @@ } ] }, - "Messenger.1.send": { + "send": { "summary": "Sends a message to a room", "description": "Use this method to send a message to a room.", "events": [ diff --git a/jsonrpc/Monitor.json b/jsonrpc/Monitor.json index fcd491c4..76a45be8 100644 --- a/jsonrpc/Monitor.json +++ b/jsonrpc/Monitor.json @@ -2,6 +2,7 @@ "$schema": "interface.schema.json", "jsonrpc": "2.0", "info": { + "version": "1.0.0", "title": "Monitor API", "class": "Monitor", "description": "Monitor JSON-RPC interface" @@ -12,6 +13,7 @@ "definitions": { "restart": { "type": "object", + "description": "Restart limits for failures applying to the service", "properties": { "limit": { "type": "number", @@ -120,8 +122,7 @@ "type": "string" }, "restart": { - "$ref": "#/definitions/restart", - "description": "Restart limits for failures applying to the service" + "$ref": "#/definitions/restart" } }, "required": [ @@ -220,4 +221,4 @@ } } } -} \ No newline at end of file +} diff --git a/jsonrpc/Netflix.json b/jsonrpc/Netflix.json index 95384611..fe52695a 100644 --- a/jsonrpc/Netflix.json +++ b/jsonrpc/Netflix.json @@ -2,6 +2,7 @@ "$schema": "interface.schema.json", "jsonrpc": "2.0", "info": { + "version": "1.0.0", "title": "Netflix API", "class": "Netflix", "format": "uncompliant-extended", diff --git a/jsonrpc/OCDM.json b/jsonrpc/OCDM.json index fdfd142f..b00ea2be 100644 --- a/jsonrpc/OCDM.json +++ b/jsonrpc/OCDM.json @@ -2,6 +2,7 @@ "$schema": "interface.schema.json", "jsonrpc": "2.0", "info": { + "version": "1.0.0", "title": "OpenCDMi API", "class": "OCDM", "format": "uncompliant-extended", @@ -26,6 +27,7 @@ }, "keysystems": { "type": "array", + "description": "Key system identifier list", "items": { "$ref": "#/definitions/keysystem" } diff --git a/jsonrpc/Packager.json b/jsonrpc/Packager.json index 58ea73b1..e3269a9c 100644 --- a/jsonrpc/Packager.json +++ b/jsonrpc/Packager.json @@ -2,6 +2,7 @@ "$schema": "interface.schema.json", "jsonrpc": "2.0", "info": { + "version": "1.0.0", "title": "Packager API", "class": "Packager", "description": "Packager JSON-RPC interface" @@ -10,7 +11,7 @@ "$ref": "common.json" }, "methods": { - "Packager.1.install": { + "install": { "summary": "Installs a package given by a name, an URL or a file path", "params": { "type": "object", @@ -45,7 +46,7 @@ } ] }, - "Packager.1.synchronize": { + "synchronize": { "summary": "Synchronizes repository manifest with a repository", "result": { "$ref": "#/common/results/void" diff --git a/jsonrpc/PerformanceMonitor.json b/jsonrpc/PerformanceMonitor.json index 83c14cc5..8887fbd6 100644 --- a/jsonrpc/PerformanceMonitor.json +++ b/jsonrpc/PerformanceMonitor.json @@ -2,6 +2,7 @@ "$schema": "interface.schema.json", "jsonrpc": "2.0", "info": { + "version": "1.0.0", "title": "Performance Monitor API", "class": "PerformanceMonitor", "format": "uncompliant-collapsed", @@ -29,10 +30,12 @@ }, "length": { "type": "number", + "description": "Size of the data", "size": 16 }, "duration": { "type": "number", + "description": "Duration of the measurements", "size": 16 } } @@ -41,18 +44,22 @@ "type": "object", "properties": { "minimum": { + "description": "Minimum value of measurements", "$ref": "#/definitions/time", "example": 1 }, "maximum": { + "description": "Maximum value of measurements", "$ref": "#/definitions/time", "example": 4 }, "average": { + "description": "Average value of measurements", "$ref": "#/definitions/time", "example": 2 }, "count": { + "description": "How many times measurement has been collected", "$ref": "#/definitions/time", "example": 5 } diff --git a/jsonrpc/PlayerInfo.json b/jsonrpc/PlayerInfo.json index 212b246e..f6c13c3c 100644 --- a/jsonrpc/PlayerInfo.json +++ b/jsonrpc/PlayerInfo.json @@ -2,6 +2,7 @@ "$schema": "interface.schema.json", "jsonrpc": "2.0", "info": { + "version": "1.0.0", "title": "Player Info API", "class": "PlayerInfo", "description": "PlayerInfo JSON-RPC interface" @@ -23,20 +24,6 @@ "VorbisOGG", "WAV" ], - "enumvalues": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11 - ], "description": "Audio Codec supported by the platform", "example": "AudioAAC" }, @@ -53,17 +40,6 @@ "VP9", "VP10" ], - "enumvalues": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8 - ], "description": "Video Codec supported by the platform", "example": "VideoH264" }, @@ -72,12 +48,14 @@ "properties": { "audio": { "type": "array", + "description": "List of Audio Codec supported by the platform", "items": { "$ref": "#/definitions/audiocodecs" } }, "video": { "type": "array", + "description": "List of Video Codec supported by the platform", "items": { "$ref": "#/definitions/videocodecs" } @@ -97,7 +75,8 @@ 3, 4, 5 - ] + ], + "description": "Dolby mode supported by the platform" }, "required": [ "audio", diff --git a/jsonrpc/Power.json b/jsonrpc/Power.json index aec332d1..e94c6c03 100644 --- a/jsonrpc/Power.json +++ b/jsonrpc/Power.json @@ -2,6 +2,7 @@ "$schema": "interface.schema.json", "jsonrpc": "2.0", "info": { + "version": "1.0.0", "title": "Power API", "class": "Power", "description": "Power JSON-RPC interface" diff --git a/jsonrpc/Provisioning.json b/jsonrpc/Provisioning.json index bc6fd25a..f1937749 100644 --- a/jsonrpc/Provisioning.json +++ b/jsonrpc/Provisioning.json @@ -2,6 +2,7 @@ "$schema": "interface.schema.json", "jsonrpc": "2.0", "info": { + "version": "1.0.0", "title": "Provisioning API", "class": "Provisioning", "description": "Provisioning JSON-RPC interface" diff --git a/jsonrpc/RemoteControl.json b/jsonrpc/RemoteControl.json index b00164f9..d5dbdd4a 100644 --- a/jsonrpc/RemoteControl.json +++ b/jsonrpc/RemoteControl.json @@ -2,6 +2,7 @@ "$schema": "interface.schema.json", "jsonrpc": "2.0", "info": { + "version": "1.0.0", "title": "Remote Control API", "class": "RemoteControl", "description": "RemoteControl JSON-RPC interface" diff --git a/jsonrpc/SecureShellServer.json b/jsonrpc/SecureShellServer.json index 55dc6d9a..ec2642c7 100644 --- a/jsonrpc/SecureShellServer.json +++ b/jsonrpc/SecureShellServer.json @@ -2,6 +2,7 @@ "$schema": "interface.schema.json", "jsonrpc": "2.0", "info": { + "version": "1.0.0", "title": "SecureShell Server API", "class": "SecureShellServer", "description": "SecureShell Server JSON-RPC interface" @@ -10,7 +11,7 @@ "$ref": "common.json" }, "methods": { - "SecureShellServer.1.get_active_sessions_count": { + "getactivesessionscount": { "summary": "Get count of currently active SSH client sessions maintained by SecureShell SSH Service.", "description": "With this method SecureShell SSH service shall provide the count of active SSH client sessions.", "result": { @@ -30,7 +31,7 @@ } ] }, - "SecureShellServer.1.get_active_sessions_info": { + "getactivesessionsinfo": { "summary": "Get details of currently active SSH client sessions maintained by SecureShell SSH Service.", "description": "With this method SecureShell SSH service shall provide the full details of active SSH client sessions.", "readonly": true, @@ -76,7 +77,7 @@ } ] }, - "SecureShellServer.1.close_client_session": { + "closeclientsession": { "summary": "Close and active SSH client session.", "description": "With this method SecureShell an active SSH client session shall be closed.", "params": { diff --git a/jsonrpc/SecurityAgent.json b/jsonrpc/SecurityAgent.json index f2adf377..e2a620e4 100644 --- a/jsonrpc/SecurityAgent.json +++ b/jsonrpc/SecurityAgent.json @@ -2,6 +2,7 @@ "$schema": "interface.schema.json", "jsonrpc": "2.0", "info": { + "version": "1.0.0", "title": "Security Agent API", "class": "SecurityAgent", "description": "Security Agent JSON-RPC interface" diff --git a/jsonrpc/Spark.json b/jsonrpc/Spark.json index bb60f0b1..3e9b2dc4 100644 --- a/jsonrpc/Spark.json +++ b/jsonrpc/Spark.json @@ -2,6 +2,7 @@ "$schema": "interface.schema.json", "jsonrpc": "2.0", "info": { + "version": "1.0.0", "title": "Spark API", "class": "Spark", "format": "uncompliant-extended", diff --git a/jsonrpc/StateControl.json b/jsonrpc/StateControl.json index 616dcead..737a26f5 100644 --- a/jsonrpc/StateControl.json +++ b/jsonrpc/StateControl.json @@ -2,6 +2,7 @@ "$schema": "interface.schema.json", "jsonrpc": "2.0", "info": { + "version": "1.0.0", "title": "StateControl API", "class": "StateControl", "format": "uncompliant-extended", diff --git a/jsonrpc/Streamer.json b/jsonrpc/Streamer.json index 095a203e..7751bdc2 100644 --- a/jsonrpc/Streamer.json +++ b/jsonrpc/Streamer.json @@ -2,6 +2,7 @@ "$schema": "interface.schema.json", "jsonrpc": "2.0", "info": { + "version": "1.0.0", "title": "Streamer API", "class": "Streamer", "format": "uncompliant-extended", diff --git a/jsonrpc/SubsystemControl.json b/jsonrpc/SubsystemControl.json index 2da74b72..09519d5d 100644 --- a/jsonrpc/SubsystemControl.json +++ b/jsonrpc/SubsystemControl.json @@ -2,6 +2,7 @@ "$schema": "interface.schema.json", "jsonrpc": "2.0", "info": { + "version": "1.0.0", "title": "Subsystem Control API", "class": "SubsystemControl", "format": "uncompliant-collapsed", diff --git a/jsonrpc/SystemCommands.json b/jsonrpc/SystemCommands.json index dd6299ed..f0d32cc1 100644 --- a/jsonrpc/SystemCommands.json +++ b/jsonrpc/SystemCommands.json @@ -2,6 +2,7 @@ "$schema": "interface.schema.json", "jsonrpc": "2.0", "info": { + "version": "1.0.0", "title": "System Commands API", "class": "SystemCommands", "description": "System Commands JSON-RPC interface" diff --git a/jsonrpc/TestController.json b/jsonrpc/TestController.json index 0f4491d3..da9b75b6 100644 --- a/jsonrpc/TestController.json +++ b/jsonrpc/TestController.json @@ -2,6 +2,7 @@ "$schema": "interface.schema.json", "jsonrpc": "2.0", "info": { + "version": "1.0.0", "title": "Test Controller API", "class": "TestController", "description": "TestController JSON-RPC interface" diff --git a/jsonrpc/TestUtility.json b/jsonrpc/TestUtility.json index 69d13f00..e7bea2ed 100644 --- a/jsonrpc/TestUtility.json +++ b/jsonrpc/TestUtility.json @@ -2,6 +2,7 @@ "$schema": "interface.schema.json", "jsonrpc": "2.0", "info": { + "version": "1.0.0", "title": "Test Utility API", "class": "TestUtility", "format": "uncompliant-extended", @@ -10,6 +11,40 @@ "common": { "$ref": "common.json" }, + "definitions": { + "parameter": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Test command parameter", + "example": "memory" + }, + "type": { + "type": "string", + "enum": [ + "Number", + "String", + "Boolean", + "Object", + "Symbol" + ], + "description": "Test command parameter type", + "example": "Number" + }, + "comment": { + "type": "string", + "description": "Test command parameter description", + "example": "Memory statistics in KB" + } + }, + "required": [ + "name", + "type", + "comment" + ] + } + }, "methods": { "runmemory": { "summary": "Runs a memory test command", @@ -161,70 +196,14 @@ "properties": { "input": { "type": "array", + "description": "Input parameter list", "items": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Test command input parameter", - "example": "memory" - }, - "type": { - "type": "string", - "enum": [ - "Number", - "String", - "Boolean", - "Object", - "Symbol" - ], - "description": "Test command input parameter type", - "example": "Number" - }, - "comment": { - "type": "string", - "description": "Test command input parameter description", - "example": "Memory statistics in KB" - } - }, - "required": [ - "name", - "type", - "comment" - ] + "$ref": "#/definitions/parameter" } }, "output": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Test command output parameter", - "example": "memory" - }, - "type": { - "type": "string", - "description": "Test command output parameter type", - "enum": [ - "Number", - "String", - "Boolean", - "Object", - "Symbol" - ], - "example": "Number" - }, - "comment": { - "type": "string", - "description": "Test command output parameter description", - "example": "Memory statistics in KB" - } - }, - "required": [ - "name", - "type", - "comment" - ] + "description": "Output parameter list", + "$ref": "#/definitions/parameter" } }, "required": [ diff --git a/jsonrpc/TimeSync.json b/jsonrpc/TimeSync.json index d53b0733..41e57dc5 100644 --- a/jsonrpc/TimeSync.json +++ b/jsonrpc/TimeSync.json @@ -2,6 +2,7 @@ "$schema": "interface.schema.json", "jsonrpc": "2.0", "info": { + "version": "1.0.0", "title": "Time Sync API", "class": "TimeSync", "format": "uncompliant-extended", diff --git a/jsonrpc/TraceControl.json b/jsonrpc/TraceControl.json index e2066de4..6b98c17e 100644 --- a/jsonrpc/TraceControl.json +++ b/jsonrpc/TraceControl.json @@ -2,6 +2,7 @@ "$schema": "interface.schema.json", "jsonrpc": "2.0", "info": { + "version": "1.0.0", "title": "Trace Control API", "class": "TraceControl", "description": "TraceControl JSON-RPC interface" @@ -79,6 +80,7 @@ }, "remote": { "type": "object", + "description": "Config attribute (Remote)", "properties": { "port": { "description": "Config attribute (port)", @@ -99,6 +101,7 @@ }, "settings": { "type": "array", + "description": "Trace info list", "items": { "$ref": "#/definitions/trace" } diff --git a/jsonrpc/WebKitBrowser.json b/jsonrpc/WebKitBrowser.json index fb922ea2..984665f6 100644 --- a/jsonrpc/WebKitBrowser.json +++ b/jsonrpc/WebKitBrowser.json @@ -2,6 +2,7 @@ "$schema": "interface.schema.json", "jsonrpc": "2.0", "info": { + "version": "1.0.0", "title": "WebKit Browser API", "class": "WebKitBrowser", "format": "uncompliant-collapsed", From 596164e149304bd8ab425098c58163b3707ed712 Mon Sep 17 00:00:00 2001 From: HaseenaSainul Date: Fri, 12 Jan 2024 02:41:07 -0500 Subject: [PATCH 2/6] Proxy/JsonGenerator warning fixes: IZigWave.h --- interfaces/IZigWave.h | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/interfaces/IZigWave.h b/interfaces/IZigWave.h index 2d82143c..dda39308 100644 --- a/interfaces/IZigWave.h +++ b/interfaces/IZigWave.h @@ -37,11 +37,11 @@ namespace WPEFramework { CONTROLLER }; - uint32_t Parent /* @brief address of the Parent */; - uint32_t Address /* @brief address of the device */; - type Type /* @brief type of the device */; - uint16_t Manufacturer /* @brief manufactured of this device */; - string Metadata /* metadata associated with this device */; + uint32_t Parent /* @brief Address of the Parent */; + uint32_t Address /* @brief Address of the device */; + type Type /* @brief Type of the device */; + uint16_t Manufacturer /* @brief Manufactured of this device */; + string Metadata /* @brief Metadata associated with this device */; }; struct Controller { @@ -82,7 +82,7 @@ namespace WPEFramework { // @return: The success of the unbinding action. virtual Core::hresult Unbind(const uint32_t source, const uint32_t destination) = 0; - // @brief return the Metadata associated with the controller for this instance. + // @brief Return the Metadata associated with the controller for this instance. // @return: The success of the Metdata action. virtual Core::hresult Metadata(Controller& metadata /* @out */) const = 0; }; From e8417c2922f45128701a4499187193f78cc95b5f Mon Sep 17 00:00:00 2001 From: HaseenaSainul Date: Fri, 12 Jan 2024 05:45:25 -0500 Subject: [PATCH 3/6] Proxy/JsonGenerator warning fixes: IOCDM.h & ICryptography.h --- interfaces/ICryptography.h | 12 ++++++------ interfaces/IOCDM.h | 8 ++++---- interfaces/IZigWave.h | 12 ++++++------ 3 files changed, 16 insertions(+), 16 deletions(-) diff --git a/interfaces/ICryptography.h b/interfaces/ICryptography.h index 02aa108d..10be9a21 100644 --- a/interfaces/ICryptography.h +++ b/interfaces/ICryptography.h @@ -54,7 +54,7 @@ namespace Exchange { enum { ID = ID_CRYPTOGRAPHY_RANDOM }; // Generates an array of cryptographically strong random bytes - virtual uint16_t Generate(const uint16_t length, uint8_t data[] /* @out @length:length */) const = 0; + virtual uint16_t Generate(const uint16_t length, uint8_t data[] /* @out @length:return @maxlength:length */) const = 0; }; struct EXTERNAL IHash : virtual public Core::IUnknown { @@ -65,7 +65,7 @@ namespace Exchange { virtual uint32_t Ingest(const uint32_t length /* @restrict:4M-1 */, const uint8_t data[] /* @in @length:length */) = 0; // Calculate the hash from all ingested data - virtual uint8_t Calculate(const uint8_t maxLength, uint8_t data[] /* @out @length:maxLength */) = 0; + virtual uint8_t Calculate(const uint8_t maxLength, uint8_t data[] /* @out @length:return @maxlength:maxLength */) = 0; }; struct EXTERNAL ICipher : virtual public Core::IUnknown { @@ -79,12 +79,12 @@ namespace Exchange { // Encrypt data virtual int32_t Encrypt(const uint8_t ivLength, const uint8_t iv[] /* @in @length:ivLength */, const uint32_t inputLength /* @restrict:4M-1 */, const uint8_t input[] /* @in @length:inputLength */, - const uint32_t maxOutputLength, uint8_t output[] /* @out @length:maxOutputLength */) const = 0; + const uint32_t maxOutputLength, uint8_t output[] /* @out @length:return @maxlength:maxOutputLength */) const = 0; // Decrypt data virtual int32_t Decrypt(const uint8_t ivLength, const uint8_t iv[] /* @in @length:ivLength */, const uint32_t inputLength /* @restrict:4M-1 */, const uint8_t input[] /* @in @length:inputLength */, - const uint32_t maxOutputLength, uint8_t output[] /* @out @length:maxOutputLength */) const = 0; + const uint32_t maxOutputLength, uint8_t output[] /* @out @length:return @maxlength:maxOutputLength */) const = 0; }; struct EXTERNAL IDiffieHellman : virtual public Core::IUnknown { @@ -140,13 +140,13 @@ namespace Exchange { virtual uint32_t Import(const uint16_t length, const uint8_t blob[] /* @in @length:length */) = 0; // Export unencrypted data blob out of the vault (returns blob ID), only public blobs are exportable - virtual uint16_t Export(const uint32_t id, const uint16_t maxLength, uint8_t blob[] /* @out @length:maxLength */) const = 0; + virtual uint16_t Export(const uint32_t id, const uint16_t maxLength, uint8_t blob[] /* @out @length:return @maxlength:maxLength */) const = 0; // Set encrypted data blob in the vault (returns blob ID) virtual uint32_t Set(const uint16_t length, const uint8_t blob[] /* @in @length:length */) = 0; // Get encrypted data blob out of the vault (data identified by ID, returns size of the retrieved data) - virtual uint16_t Get(const uint32_t id, const uint16_t maxLength, uint8_t blob[] /* @out @length:maxLength */) const = 0; + virtual uint16_t Get(const uint32_t id, const uint16_t maxLength, uint8_t blob[] /* @out @length:return @maxlength:maxLength */) const = 0; // Generates a random data blob of specified length in the vault (returns blob ID) virtual uint32_t Generate(const uint16_t length) = 0; diff --git a/interfaces/IOCDM.h b/interfaces/IOCDM.h index 5acdc16c..0f69cd62 100644 --- a/interfaces/IOCDM.h +++ b/interfaces/IOCDM.h @@ -165,7 +165,7 @@ struct ISessionExt : virtual public Core::IUnknown { virtual OCDM_RESULT StoreLicenseData(const uint8_t licenseData[] /* @in @length:licenseDataSize */, uint16_t licenseDataSize, - uint8_t* secureStopId /* @out @length:16 */) + uint8_t* secureStopId /* @out @length:16 @maxlength:licenseDataSize */) = 0; virtual OCDM_RESULT SelectKeyId(const uint8_t keyLength, @@ -225,7 +225,7 @@ struct IAccessorOCDM : virtual public Core::IUnknown { virtual uint32_t ResetSecureStops(const std::string& keySystem) = 0; virtual OCDM_RESULT GetSecureStopIds(const std::string& keySystem, - uint8_t ids[] /* @out @length:idsLength */, uint16_t idsLength, + uint8_t ids[] /* @out @length:16 @maxlength:idsLength */, uint16_t idsLength, uint32_t& count /* @inout */) = 0; @@ -247,12 +247,12 @@ struct IAccessorOCDM : virtual public Core::IUnknown { virtual OCDM_RESULT DeleteSecureStore(const std::string& keySystem) = 0; virtual OCDM_RESULT GetKeyStoreHash(const std::string& keySystem, - uint8_t keyStoreHash[] /* @out @length:keyStoreHashLength */, + uint8_t keyStoreHash[] /* @out @length:16 @maxlength:keyStoreHashLength */, uint16_t keyStoreHashLength) = 0; virtual OCDM_RESULT GetSecureStoreHash(const std::string& keySystem, - uint8_t secureStoreHash[] /* @out @length:secureStoreHashLength */, + uint8_t secureStoreHash[] /* @out @length:16 @maxlength:secureStoreHashLength */, uint16_t secureStoreHashLength) = 0; }; diff --git a/interfaces/IZigWave.h b/interfaces/IZigWave.h index dda39308..767a151b 100644 --- a/interfaces/IZigWave.h +++ b/interfaces/IZigWave.h @@ -45,12 +45,12 @@ namespace WPEFramework { }; struct Controller { - bool Permutable; - string Port; - uint32_t Id; - uint8_t Major; - uint8_t Minor; - uint16_t Nodes; + bool Permutable /* @brief Permutable or not */; + string Port /* @brief Port number */; + uint32_t Id /* @brief Controller Id */; + uint8_t Major /* @brief Major number */; + uint8_t Minor /* @brief Minor number */; + uint16_t Nodes /* @brief Number of Nodes */; }; using IDeviceIterator = RPC::IIteratorType; From 166d4ca51b7a0114f207726096160c769217d304 Mon Sep 17 00:00:00 2001 From: HaseenaSainul Date: Fri, 12 Jan 2024 05:54:15 -0500 Subject: [PATCH 4/6] Proxy/JsonGenerator warning fixes: IOCDM.h --- interfaces/IOCDM.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/interfaces/IOCDM.h b/interfaces/IOCDM.h index 0f69cd62..322a8f2e 100644 --- a/interfaces/IOCDM.h +++ b/interfaces/IOCDM.h @@ -165,7 +165,7 @@ struct ISessionExt : virtual public Core::IUnknown { virtual OCDM_RESULT StoreLicenseData(const uint8_t licenseData[] /* @in @length:licenseDataSize */, uint16_t licenseDataSize, - uint8_t* secureStopId /* @out @length:16 @maxlength:licenseDataSize */) + uint8_t* secureStopId /* @out @length:16 */) = 0; virtual OCDM_RESULT SelectKeyId(const uint8_t keyLength, From eae747a5f0ba9af3f35f02f14863c860f9462caf Mon Sep 17 00:00:00 2001 From: HaseenaSainul Date: Fri, 12 Jan 2024 07:34:31 -0500 Subject: [PATCH 5/6] Proxy/JsonGenerator warning fixes: IOCDM.h --- interfaces/IOCDM.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/interfaces/IOCDM.h b/interfaces/IOCDM.h index 322a8f2e..5acdc16c 100644 --- a/interfaces/IOCDM.h +++ b/interfaces/IOCDM.h @@ -225,7 +225,7 @@ struct IAccessorOCDM : virtual public Core::IUnknown { virtual uint32_t ResetSecureStops(const std::string& keySystem) = 0; virtual OCDM_RESULT GetSecureStopIds(const std::string& keySystem, - uint8_t ids[] /* @out @length:16 @maxlength:idsLength */, uint16_t idsLength, + uint8_t ids[] /* @out @length:idsLength */, uint16_t idsLength, uint32_t& count /* @inout */) = 0; @@ -247,12 +247,12 @@ struct IAccessorOCDM : virtual public Core::IUnknown { virtual OCDM_RESULT DeleteSecureStore(const std::string& keySystem) = 0; virtual OCDM_RESULT GetKeyStoreHash(const std::string& keySystem, - uint8_t keyStoreHash[] /* @out @length:16 @maxlength:keyStoreHashLength */, + uint8_t keyStoreHash[] /* @out @length:keyStoreHashLength */, uint16_t keyStoreHashLength) = 0; virtual OCDM_RESULT GetSecureStoreHash(const std::string& keySystem, - uint8_t secureStoreHash[] /* @out @length:16 @maxlength:secureStoreHashLength */, + uint8_t secureStoreHash[] /* @out @length:secureStoreHashLength */, uint16_t secureStoreHashLength) = 0; }; From 0bc9358b1ce6dbb5f8fd867f9615a4642ad34a85 Mon Sep 17 00:00:00 2001 From: HaseenaSainul Date: Mon, 15 Jan 2024 03:18:18 -0500 Subject: [PATCH 6/6] Remove EXECULDED list, since this will be handling from generator --- CMakeLists.txt | 7 ------- definitions/CMakeLists.txt | 1 - interfaces/CMakeLists.txt | 1 - 3 files changed, 9 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 85139155..3addeb79 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -24,13 +24,6 @@ find_package(WPEFramework) set(INTERFACES_PATTERNS "I*.h" CACHE STRING "Patterns matching files for which stubs should be generated") set(JSONRPC_PATTERNS "*.json" CACHE STRING "Patterns matching files for which json stubs should be generated") -file(GLOB EXCLUDED_FILES - "${CMAKE_SOURCE_DIR}/interfaces/ICommand.h" - "${CMAKE_SOURCE_DIR}/interfaces/ICompositionBuffer.h" - "${CMAKE_SOURCE_DIR}/interfaces/IDRM.h" - "${CMAKE_SOURCE_DIR}/interfaces/IExternalBase.h" - ) - if(ENABLE_STRICT_COMPILER_SETTINGS) if(CMAKE_CXX_COMPILER_ID MATCHES "Clang") message(FATAL_ERROR "Compiling with Clang") diff --git a/definitions/CMakeLists.txt b/definitions/CMakeLists.txt index 51a0a415..9a549df4 100644 --- a/definitions/CMakeLists.txt +++ b/definitions/CMakeLists.txt @@ -37,7 +37,6 @@ file(GLOB JSON_FILE ${JSONRPC_PATTERNS}) separate_arguments(INTERFACES_PATTERNS) list(TRANSFORM INTERFACES_PATTERNS PREPEND "${CMAKE_SOURCE_DIR}/interfaces/") file(GLOB INTERFACE_FILE ${INTERFACES_PATTERNS}) -list(REMOVE_ITEM INTERFACE_FILE ${EXCLUDED_FILES}) set(PUBLIC_HEADERS "definitions.h" "ValuePoint.h") diff --git a/interfaces/CMakeLists.txt b/interfaces/CMakeLists.txt index 3a89e183..1649dd29 100644 --- a/interfaces/CMakeLists.txt +++ b/interfaces/CMakeLists.txt @@ -36,7 +36,6 @@ endif() separate_arguments(INTERFACES_PATTERNS) file(GLOB INTERFACES_HEADERS ${INTERFACES_PATTERNS}) -list(REMOVE_ITEM INTERFACES_HEADERS ${EXCLUDED_FILES}) ProxyStubGenerator(INPUT "${INTERFACES_HEADERS}" OUTDIR "${CMAKE_CURRENT_BINARY_DIR}/generated" INCLUDE_PATH ${GENERATOR_SEARCH_PATH}) file(GLOB JSON_HEADERS json/*.h)