AlexaClientSDK  1.25.0
A cross-platform, modular SDK for interacting with the Alexa Voice Service
Namespaces | Functions
JSONUtils.h File Reference
#include <cstdint>
#include <map>
#include <string>
#include <vector>
#include <rapidjson/document.h>
#include "AVSCommon/Utils/Logger/LoggerUtils.h"
Include dependency graph for JSONUtils.h:

Go to the source code of this file.

Namespaces

 alexaClientSDK
 Whether or not curl logs should be emitted.
 
 alexaClientSDK::avsCommon
 
 alexaClientSDK::avsCommon::utils
 
 alexaClientSDK::avsCommon::utils::json
 
 alexaClientSDK::avsCommon::utils::json::jsonUtils
 

Functions

static std::string alexaClientSDK::avsCommon::utils::json::jsonUtils::getTag ()
 
bool alexaClientSDK::avsCommon::utils::json::jsonUtils::findNode (const rapidjson::Value &jsonNode, const std::string &key, rapidjson::Value::ConstMemberIterator *iteratorPtr)
 
bool alexaClientSDK::avsCommon::utils::json::jsonUtils::parseJSON (const std::string &jsonContent, rapidjson::Document *document)
 
bool alexaClientSDK::avsCommon::utils::json::jsonUtils::convertToValue (const rapidjson::Value &documentNode, std::string *value)
 
bool alexaClientSDK::avsCommon::utils::json::jsonUtils::convertToValue (const rapidjson::Value &documentNode, int64_t *value)
 
bool alexaClientSDK::avsCommon::utils::json::jsonUtils::convertToValue (const rapidjson::Value &documentNode, uint64_t *value)
 
bool alexaClientSDK::avsCommon::utils::json::jsonUtils::convertToValue (const rapidjson::Value &documentNode, bool *value)
 
bool alexaClientSDK::avsCommon::utils::json::jsonUtils::convertToValue (const rapidjson::Value &documentNode, double *value)
 
template<typename T >
bool alexaClientSDK::avsCommon::utils::json::jsonUtils::retrieveValue (const rapidjson::Value &jsonNode, const std::string &key, T *value)
 
template<typename T >
bool alexaClientSDK::avsCommon::utils::json::jsonUtils::retrieveValue (const std::string jsonString, const std::string &key, T *value)
 
bool alexaClientSDK::avsCommon::utils::json::jsonUtils::jsonArrayExists (const rapidjson::Value &parsedDocument, const std::string &key)
 
template<class CollectionT >
CollectionT alexaClientSDK::avsCommon::utils::json::jsonUtils::retrieveStringArray (const std::string &jsonString, const std::string &key)
 
template<class CollectionT >
CollectionT alexaClientSDK::avsCommon::utils::json::jsonUtils::retrieveStringArray (const std::string &jsonString)
 
template<class CollectionT >
CollectionT alexaClientSDK::avsCommon::utils::json::jsonUtils::retrieveStringArray (const rapidjson::Value &value)
 
template<class CollectionT >
std::string alexaClientSDK::avsCommon::utils::json::jsonUtils::convertToJsonString (const CollectionT &elements)
 
std::map< std::string, std::string > alexaClientSDK::avsCommon::utils::json::jsonUtils::retrieveStringMap (const rapidjson::Value &value, const std::string &key)
 
void alexaClientSDK::avsCommon::utils::json::jsonUtils::retrieveStringMapFromArray (const rapidjson::Value &value, const std::string &key, std::map< std::string, std::string > &elements)
 
bool alexaClientSDK::avsCommon::utils::json::jsonUtils::retrieveArrayOfStringMapFromArray (const rapidjson::Value &value, const std::string &key, std::vector< std::map< std::string, std::string >> &elements)
 
template<>
std::vector< std::string > alexaClientSDK::avsCommon::utils::json::jsonUtils::retrieveStringArray< std::vector< std::string > > (const std::string &jsonString, const std::string &key)
 
template<>
std::vector< std::string > alexaClientSDK::avsCommon::utils::json::jsonUtils::retrieveStringArray< std::vector< std::string > > (const std::string &jsonString)
 
template<>
std::vector< std::string > alexaClientSDK::avsCommon::utils::json::jsonUtils::retrieveStringArray< std::vector< std::string > > (const rapidjson::Value &value)
 
template<>
std::string alexaClientSDK::avsCommon::utils::json::jsonUtils::convertToJsonString< std::vector< std::string > > (const std::vector< std::string > &elements)
 

AlexaClientSDK 1.25.0 - Copyright 2016-2021 Amazon.com, Inc. or its affiliates. All Rights Reserved. Licensed under the Apache License, Version 2.0