Основные методы, используемые в Sailfish-фреймворке.

Аутентификация
пользователя по логину и паролю
Для аутентификации пользователя по логину и паролю используйте метод auth:
std::string hhive::HHive::auth (
std::string login,
std::string password
)
Аргументы:
login. Логин пользователя;
password. Пароль пользователя.
Метод возвращает JSON в виде строки с ответом сервера.

Аутентификация
пользователя со сменой пароля
Для аутентификации пользователя со сменой пароля используйте метод auth:
std::string hhive::HHive:: authWithChangePassword
(
std::string login,
std::string password,
std::string newPassword,
std::string confirmNewPassword,
)
Аргументы:
login. Логин пользователя;
password. Пароль пользователя;
newPassword. Новый пароль пользователя;
confirmNewPassword. Повтор нового пароля пользователя.
Метод возвращает JSON в виде строки с ответом сервера.
Для получения списка сертификатов используйте метод getDSSCertificates:
std::string hhive::HHive::getDSSCertificates (
std::string password
)
Аргументы:
password. DSS пароль пользователя.
Метод возвращает JSON в виде строки с ответом сервера.
Для подписывания ячейки используйте метод signDSSCertificate:
std::string hhive::HHive::signDSSCertificate (
std::string resource,
std::string tableName,
std::string requestParams,
std::string column,
std::string row,
std::string password,
std::string certificateID,
std::string certificatePin
)
Аргументы:
resource. Название ресурса;
tableName. Имя таблицы с кэшем на сервере;
requestParams. Параметры, с которыми вызывался запрос на получение данных кэшируемого ресурса;
column. Имя столбца в таблице;
hhiveID. Номер строки;
password. DSS пароль пользователя;
certificateID. ID сертификата;
certificatePin. Pin сертификата.
Метод возвращает JSON в виде строки с ответом сервера.
Для задания URL сервера используйте метод setUrl:
void hhive::HHive::setUrl (
std::string url
)
Аргументы:
url. URL сервера.
Для получения URL сервера используйте метод url:
std::string hhive::HHive::url (
)
const
Для задания версии API используйте метод setApi:
void hhive::HHive::setApi (
std::string api
)
Аргументы:
api. Версия API.
Для задания названия приложения используйте метод setApp:
void hhive::HHive::setApp (
std::string app
)
Аргументы:
app. Название приложения.
Для подключения к базе данных используйте метод openDatabase:
bool hhive::HHive::openDatabase (
std::string path,
std::string key
)
Аргументы:
path. Путь к базе данных, содержащий имя базы;
key. Пароль к базе данных.
Примечание. Пароль может быть пустой строкой.
Метод возвращает значение True в случае успешного подключения, иначе False.

Выполнение
запроса в открытой базе данных
Для выполнения запроса в открытой базе данных используйте метод query:
std::string hhive::HHive::query (
std::string database,
std::string query
)
Аргументы:
database. Путь к базе данный, содержащий имя базы;
query. SQL-запрос.

Получение
списка таблиц ресурса
Для получения списка таблиц ресурса используйте метод getTablesName:
std::string hhive::HHive::getTablesName ( std::string database,
std::string resource,
std::string params,
std::string tableName
)
Аргументы:
database. Путь к базе, содержащий имя базы;
resource. Имя ресурса;
params. Параметры, которые использовались для получения данных по ресурсу;
tableName. Имя таблицы на сервере. Используется для получения конкретной таблицы в многотабличном ресурсе.
Метод возвращает JSON в виде строки со списком имен таблиц.

Удаление
сохраненных данных ресурса
Для удаления сохранённой версии кэша по параметрам из базы данных используйте метод dropCache:
std::string hhive::HHive::dropCache ( std::string database,
std::string resource,
std::string params
)
Аргументы:
database. Путь к базе, содержащий имя базы;
resource. Имя ресурса;
params. Параметры, которые использовались для получения данных по ресурсу.
Метод возвращает результат выполнения запроса в виде JSON.
Для отключения базы данных используйте метод closeDatabase:
bool hhive::HHive::closeDatabase (
std::string path
)
Аргументы:
path. Путь к базе данных, содержащий имя базы.
Метод возвращает значение True в случае успешного отключения, иначе False.

Получение
данных ресурса со скалярными параметрами
Для получения данных ресурса со скалярными параметрами используйте метод deltaStreamRequest:
std::string hhive::HHive::deltaStreamRequest (
const std::string & resource,
const DeltaParams
& params
)
Аргументы:
resource. Название ресурса;
params. Дополнительные параметры запроса.
Метод возвращает JSON в виде строки с ответом сервера.

Получение
данных ресурса с табличными параметрами
Для получения данных ресурса с табличными параметрами используйте метод tableRequest:
std::string hhive::HHive::tableRequest (
std::string resource,
std::string transactionID,
TableParams params
)
Аргументы:
resource. Название ресурса;
transactionID. ID транзакции;
params. Дополнительные параметры запроса.
Метод возвращает JSON в виде строки с ответом сервера.

Получение
данных ресурса с табличными или скалярными параметрами
Для получения данных ресурса с табличными или скалярными параметрами используйте метод tableStreamRequest:
std::string hhive::HHive::tableStreamRequest (
std::string resource,
std::string transactionID,
TableStreamParams params
)
Аргументы:
resource. Название ресурса;
transactionID. ID транзакции;
Примечание. Задается только для ресурса с табличными параметрами.
params. Дополнительные параметры запроса.
Метод возвращает JSON в виде строки с ответом сервера.

Получение
списка всех ресурсов
Для получения списка всех ресурсов используйте метод resources:
std::string hhive::HHive::resources (
std::string databasePath
)
Аргументы:
databasePath. Имя файла с базой данных.
Примечание. Если файл не существует по указанному пути, то он создается автоматически.
Метод сохраняет полученный список ресурсов в базу данных.

Асинхронный
запрос на получение данных ресурса со скалярными параметрами
Для получения данных ресурса со скалярными параметрами используйте метод deltaStreamRequestAsync:
std::string hhive::HHive::deltaStreamRequestAsync (
const std::string & resource,
const DeltaParams & params
)
Аргументы:
resource. Название ресурса;
params. Дополнительные параметры запроса.
Метод возвращает объект std::future<std::string>, в который далее будет записана JSON-строка с ответом сервера.

Асинхронный
запрос на получение данных ресурса с табличными параметрами
Для получения данных ресурса с табличными параметрами используйте метод tableRequestAsync:
std::string hhive::HHive::tableRequestAsync (
std::string resource,
std::string transactionID,
TableParams params
)
Аргументы:
resource. Название ресурса;
transactionID. ID транзакции;
params. Дополнительные параметры запроса.
Метод возвращает объект std::future<std::string>, в который далее будет записана JSON-строка с ответом сервера.

Асинхронный
запрос на получение данных ресурса с табличными или скалярными параметрами
Для получения данных ресурса с табличными или скалярными параметрами используйте метод tableStreamRequestAsync:
std::string hhive::HHive::tableStreamRequestAsync (
std::string resource,
std::string transactionID,
TableStreamParams params
)
Аргументы:
resource. Название ресурса;
transactionID. ID транзакции;
Примечание. Задается только для ресурса с табличными параметрами.
params. Дополнительные параметры запроса.
Метод возвращает объект std::future<std::string>, в который далее будет записана JSON-строка с ответом сервера.
Для задания названия среды используйте метод setEnvironment:
void hhive::HHive::setEnvironment (
std::string environment
)
Аргументы:
environment. Название среды.
Для задания названия проекта используйте метод setProject:
void hhive::HHive::setProject (
std::string project
)
Аргументы:
project. Название проекта.

Задание
идентификатора устройства
Для задания идентификатора устройства используйте метод setDevice:
void hhive::HHive::setDevice (
std::string device
)
Аргументы:
device. Идентификатор устройства.
Для получения названия среды используйте метод environment:
std::string hhive::HHive::environment (
)
const
Для получения названия проекта используйте метод project:
std::string hhive::HHive::project (
)
const

Получение
идентификатора устройства
Для получения идентификатора устройства используйте метод device:
std::string hhive::HHive::device (
)
const
Для загрузки файла на сервер используйте метод putFile:
std::string hhive::HHive::putFile (
std::string mountName,
std::string filename,
std::string localFilename
)
Аргументы:
mountName. Имя точки монтирования на сервере;
filename. Путь до файла на сервере, содержащий имя файла;
localFilename. Путь до локального файла, содержащий имя локального файла.
Метод возвращает JSON в виде строки с ответом сервера.
Для получения файла используйте метод getFile:
std::string hhive::HHive::getFile (
std::string mountName,
std::string filename,
std::string localFilename
)
Аргументы:
mountName. Имя точки монтирования на сервере;
filename. Путь до файла на сервере, содержащий имя файла;
localFilename. Путь до локального файла, содержащий имя файла.
Метод возвращает JSON в виде строки с ответом сервера.

Получение
информации о файле на сервере
Для получения информации о файле на сервере используйте метод getFileMeta:
std::string hhive::HHive::getFileMeta (
std::string mountName,
std::string filename
)
Аргументы:
mountName. Имя точки монтирования на сервере;
filename. Путь до файла, содержащий имя файла.
Метод возвращает JSON в виде строки с ответом сервера.

Получение
содержимого директории
Для получения содержимого директории используйте метод getDirectoryContent:
std::string hhive::HHive::getDirectoryContent
(
std::string mountName,
std::string dirPath
)
Аргументы:
mountName. Имя точки монтирования на сервере;
filename. Путь до директории.
Метод возвращает JSON в виде строки с ответом сервера, содержимым папки в виде списка файлов и папок указанной директории.
Для удаления файла на сервере используйте метод deleteFile:
std::string hhive::HHive::deleteFile (
std::string mountName,
std::string filename
)
Примечание. Локальные файлы не удаляются.
Аргументы:
mountName. Имя точки монтирования на сервере.
filename. Путь до файла на сервере, содержащий имя файла.

Получение
данных по выполненной транзакции
Для получения данных по выполненной транзакции используйте метод getTransaction:
std::string hhive::HHive::getTransaction (
std::string resource,
std::string transactionID
)
Аргументы:
resource. Имя ресурса;
transactionID. ID транзакции.
Метод возвращает JSON в виде строки с ответом сервера.

Получение
списка выполненных транзакций с табличным ресурсом
Для получения списка выполненных транзакций с табличным ресурсом используйте метод getAllTransaction:
std::string hhive::HHive::getAllTransaction (
std::string resource
)
Аргументы:
resource. Имя ресурса.

Удаление
транзакции на сервере
Для удаления транзакции на сервере используйте метод deleteTransaction:
std::string hhive::HHive::deleteTransaction (
std::string resource,
std::string transactionID
)
Аргументы:
resource. Имя ресурса;
transactionID. ID транзакции.
Для инициализации и настройки Seilfish обратитесь к разделу «Инициализация и настройка в рамках Sailfish-фреймворка».
См. также:
Фреймворк Sailfish | Инициализация и настройка в рамках Sailfish-фреймворка | Вспомогательные классы