Класс KeyStoreListContext(абстрактный)
Сигналы
void | busyEnd () |
void | busyStart () |
void | diagnosticText (const QString &str) |
void | storeUpdated (int id) |
void | updated () |
Публичные функции
virtual KeyStoreEntryContext * | entry (int id, const QString &entryId) |
virtual QList< KeyStoreEntryContext * > | entryList (int id)=0 |
virtual KeyStoreEntryContext * | entryPassive (const QString &serialized) |
virtual QList< KeyStoreEntry::Type > | entryTypes (int id) const =0 |
virtual QString | initKeyStore (const QString &id) |
virtual bool | isReadOnly (int id) const |
KeyStoreListContext (Provider *p) | |
virtual QList<int> | keyStores ()=0 |
virtual QString | name (int id) const =0 |
virtual KeyStore::OperatingMode | operatingMode (int id) const =0 |
virtual bool | removeEntry (int id, const QString &entryId) |
virtual bool | removeKeyStore (const QString &id) |
virtual void | setUpdatesEnabled (bool enabled) |
virtual void | start () |
virtual QString | storeId (int id) const =0 |
virtual bool | switchOperatingMode (int id, KeyStore::OperatingMode mode) |
virtual KeyStore::Type | type (int id) const =0 |
virtual QString | writeEntry (int id, const Certificate &cert) |
virtual QString | writeEntry (int id, const CRL &crl) |
virtual QString | writeEntry (int id, const KeyBundle &kb) |
virtual QString | writeEntry (int id, const PGPKey &key) |
Подробное описание
Криптопровайдер KeyStore.
Примечание.
Этот класс является частью интерфейса подключаемого модуля криптопровайдера и не должен использоваться приложениями напрямую. Возможно стоит использовать KeyStore вместо него.
Описание конструкторов и деструктора
KeyStoreListContext()
QCA::KeyStoreListContext::KeyStoreListContext (Provider * p) | inline |
Стандартный конструктор.
Параметры
p | Объект Provider, связанный с этим контекстом |
Описание методов
start()
virtual void QCA::KeyStoreListContext::start () | virtual |
Запускает криптопровайдера хранилища ключей.
setUpdatesEnabled()
virtual void QCA::KeyStoreListContext::setUpdatesEnabled (bool enabled) | virtual |
Включает или отключает события обновления.
Сигналы updated() и storeUpdated() могут не испускаться, если обновления не включены.
Параметры
enabled | Включены ли уведомления об обновлении (true ) или отключены (false ) |
initKeyStore()
virtual QString QCA::KeyStoreListContext::initKeyStore (const QString & id) | virtual |
Инициализирует хранилище ключей.
Параметры
name | название KeyStore |
Возвращает идентификатор созданного KeyStore.
removeKeyStore()
virtual bool QCA::KeyStoreListContext::removeKeyStore (const QString & id) | virtual |
Удаляет хранилище ключей.
Параметры
id | идентификатор KeyStore |
Возвращает true
, если KeyStore удалён.
keyStores()
virtual QList<int> QCA::KeyStoreListContext::keyStores () | pure virtual |
Возвращает список целочисленных идентификаторов контекста, каждый из которых обозначает экземпляр хранилища ключей.
Если хранилище ключей становится недоступным, а затем снова становится доступным (например, если смарт-карта удаляется, а затем снова вставляется та же), целочисленный идентификатор контекста должен отличаться от предыдущего.
type()
virtual KeyStore::Type QCA::KeyStoreListContext::type (int id) const | pure virtual |
Возвращает тип указанного хранилища или -1
, если целочисленный идентификатор контекста
недействителен.
Параметры
id | Идентификатор для контекста хранилища |
storeId()
virtual QString QCA::KeyStoreListContext::storeId (int id) const | pure virtual |
Возвращает строковый идентификатор хранилища или пустую строку, если целочисленный идентификатор контекста недействителен.
Строковый идентификатор хранилища должен быть уникальным для одного хранилища, и он должен сохраняться между режимами доступности/недоступности. Например, смарт-карта, которую удаляют и вставляют снова, должна иметь тот же строковый идентификатор (несмотря на наличие нового целочисленного идентификатора контекста).
Параметры
id | Идентификатор для контекста хранилища |
name()
virtual QString QCA::KeyStoreListContext::name (int id) const | pure virtual |
Возвращает дружелюбное имя хранилища или пустую строку, если целочисленный идентификатор контекста недействителен.
Параметры
id | Идентификатор для контекста хранилища |
isReadOnly()
virtual bool QCA::KeyStoreListContext::isReadOnly (int id) const | virtual |
Возвращает true
, если хранилище доступно только для чтения.
Если целочисленный идентификатор контекста недействителен, этот метод должен вернуть true
.
Параметры
id | Идентификатор для контекста хранилища |
entryTypes()
virtual QList<KeyStoreEntry::Type> QCA::KeyStoreListContext::entryTypes (int id) const | pure virtual |
Возвращает типы, поддерживаемые хранилищем, или пустой список, если целочисленный идентификатор контекста недействителен.
Этот метод должен возвращать все поддерживаемые типы, даже если хранилище фактически не содержит записей для всех типов.
Параметры
id | Идентификатор для контекста хранилища |
entryList()
virtual QList<KeyStoreEntryContext *> QCA::KeyStoreListContext::entryList (int id) | pure virtual |
Возвращает записи хранилища или пустой список, если целочисленный идентификатор контекста недействителен.
Вызывающая сторона отвечает за удаление возвращённых записей.
Параметры
id | Идентификатор для контекста хранилища |
entry()
virtual KeyStoreEntryContext* QCA::KeyStoreListContext::entry (int id, const QString & entryId ) | virtual |
Возвращает одну запись в хранилище, если идентификатор записи уже известен.
Если запись не существует, метод возвращает 0
.
Вызывающая сторона отвечает за удаление возвращённой записи.
Параметры
id | Идентификатор для контекста хранилища |
entryId | Запись для получения |
entryPassive()
virtual KeyStoreEntryContext* QCA::KeyStoreListContext::entryPassive (const QString & serialized) | virtual |
Возвращает одну запись, созданную из строки сериализации предыдущей записи (с использованием KeyStoreEntryContext::serialize()).
Если строка сериализации не может быть проанализирована этим криптопровайдером или запись не может
быть создана иным образом, метод возвращает 0
.
Вызывающая сторона отвечает за удаление возвращённой записи.
Метод должен быть потокобезопасным.
Параметры
serialized | Сериализованные данные для создания записи |
writeEntry() [1/4]
virtual QString QCA::KeyStoreListContext::writeEntry (int id, const KeyBundle & kb ) | virtual |
Записывает KeyBundle в хранилище.
Возвращает идентификатор записи нового элемента или пустую строку, если при записи элемента произошла ошибка.
Параметры
id | Идентификатор для контекста хранилища |
kb | Набор ключей для добавления в хранилище |
writeEntry() [2/4]
virtual QString QCA::KeyStoreListContext::writeEntry (int id, const Certificate & cert ) | virtual |
Записывает Certificate в хранилище.
Возвращает идентификатор записи нового элемента или пустую строку, если при записи элемента произошла ошибка.
Параметры
id | Идентификатор для контекста хранилища |
cert | Сертификат для добавления в хранилище |
writeEntry() [3/4]
virtual QString QCA::KeyStoreListContext::writeEntry (int id, const CRL & crl ) | virtual |
Записывает CRL в хранилище.
Возвращает идентификатор записи нового элемента или пустую строку, если при записи элемента произошла ошибка.
Параметры
id | Идентификатор для контекста хранилища |
crl | Список отзыва для добавления в хранилище |
writeEntry() [4/4]
virtual QString QCA::KeyStoreListContext::writeEntry (int id, const PGPKey & key ) | virtual |
Записывает PGPKey в хранилище.
Возвращает идентификатор записи нового элемента или пустую строку, если при записи элемента произошла ошибка.
Параметры
id | Идентификатор для контекста хранилища |
key | Ключ PGP для добавления в хранилище |
removeEntry()
virtual bool QCA::KeyStoreListContext::removeEntry (int id, const QString & entryId ) | virtual |
Удаляет запись из хранилища.
Возвращает true
, если запись успешно удалена, иначе false
.
Параметры
id | Идентификатор для контекста хранилища |
entryId | Запись, которую нужно удалить из хранилища |
operatingMode()
virtual KeyStore::OperatingMode QCA::KeyStoreListContext::operatingMode (int id) const | pure virtual |
Текущий режим работы хранилища.
switchOperatingMode()
virtual bool QCA::KeyStoreListContext::switchOperatingMode (int id, KeyStore::OperatingMode mode ) | virtual |
Переключение режима работы хранилища.
Возвращает true
, если режим было успешно изменён, иначе false
.
Параметры
id | Идентификатор для контекста хранилища |
mode | целевой режим для переключения |
busyStart
void QCA::KeyStoreListContext::busyStart () | signal |
Сигнал испускается, когда криптопровайдер занят поиском хранилищ ключей.
Криптопровайдер переходит в состояние занятости, когда у него есть основания полагать, что есть хранилища ключей, но ему всё равно необходимо проверить или запросить некоторые устройства, чтобы убедиться в этом.
Например, если смарт-карта вставлена, то криптопровайдер может сразу перейти в состояние занятости после обнаружения вставки. Однако может пройти несколько секунд, прежде чем криптопровайдер сможет запросить информацию о смарт-карте и сообщить о ней. После успешного запроса карты криптопровайдер выйдет из состояния занятости и сообщит о новом хранилище ключей.
Когда этот объект впервые запускается с помощью start(), предполагается, что он находится в состоянии «занято», поэтому нет необходимости испускать этот сигнал в начале.
busyEnd
void QCA::KeyStoreListContext::busyEnd () | signal |
Сигнал испускается, чтобы выйти из состояния занятости.
Когда этот объект впервые запускается с помощью start(), предполагается, что он находится в состоянии занятости. В какой-то момент нужно вызвать busyEnd(), иначе QCA никогда не спросит о хранилищах ключей.
updated
void QCA::KeyStoreListContext::updated () | signal |
Указывает, что список хранилищ ключей был изменён, и что QCA должен вызвать keyStores(), чтобы получить последний список.
diagnosticText
void QCA::KeyStoreListContext::diagnosticText (const QString & str) | signal |
Сигнал испускается, когда есть диагностический текст, о котором нужно сообщить.
Параметры
str | Диагностический текст |
storeUpdated
void QCA::KeyStoreListContext::storeUpdated (int id) | signal |
Указывает, что список записей хранилища ключей был изменён (записи добавлены, удалены или изменены).
Параметры
id | Идентификатор изменённого хранилища ключей |