AlexaClientSDK
3.0.0
A cross-platform, modular SDK for interacting with the Alexa Voice Service
|
#include <SQLiteMiscStorage.h>
Public Member Functions | |
~SQLiteMiscStorage () | |
SQLiteDatabase & | getDatabase () |
Provides reference to a database. More... | |
MiscStorageInterface method overrides. | |
bool | createDatabase () override |
bool | open () override |
bool | isOpened () override |
void | close () override |
bool | createTable (const std::string &componentName, const std::string &tableName, KeyType keyType, ValueType valueType) override |
bool | clearTable (const std::string &componentName, const std::string &tableName) override |
bool | deleteTable (const std::string &componentName, const std::string &tableName) override |
bool | get (const std::string &componentName, const std::string &tableName, const std::string &key, std::string *value) override |
bool | add (const std::string &componentName, const std::string &tableName, const std::string &key, const std::string &value) override |
bool | update (const std::string &componentName, const std::string &tableName, const std::string &key, const std::string &value) override |
bool | put (const std::string &componentName, const std::string &tableName, const std::string &key, const std::string &value) override |
bool | remove (const std::string &componentName, const std::string &tableName, const std::string &key) override |
bool | tableEntryExists (const std::string &componentName, const std::string &tableName, const std::string &key, bool *tableEntryExistsValue) override |
bool | tableExists (const std::string &componentName, const std::string &tableName, bool *tableExistsValue) override |
bool | load (const std::string &componentName, const std::string &tableName, std::unordered_map< std::string, std::string > *valueContainer) override |
Public Member Functions inherited from alexaClientSDK::avsCommon::sdkInterfaces::storage::MiscStorageInterface | |
virtual | ~MiscStorageInterface ()=default |
Static Public Member Functions | |
static std::shared_ptr< avsCommon::sdkInterfaces::storage::MiscStorageInterface > | createMiscStorageInterface (const std::shared_ptr< avsCommon::utils::configuration::ConfigurationNode > &configurationRoot) |
static std::unique_ptr< SQLiteMiscStorage > | create (const avsCommon::utils::configuration::ConfigurationNode &configurationRoot) |
static std::unique_ptr< SQLiteMiscStorage > | create (const std::string &databasePath) |
Additional Inherited Members | |
Public Types inherited from alexaClientSDK::avsCommon::sdkInterfaces::storage::MiscStorageInterface | |
enum | KeyType { KeyType::UNKNOWN_KEY, KeyType::STRING_KEY } |
The type of the key column in Misc DB. More... | |
enum | ValueType { ValueType::UNKNOWN_VALUE, ValueType::STRING_VALUE } |
The type of the value column in Misc DB. More... | |
A class that provides a SQLite implementation of MiscStorage database.
alexaClientSDK::storage::sqliteStorage::SQLiteMiscStorage::~SQLiteMiscStorage | ( | ) |
Destructor
|
overridevirtual |
Adds a value in the table.
componentName | The component name. |
tableName | The table name. |
key | The key for the table entry. |
value | The value of the table entry. |
value
should be a string literal. true
If the value was added ok, false
if not. Implements alexaClientSDK::avsCommon::sdkInterfaces::storage::MiscStorageInterface.
|
overridevirtual |
Removes all the entries in the table. The table itself will continue to exist.
componentName | The component name. |
tableName | The table name. |
true
If the table is cleared ok, false
if the table couldn't be cleared. Implements alexaClientSDK::avsCommon::sdkInterfaces::storage::MiscStorageInterface.
|
overridevirtual |
Close the currently open database, if one is open.
Implements alexaClientSDK::avsCommon::sdkInterfaces::storage::MiscStorageInterface.
|
static |
Factory method for creating a storage object for a SQLite database. Note that the actual database will not be created by this function.
configurationRoot | The global config object. |
|
static |
Factory method for creating a storage object for a SQLite database. Note that the actual database will not be created by this function.
[in] | databasePath | Path to database |
|
overridevirtual |
Creates a new database. If a database is already being handled by this object or there is another internal error, then this function returns false.
true
If the database is created ok, or false
if a database is already being handled by this object or there is a problem creating the database. Implements alexaClientSDK::avsCommon::sdkInterfaces::storage::MiscStorageInterface.
|
static |
Factory method for creating a storage object for a SQLite database. Note that the actual database will not be created by this function.
configurationRoot | The global config object. |
|
overridevirtual |
Create a simple key/value pair table. If there is a problem creating the table, this function returns false.
componentName | The component name. |
tableName | The table name. |
keyType | The key type. |
valueType | The value type. |
true
If the table is created ok, false
if the table couldn't be created. Implements alexaClientSDK::avsCommon::sdkInterfaces::storage::MiscStorageInterface.
|
overridevirtual |
Deletes the table. The table must be empty before you can delete the table.
componentName | The component name. |
tableName | The table name. |
true
If the table is deleted ok, false
if the table couldn't be deleted. Implements alexaClientSDK::avsCommon::sdkInterfaces::storage::MiscStorageInterface.
|
overridevirtual |
Gets the value associated with a key in the table.
componentName | The component name. | |
tableName | The table name. | |
key | The key for the table entry. | |
[out] | value | The value associated with the key in the table. |
false
if not. Implements alexaClientSDK::avsCommon::sdkInterfaces::storage::MiscStorageInterface.
SQLiteDatabase& alexaClientSDK::storage::sqliteStorage::SQLiteMiscStorage::getDatabase | ( | ) |
Provides reference to a database.
This method provides a reference to inner database object for database maintenance operations. The access to the database is not serialized against parallel access and should be used only when it is guaranteed there are no other consumers of the objects.
|
overridevirtual |
Returns true if this object is already managing an open database, false otherwise.
Implements alexaClientSDK::avsCommon::sdkInterfaces::storage::MiscStorageInterface.
|
overridevirtual |
Loads the table entries into a map.
componentName | The component name. | |
tableName | The table name. | |
[out] | valueContainer | The container for the values in the table. |
true
If the values were loaded ok, false
if not. Implements alexaClientSDK::avsCommon::sdkInterfaces::storage::MiscStorageInterface.
|
overridevirtual |
Open an existing database. If this object is already managing an open database, or there is a problem opening the database, this function returns false.
true
If the database is opened ok, false
if this object is already managing an open database, or if there is another internal reason the database could not be opened. Implements alexaClientSDK::avsCommon::sdkInterfaces::storage::MiscStorageInterface.
|
overridevirtual |
Puts a value in the table. Basically, this will add the entry for the key if it doesn't already exist, or it will update the entry for the key if it already exists.
componentName | The component name. |
tableName | The table name. |
key | The key for the table entry. |
value | The value of the table entry. |
value
should be a literal string. true
If the value was put ok, false
if not. Implements alexaClientSDK::avsCommon::sdkInterfaces::storage::MiscStorageInterface.
|
overridevirtual |
Removes a value from the table.
componentName | The component name. |
tableName | The table name. |
key | The key for the table entry. |
true
If the value was removed ok, false
if not. Implements alexaClientSDK::avsCommon::sdkInterfaces::storage::MiscStorageInterface.
|
overridevirtual |
Checks if a key exists in the table.
componentName | The component name. | |
tableName | The table name. | |
key | The key for the table entry. | |
[out] | tableEntryExistsValue | True if the key exists, false if not. |
true
if the table entry's existence was found out ok, else false.. Implements alexaClientSDK::avsCommon::sdkInterfaces::storage::MiscStorageInterface.
|
overridevirtual |
Checks if a table exists in the DB.
componentName | The component name. | |
tableName | The table name. | |
[out] | tableExistsValue | True if the table exists, false if not. |
true
if the table's existence was found out ok, else false. Implements alexaClientSDK::avsCommon::sdkInterfaces::storage::MiscStorageInterface.
|
overridevirtual |
Updates a value in the table.
tableName | The table name. |
key | The key for the table entry. |
value | The value of the table entry. |
value
should be a literal string. true
If the value was updated ok, false
if not (including if the entry does not exist). Implements alexaClientSDK::avsCommon::sdkInterfaces::storage::MiscStorageInterface.
AlexaClientSDK 3.0.0 - Copyright 2016-2022 Amazon.com, Inc. or its affiliates. All Rights Reserved. Licensed under the Apache License, Version 2.0