Spec-Zone.ru › OpenJDK 17

Класс 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 Smart Card платформы хоста. Реализации не требуют параметров и принимают "null" в качестве аргумента в вызовах getInstance().
None
реализация, которая не предоставляет никаких CardTerminals. На платформах, которые не поддерживают другие реализации, getDefaultType() возвращает None и getDefault() возвращает экземпляр None TerminalFactory. Фабрики этого типа нельзя получить, вызвав getInstance() методы.
В будущем могут быть определены дополнительные стандартные типы.

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

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. Если вызов успешен, тип становится типом по умолчанию, а фабрика становится фабрикой по умолчанию default.

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

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

getDefault

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

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

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

getInstance

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

Этот метод проходит по списку зарегистрированных поставщиков безопасности, начиная с наиболее предпочтительного. Возвращается новый объект TerminalFactory, содержащий реализацию 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, содержащий реализацию 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, содержащий реализацию 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, содержащий терминалы, поддерживаемые этой фабрикой. См. комментарий к классу CardTerminals относительно того, как можно совместно использовать и повторно использовать возвращаемые объекты.
Возвращает:
новый объект CardTerminals, содержащий терминалы, поддерживаемые этой фабрикой.

toString

public String toString()
Возвращает строковое представление данного TerminalFactory.
Overrides:
toString в классе Object
Возвращает:
строковое представление данного TerminalFactory.

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

Spec-Zone.ru

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