Класс Provider
- java.lang.Object
-
- java.util.Dictionary<K,V>
-
- java.util.Hashtable<Object,Object>
-
- java.util.Properties
-
- java.security.Provider
- Все реализованные интерфейсы:
- Serializable, Cloneable, Map<Object,Object>
- Прямые известные подклассы:
- AuthProvider
public abstract class Provider extends Properties
Этот класс представляет "поставщика" для Java Security API, где поставщик реализует некоторые или все части Java Security. Услуги, которые может реализовать поставщик, включают:
- Алгоритмы (такие как DSA, RSA, MD5 или SHA-1).
- Средства генерации, преобразования и управления ключами (например, для ключей, специфичных для алгоритма).
Каждый поставщик имеет имя и номер версии и настраивается в каждой среде выполнения, в которой он установлен.
См. Класс Provider в "Спецификации и справке API архитектуры Java Cryptography" для получения информации о том, как работает и устанавливается конкретный тип поставщика, поставщик криптографических услуг. Однако обратите внимание, что поставщик может использоваться для реализации любой службы безопасности в Java, которая использует архитектуру с подключаемыми реализациями, которые подходят под нее.
Некоторые реализации поставщиков могут столкнуться с невосстановимыми внутренними ошибками во время своей работы, например, с отказом в общении с токеном безопасности. Для указания таких ошибок следует использовать ProviderException.
Тип службы Provider зарезервирован для использования в рамках инфраструктуры безопасности. К услугам этого типа приложения не могут добавляться, удаляться или изменяться. В каждом объекте Provider автоматически размещаются следующие атрибуты:
| Имя | Значение |
|---|---|
Provider.id name | String.valueOf(provider.getName()) |
Provider.id version | String.valueOf(provider.getVersion()) |
Provider.id info | String.valueOf(provider.getInfo()) |
Provider.id className | provider.getClass().getName() |
- См. также:
- Формат сериализации
Вложенные классы
| Модификатор и тип | Класс и описание |
|---|---|
static class |
Provider.Service Описание службы безопасности. |
Поля
Наследованные поля из класса java.util.Properties
defaults Краткое описание конструкторов
| Модификатор | Конструктор и описание |
|---|---|
protected |
Provider(String name,
double version,
String info) Создаёт поставщика со указанным именем, номером версии и информацией. |
Краткое описание методов
| Модификатор и тип | Метод и описание |
|---|---|
void |
clear() Очищает этот поставщик, чтобы он больше не содержал свойства, используемые для поиска реализованных поставщиком функций. |
Object |
compute(Object key,
BiFunction<? super Object,? super Object,? extends Object> remappingFunction) Попытка вычислить отображение для указанного ключа и его текущего сопоставленного значения (или |
Object |
computeIfAbsent(Object key,
Function<? super Object,? extends Object> mappingFunction) Если указанный ключ ещё не связан со значением (или сопоставлен с |
Object |
computeIfPresent(Object key,
BiFunction<? super Object,? super Object,? extends Object> remappingFunction) Если значение для указанного ключа присутствует и не равно null, пытается вычислить новое отображение, заданного ключа и его текущего сопоставленного значения. |
Enumeration<Object> |
elements() Возвращает перечисление значений в этой хэш-таблице. |
Set<Map.Entry<Object,Object>> |
entrySet() Возвращает неизменяемый вид множества записей свойств, содержащихся в этом поставщике. |
void |
forEach(BiConsumer<? super Object,? super Object> action) Выполняет заданное действие для каждой записи в этой карте, пока все записи не будут обработаны или действие не выбросит исключение. |
Object |
get(Object key) Возвращает значение, которому сопоставлен указанный ключ, или |
String |
getInfo() Возвращает удобочитаемое описание поставщика и его услуг. |
String |
getName() Возвращает имя этого поставщика. |
Object |
getOrDefault(Object key,
Object defaultValue) Возвращает значение, которому сопоставлен указанный ключ, или |
String |
getProperty(String key) Ищет свойство с указанным ключом в этом списке свойств. |
Provider.Service |
getService(String type,
String algorithm) Получить описание службы реализации данного алгоритма или псевдонима этим поставщиком. |
Set<Provider.Service> |
getServices() Получить неизменяемое множество всех служб, поддерживаемых этим поставщиком. |
double |
getVersion() Возвращает номер версии для этого поставщика. |
Enumeration<Object> |
keys() Возвращает перечисление ключей в этой хэш-таблице. |
Set<Object> |
keySet() Возвращает неизменяемый вид множества ключей свойств, содержащихся в этом поставщике. |
void |
load(InputStream inStream) Читает список свойств (пары ключ-элемент) из потока ввода. |
Object |
merge(Object key,
Object value,
BiFunction<? super Object,? super Object,? extends Object> remappingFunction) Если указанный ключ ещё не связан со значением или связан с null, связывает его с заданным значением. |
Object |
put(Object key,
Object value) Устанавливает свойство |
void |
putAll(Map<?,?> t) Копирует все отображения из заданной карты в этот поставщик. |
Object |
putIfAbsent(Object key,
Object value) Если указанный ключ ещё не связан со значением (или сопоставлен с |
protected void |
putService(Provider.Service s) Добавить услугу. |
Object |
remove(Object key) Удаляет свойство |
boolean |
remove(Object key,
Object value) Удаляет запись для указанного ключа только в том случае, если она в настоящее время сопоставлена с указанным значением. |
protected void |
removeService(Provider.Service s) Удаляет ранее добавленную службу с помощью |
Object |
replace(Object key,
Object value) Заменяет запись для указанного ключа только в том случае, если он в настоящее время сопоставлен с каким-либо значением. |
boolean |
replace(Object key,
Object oldValue,
Object newValue) Заменяет запись для указанного ключа только в том случае, если она в настоящее время сопоставлена с указанным значением. |
void |
replaceAll(BiFunction<? super Object,? super Object,? extends Object> function) Заменяет значение каждой записи результатом вызова заданной функции для этой записи, в порядке возврата итератора набора записей, пока все записи не будут обработаны или функция не выбросит исключение. |
String |
toString() Возвращает строку с именем и номером версии этого поставщика. |
Collection<Object> |
values() Возвращает неизменяемый вид коллекции значений свойств, содержащихся в этом поставщике. |
Наследованные методы из класса java.util.Properties
getProperty, list, list, load, loadFromXML, propertyNames, save, setProperty, store, store, storeToXML, storeToXML, stringPropertyNames Наследованные методы из класса java.util.Hashtable
clone, contains, containsKey, containsValue, equals, hashCode, isEmpty, rehash, size Наследованные методы из класса java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait Конструкторы
Provider
protected Provider(String name,
double version,
String info) Создает провайдера с указанным именем, номером версии и информацией.
- Параметры:
-
name- имя провайдера. -
version- номер версии провайдера. -
info- описание провайдера и его служб.
Методы
getName
public String getName()
Возвращает имя этого провайдера.
- Возвращает:
- имя этого провайдера.
getVersion
public double getVersion()
Возвращает номер версии для этого провайдера.
- Возвращает:
- номер версии для этого провайдера.
getInfo
public String getInfo()
Возвращает читаемое описание провайдера и его служб. Это может быть страница HTML с соответствующими ссылками.
- Возвращает:
- описание провайдера и его служб.
toString
public String toString()
Возвращает строку с именем и номером версии этого провайдера.
- Переопределяет:
-
toStringв классеHashtable<Object,Object> - Возвращает:
- строку с именем и номером версии для этого провайдера.
clear
public void clear()
Очищает этого провайдера, так что он больше не содержит свойства, используемые для поиска объектов, реализованных провайдером.
Если включен менеджер безопасности, его метод checkSecurityAccess вызывается со строкой "clearProviderProperties."+name (где name — имя провайдера), чтобы проверить, можно ли очистить этого провайдера.
- Указано в:
-
clearв интерфейсеMap<Object,Object> - Переопределяет:
-
clearв классеHashtable<Object,Object> - Исключения:
-
SecurityException- если существует менеджер безопасности и его методSecurityManager.checkSecurityAccess(java.lang.String)запрещает доступ к очистке этого провайдера - С версии:
- 1.2
load
public void load(InputStream inStream)
throws IOException Читает список свойств (пары ключ-элемент) из входного потока.
- Переопределяет:
-
loadв классеProperties - Параметры:
-
inStream- входной поток. - Исключения:
-
IOException- если произошла ошибка при чтении из входного потока. - См. также:
Properties.load(java.io.Reader)
putAll
public void putAll(Map<?,?> t)
Копирует все сопоставления из указанной карты в этого провайдера. Эти сопоставления заменят любые свойства, которые этот провайдер имел для любых ключей, в настоящее время находящихся в указанной карте.
- Указано в:
-
putAllв интерфейсеMap<Object,Object> - Переопределяет:
-
putAllв классеHashtable<Object,Object> - Параметры:
-
t- сопоставления, которые необходимо сохранить в этой карте - С версии:
- 1.2
entrySet
public Set<Map.Entry<Object,Object>> entrySet()
Возвращает неизменяемый вид Set записей свойств, содержащихся в этом провайдере.
- Указано в:
-
entrySetв интерфейсеMap<Object,Object> - Переопределяет:
-
entrySetв классеHashtable<Object,Object> - Возвращает:
- вид набора сопоставлений, содержащихся в этой карте
- С версии:
- 1.2
- См. также:
Map.Entry
keySet
public Set<Object> keySet()
Возвращает неизменяемый вид Set ключей свойств, содержащихся в этом провайдере.
- Указано в:
-
keySetв интерфейсеMap<Object,Object> - Переопределяет:
-
keySetв классеHashtable<Object,Object> - Возвращает:
- вид набора ключей, содержащихся в этой карте
- С версии:
- 1.2
values
public Collection<Object> values()
Возвращает неизменяемый вид Collection значений свойств, содержащихся в этом провайдере.
- Указано в:
-
valuesв интерфейсеMap<Object,Object> - Переопределяет:
-
valuesв классеHashtable<Object,Object> - Возвращает:
- вид коллекции значений, содержащихся в этой карте
- С версии:
- 1.2
put
public Object put(Object key,
Object value) Устанавливает свойство key со значением value.
Если включен менеджер безопасности, его метод checkSecurityAccess вызывается со строкой "putProviderProperty."+name, где name — имя провайдера, чтобы проверить, можно ли установить значения свойств этого провайдера.
- Указано в:
-
putв интерфейсеMap<Object,Object> - Переопределяет:
-
putв классеHashtable<Object,Object> - Параметры:
-
key- ключ хэш-таблицы -
value- значение - Возвращает:
- предыдущее значение указанного ключа в этой хэш-таблице или
null, если его не было - Исключения:
-
SecurityException- если существует менеджер безопасности и его методSecurityManager.checkSecurityAccess(java.lang.String)запрещает доступ к установке значений свойств. - С версии:
- 1.2
- См. также:
-
Object.equals(Object),Hashtable.get(Object)
putIfAbsent
public Object putIfAbsent(Object key,
Object value) Если указанный ключ еще не связан со значением (или сопоставлен с null), связывает его с заданным значением и возвращает null, иначе возвращает текущее значение.
Если включен менеджер безопасности, его метод checkSecurityAccess вызывается со строкой "putProviderProperty."+name, где name — имя провайдера, чтобы проверить, можно ли установить значения свойств этого провайдера.
- Указано в:
-
putIfAbsentв интерфейсеMap<Object,Object> - Переопределяет:
-
putIfAbsentв классеHashtable<Object,Object> - Параметры:
-
key- ключ, с которым должно быть связано указанное значение -
value- значение, которое должно быть связано с указанным ключом - Возвращает:
- предыдущее значение, связанное с указанным ключом, или
null, если для ключа не было сопоставления. (Возвращаемое значениеnullтакже может указывать на то, что карта ранее связывалаnullс ключом, если реализация поддерживает нулевые значения.) - Исключения:
-
SecurityException- если существует менеджер безопасности и его методSecurityManager.checkSecurityAccess(java.lang.String)запрещает доступ к установке значений свойств. - С версии:
- 1.8
remove
public Object remove(Object key)
Удаляет свойство key (и соответствующее value).
Если включен менеджер безопасности, его метод checkSecurityAccess вызывается со строкой "removeProviderProperty."+name, где name — имя провайдера, чтобы проверить, можно ли удалить свойства этого провайдера.
- Указано в:
-
removeв интерфейсеMap<Object,Object> - Переопределяет:
-
removeв классеHashtable<Object,Object> - Параметры:
-
key- ключ, который необходимо удалить - Возвращает:
- значение, с которым ключ был сопоставлен в этой хэш-таблице, или
null, если у ключа не было сопоставления - Исключения:
-
SecurityException- если существует менеджер безопасности и его методSecurityManager.checkSecurityAccess(java.lang.String)запрещает доступ к удалению свойств этого провайдера. - С версии:
- 1.2
remove
public boolean remove(Object key,
Object value) Удаляет запись для указанного ключа только в том случае, если он в настоящее время сопоставлен с указанным значением.
Если включен менеджер безопасности, его метод checkSecurityAccess вызывается со строкой "removeProviderProperty."+name, где name — имя провайдера, чтобы проверить, можно ли удалить свойства этого провайдера.
- Указано в:
-
removeв интерфейсеMap<Object,Object> - Переопределяет:
-
removeв классеHashtable<Object,Object> - Параметры:
-
key- ключ, с которым связано указанное значение -
value- значение, которое должно быть связано с указанным ключом - Возвращает:
-
trueесли значение было удалено - Исключения:
-
SecurityException- если существует менеджер безопасности и его методSecurityManager.checkSecurityAccess(java.lang.String)запрещает доступ к удалению свойств этого провайдера. - С версии:
- 1.8
replace
public boolean replace(Object key,
Object oldValue,
Object newValue) Заменяет запись для указанного ключа только в том случае, если он в настоящее время сопоставлен с указанным значением.
Если включен менеджер безопасности, его метод checkSecurityAccess вызывается со строкой "putProviderProperty."+name, где name — имя провайдера, чтобы проверить, можно ли установить значения свойств этого провайдера.
- Указано в:
-
replaceв интерфейсеMap<Object,Object> - Переопределяет:
-
replaceв классеHashtable<Object,Object> - Параметры:
-
key- ключ, с которым связано указанное значение -
oldValue- значение, которое должно быть связано с указанным ключом -
newValue- значение, которое должно быть связано с указанным ключом - Возвращает:
-
trueесли значение было заменено - Исключения:
-
SecurityException- если существует менеджер безопасности и его методSecurityManager.checkSecurityAccess(java.lang.String)запрещает доступ к установке значений свойств. - С версии:
- 1.8
replace
public Object replace(Object key,
Object value) Заменяет запись для указанного ключа только в том случае, если она в настоящее время сопоставлена с каким-либо значением.
Если включен диспетчер безопасности, его метод checkSecurityAccess вызывается со строкой "putProviderProperty."+name, где name — имя поставщика, чтобы проверить, можно ли установить значения свойств этого поставщика.
- Указано в:
-
replaceв интерфейсеMap<Object,Object> - Переопределяет:
-
replaceв классеHashtable<Object,Object> - Параметры:
-
key- ключ, с которым связано указанное значение -
value- значение, которое должно быть связано с указанным ключом - Возвращает:
- предыдущее значение, связанное с указанным ключом, или
null, если для ключа не было сопоставления. (Возвращениеnullтакже может указывать на то, что карта ранее сопоставлялаnullс ключом, если реализация поддерживает значения null.) - Исключения:
-
SecurityException- если существует диспетчер безопасности и его методSecurityManager.checkSecurityAccess(java.lang.String)запрещает доступ к установке значений свойств. - С версии:
- 1.8
replaceAll
public void replaceAll(BiFunction<? super Object,? super Object,? extends Object> function)
Заменяет значение каждой записи результатом вызова данной функции для этой записи в том порядке, в котором записи возвращаются итератором множества записей, пока все записи не будут обработаны или функция не выбросит исключение.
Если включен диспетчер безопасности, его метод checkSecurityAccess вызывается со строкой "putProviderProperty."+name, где name — имя поставщика, чтобы проверить, можно ли установить значения свойств этого поставщика.
- Указано в:
-
replaceAllв интерфейсеMap<Object,Object> - Переопределяет:
-
replaceAllв классеHashtable<Object,Object> - Параметры:
-
function- функция, которая применяется к каждой записи - Исключения:
-
SecurityException- если существует диспетчер безопасности и его методSecurityManager.checkSecurityAccess(java.lang.String)запрещает доступ к установке значений свойств. - С версии:
- 1.8
compute
public Object compute(Object key,
BiFunction<? super Object,? super Object,? extends Object> remappingFunction) Пытается вычислить сопоставление для указанного ключа и его текущего сопоставленного значения (или null, если текущего сопоставления нет).
Если включен диспетчер безопасности, его метод checkSecurityAccess вызывается со строками "putProviderProperty."+name и "removeProviderProperty."+name, где name — имя поставщика, чтобы проверить, можно ли установить значения свойств этого поставщика и удалить свойства этого поставщика.
- Указано в:
-
computeв интерфейсеMap<Object,Object> - Переопределяет:
-
computeв классеHashtable<Object,Object> - Параметры:
-
key- ключ, с которым должно быть связано указанное значение -
remappingFunction- функция для вычисления значения - Возвращает:
- новое значение, связанное с указанным ключом, или null, если его нет
- Исключения:
-
SecurityException- если существует диспетчер безопасности и его методSecurityManager.checkSecurityAccess(java.lang.String)запрещает доступ к установке значений свойств или удалению свойств. - С версии:
- 1.8
computeIfAbsent
public Object computeIfAbsent(Object key,
Function<? super Object,? extends Object> mappingFunction) Если указанный ключ еще не связан со значением (или сопоставлен с null), пытается вычислить его значение с помощью данной функции сопоставления и вводит его в эту карту, если только null.
Если включен диспетчер безопасности, его метод checkSecurityAccess вызывается со строками "putProviderProperty."+name и "removeProviderProperty."+name, где name — имя поставщика, чтобы проверить, можно ли установить значения свойств этого поставщика и удалить свойства этого поставщика.
- Указано в:
-
computeIfAbsentв интерфейсеMap<Object,Object> - Переопределяет:
-
computeIfAbsentв классеHashtable<Object,Object> - Параметры:
-
key- ключ, с которым должно быть связано указанное значение -
mappingFunction- функция для вычисления значения - Возвращает:
- текущее (существующее или вычисленное) значение, связанное с указанным ключом, или null, если вычисленное значение равно null
- Исключения:
-
SecurityException- если существует диспетчер безопасности и его методSecurityManager.checkSecurityAccess(java.lang.String)запрещает доступ к установке значений свойств и удалению свойств. - С версии:
- 1.8
computeIfPresent
public Object computeIfPresent(Object key,
BiFunction<? super Object,? super Object,? extends Object> remappingFunction) Если значение для указанного ключа присутствует и не равно null, пытается вычислить новое сопоставление, учитывая ключ и его текущее сопоставленное значение.
Если включен диспетчер безопасности, его метод checkSecurityAccess вызывается со строками "putProviderProperty."+name и "removeProviderProperty."+name, где name — имя поставщика, чтобы проверить, можно ли установить значения свойств этого поставщика и удалить свойства этого поставщика.
- Указано в:
-
computeIfPresentв интерфейсеMap<Object,Object> - Переопределяет:
-
computeIfPresentв классеHashtable<Object,Object> - Параметры:
-
key- ключ, с которым должно быть связано указанное значение -
remappingFunction- функция для вычисления значения - Возвращает:
- новое значение, связанное с указанным ключом, или null, если его нет
- Исключения:
-
SecurityException- если существует диспетчер безопасности и его методSecurityManager.checkSecurityAccess(java.lang.String)запрещает доступ к установке значений свойств или удалению свойств. - С версии:
- 1.8
merge
public Object merge(Object key,
Object value,
BiFunction<? super Object,? super Object,? extends Object> remappingFunction) Если указанный ключ еще не связан со значением или связан с null, связывает его с заданным значением. В противном случае заменяет значение результатами данной функции переназначения или удаляет, если результат равен null. Этот метод может быть полезен при объединении нескольких сопоставленных значений для ключа.
Если включен диспетчер безопасности, его метод checkSecurityAccess вызывается со строками "putProviderProperty."+name и "removeProviderProperty."+name, где name — имя поставщика, чтобы проверить, можно ли установить значения свойств этого поставщика и удалить свойства этого поставщика.
- Указано в:
-
mergeв интерфейсеMap<Object,Object> - Переопределяет:
-
mergeв классеHashtable<Object,Object> - Параметры:
-
key- ключ, с которым должно быть связано результирующее значение -
value- ненулевое значение, которое должно быть объединено с существующим значением, связанным с ключом, или, если с ключом не связано существующее значение или значение null, должно быть связано с ключом -
remappingFunction- функция для перевычисления значения, если оно присутствует - Возвращает:
- новое значение, связанное с указанным ключом, или null, если с ключом не связано значение
- Исключения:
-
SecurityException- если существует диспетчер безопасности и его методSecurityManager.checkSecurityAccess(java.lang.String)запрещает доступ к установке значений свойств или удалению свойств. - С версии:
- 1.8
get
public Object get(Object key)
Описание скопировано из класса: Hashtable
Возвращает значение, с которым сопоставлен указанный ключ, или null, если эта карта не содержит сопоставления для ключа.
Более формально, если эта карта содержит сопоставление из ключа k в значение v такое, что (key.equals(k)), то этот метод возвращает v; в противном случае он возвращает null. (Может быть не более одного такого сопоставления.)
- Указано в:
-
getв интерфейсеMap<Object,Object> - Переопределяет:
-
getв классеHashtable<Object,Object> - Параметры:
-
key- ключ, связанное с которым значение должно быть возвращено - Возвращает:
- значение, с которым сопоставлен указанный ключ, или
null, если эта карта не содержит сопоставления для ключа - См. также:
Hashtable.put(Object, Object)
getOrDefault
public Object getOrDefault(Object key,
Object defaultValue) Описание скопировано из интерфейса: Map
Возвращает значение, с которым сопоставлен указанный ключ, или defaultValue, если эта карта не содержит сопоставления для ключа.
- Указано в:
-
getOrDefaultв интерфейсеMap<Object,Object> - Переопределяет:
-
getOrDefaultв классеHashtable<Object,Object> - Параметры:
-
key- ключ, связанное с которым значение должно быть возвращено -
defaultValue- значение по умолчанию для ключа - Возвращает:
- значение, с которым сопоставлен указанный ключ, или
defaultValue, если эта карта не содержит сопоставления для ключа - С версии:
- 1.8
forEach
public void forEach(BiConsumer<? super Object,? super Object> action)
Описание скопировано из интерфейса: Map
Выполняет данное действие для каждой записи в этой карте, пока все записи не будут обработаны или действие не вызовет исключение. Если реализующим классом не указано иное, действия выполняются в порядке итерации множества записей (если порядок итерации указан). Исключения, выброшенные действием, передаются вызывающей стороне.
- Указано в:
-
forEachв интерфейсеMap<Object,Object> - Переопределяет:
-
forEachв классеHashtable<Object,Object> - Параметры:
-
action- Действие, которое должно быть выполнено для каждой записи - С версии:
- 1.8
keys
public Enumeration<Object> keys()
Описание скопировано из класса: Hashtable
Возвращает перечисление ключей в этой хэш-таблице.
- Переопределяет:
-
keysв классеHashtable<Object,Object> - Возвращает:
- перечисление ключей в этой хеш-таблице.
- См. также:
-
Enumeration,Hashtable.elements(),Hashtable.keySet(),Map
elements
public Enumeration<Object> elements()
Описание скопировано из класса: Hashtable
Возвращает перечисление значений в этой хеш-таблице. Используйте методы перечисления на возвращаемом объекте для последовательного извлечения элементов.
- Переопределяет:
-
elementsв классеHashtable<Object,Object> - Возвращает:
- перечисление значений в этой хеш-таблице.
- См. также:
-
Enumeration,Hashtable.keys(),Hashtable.values(),Map
getProperty
public String getProperty(String key)
Описание скопировано из класса: Properties
Ищет свойство с указанным ключом в этом списке свойств. Если ключ не найден в этом списке свойств, проверяется список свойств по умолчанию и его значения по умолчанию рекурсивно. Метод возвращает null , если свойство не найдено.
- Переопределяет:
-
getPropertyв классеProperties - Параметры:
-
key- ключ свойства. - Возвращает:
- значение свойства в этом списке свойств с указанным ключом.
- См. также:
-
Properties.setProperty(java.lang.String, java.lang.String),Properties.defaults
getService
public Provider.Service getService(String type,
String algorithm) Получает описание службы, описывающей реализацию данного поставщика указанного типа этого алгоритма или псевдонима. Если такая реализация не существует, этот метод возвращает null. Если существует две соответствующих службы, одна из которых добавлена в этот поставщик с помощью putService(), а другая — с помощью put(), возвращается служба, добавленная с помощью putService().
- Параметры:
-
type- тип запрашиваемойservice(например,MessageDigest) -
algorithm- нечувствительное к регистру имя алгоритма (или альтернативный псевдоним) запрашиваемой службы (например,SHA-1) - Возвращает:
- службу, описывающую соответствующую службу этого поставщика, или null, если такой службы не существует
- Исключения:
-
NullPointerException- если тип или алгоритм равны null - С:
- 1.5
getServices
public Set<Provider.Service> getServices()
Получает неизменяемый набор всех служб, поддерживаемых этим поставщиком.
- Возвращает:
- неизменяемый набор всех служб, поддерживаемых этим поставщиком
- С:
- 1.5
putService
protected void putService(Provider.Service s)
Добавляет службу. Если служба с тем же типом и тем же именем алгоритма существует и была добавлена с помощью putService(), она заменяется новой службой. Этот метод также помещает информацию об этой службе в таблицу значений хеш-таблицы поставщика в формате, описанном в Спецификации и справке API Java Cryptography Architecture .
Кроме того, если существует менеджер безопасности, его метод checkSecurityAccess вызывается со строкой "putProviderProperty."+name, где name — имя поставщика, чтобы проверить, разрешено ли устанавливать значения свойств этого поставщика. Если используется реализация по умолчанию checkSecurityAccess (то есть этот метод не переопределен), это приводит к вызову метода менеджера безопасности checkPermission с разрешением SecurityPermission("putProviderProperty."+name).
- Параметры:
-
s- добавляемая служба - Исключения:
-
SecurityException- если менеджер безопасности существует и его методSecurityManager.checkSecurityAccess(java.lang.String)запрещает доступ к установке значений свойств. -
NullPointerException- если s равно null - С:
- 1.5
removeService
protected void removeService(Provider.Service s)
Удаляет службу, ранее добавленную с помощью putService(). Указанная служба удаляется из этого поставщика. Она больше не будет возвращаться методом getService(), а её информация будет удалена из хеш-таблицы этого поставщика.
Кроме того, если существует менеджер безопасности, его метод checkSecurityAccess вызывается со строкой "removeProviderProperty."+name, где name — имя поставщика, чтобы проверить, разрешено ли удалять свойства этого поставщика. Если используется реализация по умолчанию checkSecurityAccess (то есть этот метод не переопределён), это приводит к вызову метода менеджера безопасности checkPermission с разрешением SecurityPermission("removeProviderProperty."+name).
- Параметры:
-
s- удаляемая служба - Исключения:
-
SecurityException- если менеджер безопасности существует и его методSecurityManager.checkSecurityAccess(java.lang.String)запрещает доступ к удалению свойств этого поставщика. -
NullPointerException- если s равно null - С:
- 1.5
© 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.