Spec-Zone.ru › OpenJDK 25

Класс Provider.Service

java.lang.Object
java.security.Provider.Service
Внешний класс:
Provider
public static class Provider.Service extends Object
Описание службы безопасности. Этот класс инкапсулирует свойства службы и содержит фабричный метод для получения новых экземпляров реализации этой службы.

У каждой службы есть поставщик, предлагающий эту службу, тип, имя алгоритма и имя класса, реализующего службу. При необходимости также указываются альтернативные имена алгоритма для этой службы (псевдонимы) и атрибуты — пары String (имя, значение), образующие карту.

Этот класс определяет методы supportsParameter() и newInstance(), которые используются платформой безопасности Java при поиске подходящих служб и создании их экземпляров. Допустимые аргументы этих методов зависят от типа службы. Допустимые значения для типов служб, определённых в Java SE, см. в справочном руководстве по архитектуре криптографии Java (JCA). Обратите внимание, что компоненты, не входящие в Java SE, могут определять дополнительные типы служб и их поведение.

Экземпляры этого класса неизменяемы.

Начиная с версии:
1.5

Краткое описание конструкторов

Конструктор Описание
Service(Provider provider, String type, String algorithm, String className, List<String> aliases, Map<String,String> attributes)
Создаёт новую службу.

Краткое описание методов

Модификатор и тип Метод Описание
final String getAlgorithm()
Возвращает имя алгоритма этой службы.
final String getAttribute(String name)
Возвращает значение указанного атрибута или null, если для этой службы атрибут не задан.
final String getClassName()
Возвращает имя класса, реализующего эту службу.
final Provider getProvider()
Возвращает поставщика этой службы.
final String getType()
Возвращает тип этой службы.
Object newInstance(Object constructorParameter)
Возвращает новый экземпляр реализации, описанной этой службой.
boolean supportsParameter(Object parameter)
Проверяет, может ли эта служба использовать указанный параметр.
String toString()
Возвращает String представление этой службы.

Методы, объявленные в классе Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

Подробное описание конструкторов

Service

public Service(Provider provider, String type, String algorithm, String className, List<String> aliases, Map<String,String> attributes)
Создаёт новую службу.
Параметры:
provider — поставщик, предлагающий эту службу
type — тип этой службы
algorithm — имя алгоритма
className — имя класса, реализующего эту службу
aliases — список псевдонимов или null, если у алгоритма нет псевдонимов
attributes — карта атрибутов или null, если у этой реализации нет атрибутов
Исключения:
NullPointerException — если provider, type, algorithm или className равно null

Подробное описание методов

getType

public final String getType()
Возвращает тип этой службы. Например, MessageDigest.
Возвращает:
тип этой службы

getAlgorithm

public final String getAlgorithm()
Возвращает имя алгоритма этой службы. Например, SHA-1.
Возвращает:
алгоритм этой службы

getProvider

public final Provider getProvider()
Возвращает поставщика этой службы.
Возвращает:
поставщика этой службы

getClassName

public final String getClassName()
Возвращает имя класса, реализующего эту службу.
Возвращает:
имя класса, реализующего эту службу

getAttribute

public final String getAttribute(String name)
Возвращает значение указанного атрибута или null, если для этой службы атрибут не задан.
Параметры:
name — имя запрашиваемого атрибута
Возвращает:
значение указанного атрибута или null, если атрибут отсутствует
Исключения:
NullPointerException — если name равно null

newInstance

public Object newInstance(Object constructorParameter) throws NoSuchAlgorithmException
Возвращает новый экземпляр реализации, описанной этой службой. Платформа поставщиков безопасности использует этот метод для создания реализаций. Обычно приложениям не требуется вызывать его.

Реализация по умолчанию использует отражение для вызова стандартного конструктора этого типа службы. Поставщики безопасности могут переопределить этот метод, чтобы реализовать создание экземпляров другим способом. Подробные сведения и допустимые значения constructorParameter для различных типов служб см. в справочном руководстве по архитектуре криптографии Java (JCA).

Параметры:
constructorParameter — значение, передаваемое конструктору, или null, если для этого типа службы параметр constructorParameter не используется.
Возвращает:
новая реализация этой службы
Исключения:
InvalidParameterException — если значение constructorParameter недопустимо для этого типа службы.
NoSuchAlgorithmException — если создание экземпляра не удалось по любой другой причине.

supportsParameter

public boolean supportsParameter(Object parameter)
Проверяет, может ли эта служба использовать указанный параметр. Возвращает false, если эта служба не может использовать параметр. Возвращает true, если эта служба может использовать параметр, если быстрая проверка невозможна или если состояние неизвестно.

Платформа поставщиков безопасности использует этот метод для некоторых типов служб, чтобы быстро исключить неподходящие реализации из рассмотрения. Обычно приложениям не требуется вызывать его.

Подробные сведения и допустимые значения parameter для различных типов служб см. в начале этого класса и в справочном руководстве по архитектуре криптографии Java (JCA). Поставщики безопасности могут переопределить этот метод для реализации собственной проверки.

Параметры:
parameter — проверяемый параметр
Возвращает:
false, если эта служба не может использовать указанный параметр; true, если она, возможно, может использовать этот параметр
Исключения:
InvalidParameterException — если значение parameter недопустимо для этого типа службы или если этот метод нельзя использовать с данным типом службы

toString

public String toString()
Возвращает String представление этой службы.
Переопределяет:
toString в классе Object
Возвращает:
String представление этой службы.

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по API и документацию для разработчиков см. в документации Java SE, содержащей более подробные описания для разработчиков, обзоры концепций, определения терминов, обходные решения и примеры работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её аффилированных лиц в США и других странах.
Авторские права © 1993, 2025, Oracle и/или её аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 1993, 2025, 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.
https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/security/Provider.Service.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API