Spec-Zone.ru › OpenJDK 21

Класс TerminalFactory

java.lang.Object
javax.smartcardio.TerminalFactory
public final class TerminalFactory extends Object
Фабрика объектов CardTerminal. Она позволяет приложению
  • получить TerminalFactory, вызвав один из статических методов фабрики в этом классе (getDefault() или getInstance()).
  • использовать этот объект TerminalFactory для доступа к CardTerminals, вызвав метод terminals().

Каждый TerminalFactory имеет type, указывающий, как он был реализован. Он должен быть указан, когда реализация получается с помощью метода getInstance(), и может быть получен через метод getType().

Определены следующие стандартные имена типов:

PC/SC
реализация, которая обращается к стеку PC/SC смарт-карт платформы хоста. Реализации не требуют параметров и принимают "null" в качестве аргумента в вызовах getInstance().
None
реализация, которая не предоставляет никаких CardTerminals. На платформах, которые не поддерживают другие реализации, getDefaultType() возвращает None, а getDefault() возвращает экземпляр None TerminalFactory. Фабрики этого типа не могут быть получены, вызвав getInstance() методы.
В будущем могут быть определены дополнительные стандартные типы.

Примечание: Реализации поставщиков, которые принимают параметры инициализации через getInstance() методы, настоятельно рекомендуются использовать объект Properties в качестве представления для параметров в формате пар имя-значение типа String, когда это возможно. Это позволяет приложениям более легко взаимодействовать с несколькими поставщиками, чем если бы каждый поставщик использовал разные классы поставщика в качестве параметров.

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

Since:
1.6
См. также:
  • CardTerminals
  • Provider

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

Модификатор и тип Метод Описание
static TerminalFactory getDefault()
Возвращает экземпляр TerminalFactory по умолчанию.
static String getDefaultType()
Получение типа TerminalFactory по умолчанию.
static TerminalFactory getInstance(String type, Object params)
Возвращает TerminalFactory указанного типа, инициализированного указанными параметрами.
static TerminalFactory getInstance(String type, Object params, String provider)
Возвращает TerminalFactory указанного типа, инициализированного указанными параметрами.
static TerminalFactory getInstance(String type, Object params, Provider provider)
Возвращает TerminalFactory указанного типа, инициализированного указанными параметрами.
Provider getProvider()
Возвращает поставщика этого TerminalFactory.
String getType()
Возвращает тип этого TerminalFactory.
CardTerminals terminals()
Возвращает новый объект CardTerminals, инкапсулирующий терминалы, поддерживаемые этой фабрикой.
String toString()
Возвращает строковое представление этого TerminalFactory.

Методы, унаследованные от класса java.lang.Object

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

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

getDefaultType

public static String getDefaultType()
Получить тип по умолчанию для TerminalFactory.

Тип определяется следующим образом: при инициализации этого класса, проверяется системная переменная javax.smartcardio.TerminalFactory.DefaultType. Если она установлена, то создается TerminalFactory этого типа, вызывая метод getInstance(String,Object) и передавая null в качестве значения для params. Если вызов успешен, тип становится типом по умолчанию, а фабрика становится фабрикой по умолчанию.

Если системная переменная не установлена или вызов getInstance() завершается ошибкой по любой причине, используется тип и фабрика по умолчанию, специфичные для реализации.

Возвращает:
тип TerminalFactory по умолчанию

getDefault

public static TerminalFactory getDefault()
Возвращает экземпляр TerminalFactory по умолчанию. Более подробная информация содержится в getDefaultType().

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

Возвращает:
фабрику TerminalFactory по умолчанию

getInstance

public static TerminalFactory getInstance(String type, Object params) throws NoSuchAlgorithmException
Возвращает фабрику TerminalFactory указанного типа, инициализированную заданными параметрами.

Этот метод проходит по списку зарегистрированных поставщиков безопасности, начиная с наиболее предпочтительного. Возвращается новый объект TerminalFactory, encapsulating реализацию TerminalFactorySpi от первого поставщика, поддерживающего указанный тип.

Обратите внимание, что список зарегистрированных поставщиков можно получить с помощью метода Security.getProviders().

TerminalFactory инициализируется заданными параметрами Object. Тип необходимых параметров может различаться в зависимости от разных типов TerminalFactory.

Примечание по реализации:
Реализация JDK дополнительно использует свойство jdk.security.provider.preferred Security для определения предпочтительного порядка поставщиков для указанного алгоритма. Это может отличаться от порядка поставщиков, возвращаемого Security.getProviders().
Параметры:
type - тип запрашиваемой фабрики TerminalFactory
params - параметры для передачи реализации TerminalFactorySpi, или null, если параметры не требуются
Возвращает:
фабрику TerminalFactory указанного типа
Исключения:
NullPointerException - если тип равен null
NoSuchAlgorithmException - если ни один поставщик не поддерживает TerminalFactorySpi указанного типа

getInstance

public static TerminalFactory getInstance(String type, Object params, String provider) throws NoSuchAlgorithmException, NoSuchProviderException
Возвращает фабрику TerminalFactory указанного типа, инициализированную заданными параметрами.

Возвращается новый объект TerminalFactory, encapsulating реализацию TerminalFactorySpi от указанного поставщика. Указанный поставщик должен быть зарегистрирован в списке поставщиков безопасности.

Обратите внимание, что список зарегистрированных поставщиков можно получить с помощью метода Security.getProviders().

TerminalFactory инициализируется заданными параметрами Object. Тип необходимых параметров может различаться в зависимости от разных типов TerminalFactory.

Параметры:
type - тип запрашиваемой фабрики TerminalFactory
params - параметры для передачи реализации TerminalFactorySpi, или null, если параметры не требуются
provider - имя поставщика
Возвращает:
фабрику TerminalFactory указанного типа
Исключения:
NullPointerException - если тип равен null
IllegalArgumentException - если поставщик равен null или пустой строке
NoSuchAlgorithmException - если реализация TerminalFactorySpi указанного типа недоступна от указанного поставщика
NoSuchAlgorithmException - если не найдена фабрика TerminalFactory указанного типа
NoSuchProviderException - если указанный поставщик не найден

getInstance

public static TerminalFactory getInstance(String type, Object params, Provider provider) throws NoSuchAlgorithmException
Возвращает фабрику TerminalFactory указанного типа, инициализированную заданными параметрами.

Возвращается новый объект TerminalFactory, encapsulating реализацию TerminalFactorySpi от указанного объекта поставщика. Обратите внимание, что указанный объект поставщика не обязательно должен быть зарегистрирован в списке поставщиков.

TerminalFactory инициализируется заданными параметрами Object. Тип необходимых параметров может различаться в зависимости от разных типов TerminalFactory.

Параметры:
type - тип запрашиваемой фабрики TerminalFactory
params - параметры для передачи реализации TerminalFactorySpi, или null, если параметры не требуются
provider - поставщик
Возвращает:
фабрику TerminalFactory указанного типа
Исключения:
NullPointerException - если тип равен null
IllegalArgumentException - если поставщик равен null
NoSuchAlgorithmException - если реализация TerminalFactorySpi указанного типа недоступна от указанного поставщика

getProvider

public Provider getProvider()
Возвращает поставщика данной фабрики TerminalFactory.
Возвращает:
поставщика данной фабрики TerminalFactory.

getType

public String getType()
Возвращает тип данной фабрики TerminalFactory. Это значение, которое было указано в методе getInstance(), который вернул этот объект.
Возвращает:
тип данной фабрики TerminalFactory

terminals

public CardTerminals terminals()
Возвращает новый объект CardTerminals, encapsulating поддерживаемые этой фабрикой терминалы. См. комментарий к классу CardTerminals относительно того, как возвращаемые объекты могут быть объединены и повторно использованы.
Возвращает:
новый объект CardTerminals, encapsulating поддерживаемые этой фабрикой терминалы.

toString

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

© 1993, 2023, 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/21/docs/api/java.smartcardio/javax/smartcardio/TerminalFactory.html

Spec-Zone.ru

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