Класс KeyStore.Builder
- java.lang.Object
-
- java.security.KeyStore.Builder
- Вложенный класс:
- KeyStore
public abstract static class KeyStore.Builder extends Object
Описание объекта KeyStore, подлежащего созданию.
Экземпляр этого класса инкапсулирует информацию, необходимую для создания и инициализации объекта KeyStore. Этот процесс запускается при вызове метода getKeyStore().
Это позволяет отделить конфигурацию от создания объекта KeyStore и, например, отложить запрос пароля до тех пор, пока он не потребуется.
- С момента:
- 1.5
- См. также:
-
KeyStore,KeyStoreBuilderParameters
Конструкторы
| Модификатор | Конструктор и описание |
|---|---|
protected |
Builder() Создает новый Builder. |
Методы
| Модификатор и тип | Метод и описание |
|---|---|
abstract KeyStore |
getKeyStore() Возвращает KeyStore, описанный этим объектом. |
abstract KeyStore.ProtectionParameter |
getProtectionParameter(String alias) Возвращает ProtectionParameters, которые должны быть использованы для получения |
static KeyStore.Builder |
newInstance(KeyStore keyStore,
KeyStore.ProtectionParameter protectionParameter) Возвращает новый Builder, который инкапсулирует заданный KeyStore. |
static KeyStore.Builder |
newInstance(String type,
Provider provider,
File file,
KeyStore.ProtectionParameter protection) Возвращает новый объект Builder. |
static KeyStore.Builder |
newInstance(String type,
Provider provider,
KeyStore.ProtectionParameter protection) Возвращает новый объект Builder. |
Методы, унаследованные от класса java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Конструкторы
Builder
protected Builder()
Создает новый Builder.
Методы
getKeyStore
public abstract KeyStore getKeyStore()
throws KeyStoreException
Возвращает KeyStore, описанный этим объектом.
- Возвращает:
- объект
KeyStore, описанный этим объектом - Выбрасывает:
-
KeyStoreException- если произошла ошибка во время операции, например, если KeyStore не удалось создать или загрузить
getProtectionParameter
public abstract KeyStore.ProtectionParameter getProtectionParameter(String alias)
throws KeyStoreException
Возвращает ProtectionParameters, которые должны быть использованы для получения Entry с заданным псевдонимом. Метод getKeyStore должен быть вызван до вызова этого метода.
- Параметры:
-
alias- псевдоним записи KeyStore - Возвращает:
- ProtectionParameters, которые должны быть использованы для получения
Entryс заданным псевдонимом. - Выбрасывает:
-
NullPointerException- если alias равен null -
KeyStoreException- если произошла ошибка во время операции -
IllegalStateException- если метод getKeyStore не был вызван до вызова этого метода
newInstance
public static KeyStore.Builder newInstance(KeyStore keyStore,
KeyStore.ProtectionParameter protectionParameter)
Возвращает новый Builder, который инкапсулирует заданный KeyStore. Метод getKeyStore() возвращаемого объекта вернет keyStore, а метод getProtectionParameter() вернет protectionParameters.
Это полезно, если существующий объект KeyStore необходимо использовать с API на основе Builder.
- Параметры:
-
keyStore- KeyStore, который должен быть инкапсулирован -
protectionParameter- ProtectionParameter, используемый для защиты записей KeyStore - Возвращает:
- новый объект Builder
- Выбрасывает:
-
NullPointerException- если keyStore или protectionParameters равны null -
IllegalArgumentException- если keyStore не был инициализирован
newInstance
public static KeyStore.Builder newInstance(String type,
Provider provider,
File file,
KeyStore.ProtectionParameter protection)
Возвращает новый объект Builder.
Первый вызов метода getKeyStore() возвращаемого объекта builder создаст KeyStore типа type и вызовет его метод load(). Аргумент inputStream создается из file. Если protection является PasswordProtection, пароль извлекается путем вызова метода getPassword. В противном случае, если protection является CallbackHandlerProtection, пароль извлекается вызовом CallbackHandler.
Последующие вызовы getKeyStore() возвращают тот же объект, что и первый вызов. Если первый вызов завершился ошибкой KeyStoreException, последующие вызовы также выбрасывают KeyStoreException.
KeyStore создается из provider , если он не равен null. В противном случае ищется все установленные поставщики.
Вызовы getProtectionParameter() вернут объект PasswordProtection, инкапсулирующий пароль, который был использован для вызова метода load.
Примечание, что метод getKeyStore() выполняется в контексте AccessControlContext кода, вызывающего этот метод.
- Параметры:
-
type- тип создаваемого KeyStore -
provider- поставщик, из которого должен быть создан KeyStore (или null) -
file- файл, содержащий данные KeyStore -
protection- ProtectionParameter, обеспечивающий безопасность данных KeyStore - Возвращает:
- новый объект Builder
- Выбрасывает:
-
NullPointerException- если type, file или protection равны null -
IllegalArgumentException- если protection не является экземпляром PasswordProtection или CallbackHandlerProtection; или если файл не существует или не ссылается на обычный файл
newInstance
public static KeyStore.Builder newInstance(String type,
Provider provider,
KeyStore.ProtectionParameter protection)
Возвращает новый объект Builder.
Каждый вызов метода getKeyStore() возвращаемого объекта builder вернет новый объект KeyStore типа type. Его метод load() вызывается с использованием LoadStoreParameter, который инкапсулирует protection.
KeyStore создается из provider , если он не равен null. В противном случае ищется все установленные поставщики.
Вызовы getProtectionParameter() вернут protection.
Примечание, что метод getKeyStore() выполняется в контексте AccessControlContext кода, вызывающего этот метод.
- Параметры:
-
type- тип создаваемого KeyStore -
provider- поставщик, из которого должен быть создан KeyStore (или null) -
protection- ProtectionParameter, обеспечивающий безопасность данных Keystore - Возвращает:
- новый объект Builder
- Выбрасывает:
-
NullPointerException- если type или protection равны null
© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.