Spec-Zone .ru
спецификации, руководства, описания, API
|
public abstract class KeyInfoFactory extends Object
KeyInfo
объекты с нуля или для того, чтобы неупорядочить a KeyInfo
объект от соответствующего представления XML. Каждый экземпляр KeyInfoFactory
поддерживает определенный тип механизма XML. Создать a KeyInfoFactory
, вызовите одни из помех getInstance
методы, передающие в требуемом типе механизма XML, например:
KeyInfoFactory factory = KeyInfoFactory.getInstance("DOM");
Объекты, что эта фабрика продукты будет основана на ДОМЕ и соблюдать требования функциональной совместимости ДОМА как определено в разделе Требований ДОМА Мечанисма краткого обзора API. См. раздел Поставщиков услуг краткого обзора API для списка стандартных типов механизма.
KeyInfoFactory
реализации регистрируются и загрузили использование Provider
механизм. Например, поставщик услуг, который поддерживает механизм ДОМА, был бы определен в Provider
подкласс как:
put("KeyInfoFactory.DOM", "org.example.DOMKeyInfoFactory");
Кроме того, XMLStructure
s, которые создаются этой фабрикой, может содержать состояние, определенное для KeyInfo
и не предназначаются, чтобы быть допускающими повторное использование.
Реализация ДОЛЖНА минимально поддерживать тип механизма по умолчанию: ДОМ.
Отметьте, что вызывающая сторона должна использовать то же самое KeyInfoFactory
экземпляр, чтобы создать XMLStructure
s детали KeyInfo
объект. Поведение неопределено если XMLStructure
s от различных провайдеров или различных типов механизма используются вместе.
Параллельный Доступ
Статические методы этого класса, как гарантируют, будут ориентированы на многопотоковое исполнение. Многократные потоки могут одновременно вызвать статические методы, определенные в этом классе без вредных воздействий.
Однако, это не истина для нестатических методов, определенных этим классом. Если иначе не задокументировано определенным провайдером, потоки, которые должны получить доступ к синглу KeyInfoFactory
экземпляр одновременно должен синхронизироваться среди себя и обеспечить необходимую блокировку. Многократные потоки каждое управление различным KeyInfoFactory
экземпляр не должен синхронизироваться.
Модификатор | Конструктор и Описание |
---|---|
protected |
KeyInfoFactory()
Конструктор по умолчанию, для вызова подклассами.
|
Модификатор и Тип | Метод и Описание |
---|---|
static KeyInfoFactory |
getInstance()
Возвраты a
KeyInfoFactory это поддерживает XML по умолчанию, обрабатывающий механизм и тип представления ("ДОМ"). |
static KeyInfoFactory |
getInstance(String mechanismType)
Возвраты a
KeyInfoFactory это поддерживает указанный XML, обрабатывающий механизм и тип представления (исключая: "ДОМ"). |
static KeyInfoFactory |
getInstance(String mechanismType, Provider provider)
Возвраты a
KeyInfoFactory это поддерживает требуемый XML, обрабатывающий механизм и тип представления (исключая: "ДОМ"), как предоставлено указанным провайдером. |
static KeyInfoFactory |
getInstance(String mechanismType, String provider)
Возвраты a
KeyInfoFactory это поддерживает требуемый XML, обрабатывающий механизм и тип представления (исключая: "ДОМ"), как предоставлено указанным провайдером. |
Строка |
getMechanismType()
Возвращает тип XML, обрабатывающего механизм и представление, поддерживаемое этим
KeyInfoFactory (исключая: "ДОМ") |
Провайдер |
getProvider()
Возвращает провайдера этого
KeyInfoFactory . |
abstract URIDereferencer |
getURIDereferencer()
Возвращает ссылку на
URIDereferencer это используется по умолчанию, чтобы разыменовать URI в RetrievalMethod объекты. |
abstract boolean |
isFeatureSupported(String feature)
Указывает, поддерживается ли указанная функция.
|
abstract KeyInfo |
newKeyInfo(List content)
Создает a
KeyInfo содержа указанный список ключевых типов информации. |
abstract KeyInfo |
newKeyInfo(List content, String id)
Создает a
KeyInfo содержа указанный список ключевых типов информации и дополнительного идентификатора. |
abstract KeyName |
newKeyName(String name)
Создает a
KeyName с указанного имени. |
abstract KeyValue |
newKeyValue(PublicKey key)
Создает a
KeyValue от указанного открытого ключа. |
abstract PGPData |
newPGPData(byte[] keyId)
Создает a
PGPData от указанного идентификатора с открытым ключом PGP. |
abstract PGPData |
newPGPData(byte[] keyId, byte[] keyPacket, List other)
Создает a
PGPData от указанного идентификатора с открытым ключом PGP, и дополнительного ключевого материального пакета и списка внешних элементов. |
abstract PGPData |
newPGPData(byte[] keyPacket, List other)
Создает a
PGPData от указанного пакета материала ключа PGP и дополнительного списка внешних элементов. |
abstract RetrievalMethod |
newRetrievalMethod(String uri)
Создает a
RetrievalMethod от указанного URI. |
abstract RetrievalMethod |
newRetrievalMethod(String uri, String type, List transforms)
Создает a
RetrievalMethod от указанных параметров. |
abstract X509Data |
newX509Data(List content)
Создает a
X509Data содержа указанный список контента X.509. |
abstract X509IssuerSerial |
newX509IssuerSerial(String issuerName, BigInteger serialNumber)
Создает
X509IssuerSerial от указанного отличительного имени выпускающего X.500 и порядкового номера. |
abstract KeyInfo |
unmarshalKeyInfo(XMLStructure xmlStructure)
Неупорядочивает новое
KeyInfo экземпляр от специфичного для механизма XMLStructure (исключая: DOMStructure ) экземпляр. |
protected KeyInfoFactory()
public static KeyInfoFactory getInstance(String mechanismType)
KeyInfoFactory
это поддерживает указанный XML, обрабатывающий механизм и тип представления (исключая: "ДОМ"). Этот метод использует стандартный механизм поиска провайдера JCA, чтобы определить местоположение и инстанцировать a KeyInfoFactory
реализация требуемого типа механизма. Это пересекает список зарегистрированной безопасности Provider
s, запускаясь с самого привилегированного Provider
. Новое KeyInfoFactory
объект сначала Provider
это поддерживает указанный механизм, возвращается.
Отметьте, что список зарегистрированных провайдеров может быть получен через Security.getProviders()
метод.
mechanismType
- тип XML, обрабатывающего механизм и представление. См. раздел Поставщиков услуг краткого обзора API для списка стандартных типов механизма.KeyInfoFactory
NullPointerException
- если mechanismType
null
NoSuchMechanismException
- если нет Provider
поддерживает a KeyInfoFactory
реализация для указанного механизмаProvider
public static KeyInfoFactory getInstance(String mechanismType, Provider provider)
KeyInfoFactory
это поддерживает требуемый XML, обрабатывающий механизм и тип представления (исключая: "ДОМ"), как предоставлено указанным провайдером. Отметьте что указанное Provider
объект не должен быть зарегистрирован в списке провайдера.mechanismType
- тип XML, обрабатывающего механизм и представление. См. раздел Поставщиков услуг краткого обзора API для списка стандартных типов механизма.provider
- Provider
объектKeyInfoFactory
NullPointerException
- если mechanismType
или provider
null
NoSuchMechanismException
- если a KeyInfoFactory
реализация для указанного механизма не доступна от указанного Provider
объектProvider
public static KeyInfoFactory getInstance(String mechanismType, String provider) throws NoSuchProviderException
KeyInfoFactory
это поддерживает требуемый XML, обрабатывающий механизм и тип представления (исключая: "ДОМ"), как предоставлено указанным провайдером. Указанный провайдер должен быть зарегистрирован в списке поставщика систем обеспечения безопасности. Отметьте, что список зарегистрированных провайдеров может быть получен через Security.getProviders()
метод.
mechanismType
- тип XML, обрабатывающего механизм и представление. См. раздел Поставщиков услуг краткого обзора API для списка стандартных типов механизма.provider
- имя строки провайдераKeyInfoFactory
NoSuchProviderException
- если указанный провайдер не регистрируется в списке поставщика систем обеспечения безопасностиNullPointerException
- если mechanismType
или provider
null
NoSuchMechanismException
- если a KeyInfoFactory
реализация для указанного механизма не доступна от указанного провайдераProvider
public static KeyInfoFactory getInstance()
KeyInfoFactory
это поддерживает XML по умолчанию, обрабатывающий механизм и тип представления ("ДОМ"). Этот метод использует стандартный механизм поиска провайдера JCA, чтобы определить местоположение и инстанцировать a KeyInfoFactory
реализация типа механизма по умолчанию. Это пересекает список зарегистрированной безопасности Provider
s, запускаясь с самого привилегированного Provider
. Новое KeyInfoFactory
объект сначала Provider
это поддерживает механизм ДОМА, возвращается.
Отметьте, что список зарегистрированных провайдеров может быть получен через Security.getProviders()
метод.
KeyInfoFactory
NoSuchMechanismException
- если нет Provider
поддерживает a KeyInfoFactory
реализация для механизма ДОМАProvider
public final String getMechanismType()
KeyInfoFactory
(исключая: "ДОМ")KeyInfoFactory
public final Provider getProvider()
KeyInfoFactory
.KeyInfoFactory
public abstract KeyInfo newKeyInfo(List content)
KeyInfo
содержа указанный список ключевых типов информации.content
- список один или больше XMLStructure
s представляющий ключевые типы информации. Список защитно копируется, чтобы защитить от последующей модификации.KeyInfo
NullPointerException
- если content
null
IllegalArgumentException
- если content
пустоClassCastException
- если content
содержит любые записи, которые не имеют типа XMLStructure
public abstract KeyInfo newKeyInfo(List content, String id)
KeyInfo
содержа указанный список ключевых типов информации и дополнительного идентификатора. id
параметр представляет значение XML ID
припишите и полезно для ссылки KeyInfo
от других структур XML.content
- список один или больше XMLStructure
s представляющий ключевые типы информации. Список защитно копируется, чтобы защитить от последующей модификации.id
- значение XML ID
(может быть null
)KeyInfo
NullPointerException
- если content
null
IllegalArgumentException
- если content
пустоClassCastException
- если content
содержит любые записи, которые не имеют типа XMLStructure
public abstract KeyName newKeyName(String name)
KeyName
с указанного имени.name
- имя, которое идентифицирует ключKeyName
NullPointerException
- если name
null
public abstract KeyValue newKeyValue(PublicKey key) throws KeyException
KeyValue
от указанного открытого ключа.key
- открытый ключKeyValue
KeyException
- если key
's алгоритм не распознается или поддерживается этим KeyInfoFactory
NullPointerException
- если key
null
public abstract PGPData newPGPData(byte[] keyId)
PGPData
от указанного идентификатора с открытым ключом PGP.keyId
- идентификатор с открытым ключом PGP как определено в PGPData
NullPointerException
- если keyId
null
IllegalArgumentException
- если ключевой идентификатор не находится в корректном форматеpublic abstract PGPData newPGPData(byte[] keyId, byte[] keyPacket, List other)
PGPData
от указанного идентификатора с открытым ключом PGP, и дополнительного ключевого материального пакета и списка внешних элементов.keyId
- идентификатор с открытым ключом PGP как определено в keyPacket
- пакет материала ключа PGP как определено в null
.other
- список XMLStructure
s представление элементов от внешнего пространства имен. Список защитно копируется, чтобы защитить от последующей модификации. Может быть null
или пустой.PGPData
NullPointerException
- если keyId
null
IllegalArgumentException
- если keyId
или keyPacket
не находится в корректном формате. Для keyPacket
, формат пакетного заголовка проверяется, и тег проверяется, что это имеет ключевой материал типа. Содержание и формат пакетного тела не проверяются.ClassCastException
- если other
содержит любые записи, которые не имеют типа XMLStructure
public abstract PGPData newPGPData(byte[] keyPacket, List other)
PGPData
от указанного пакета материала ключа PGP и дополнительного списка внешних элементов.keyPacket
- пакет материала ключа PGP как определено в other
- список XMLStructure
s представление элементов от внешнего пространства имен. Список защитно копируется, чтобы защитить от последующей модификации. Может быть null
или пустой.PGPData
NullPointerException
- если keyPacket
null
IllegalArgumentException
- если keyPacket
не находится в корректном формате. Для keyPacket
, формат пакетного заголовка проверяется, и тег проверяется, что это имеет ключевой материал типа. Содержание и формат пакетного тела не проверяются.ClassCastException
- если other
содержит любые записи, которые не имеют типа XMLStructure
public abstract RetrievalMethod newRetrievalMethod(String uri)
RetrievalMethod
от указанного URI.uri
- URI, который идентифицирует KeyInfo
информация, которая будет полученаRetrievalMethod
NullPointerException
- если uri
null
IllegalArgumentException
- если uri
не совместимый RFC 2396public abstract RetrievalMethod newRetrievalMethod(String uri, String type, List transforms)
RetrievalMethod
от указанных параметров.uri
- URI, который идентифицирует KeyInfo
информация, которая будет полученаtype
- URI, который идентифицирует тип KeyInfo
информация, которая будет получена (может быть null
)transforms
- список Transform
s. Список защитно копируется, чтобы защитить от последующей модификации. Может быть null
или пустой.RetrievalMethod
NullPointerException
- если uri
null
IllegalArgumentException
- если uri
не совместимый RFC 2396ClassCastException
- если transforms
содержит любые записи, которые не имеют типа Transform
public abstract X509Data newX509Data(List content)
X509Data
содержа указанный список контента X.509.content
- список одного или более типов контента X.509. Допустимые типы String
(подвергните имена), byte[]
(подвергните ключевые идентификаторы), X509Certificate
, X509CRL
, или XMLStructure
(X509IssuerSerial
объекты или элементы от внешнего пространства имен). Подчиненные имена являются отличительными именами в Строковом формате RFC 2253. Реализации ДОЛЖНЫ поддерживать ключевые слова типа атрибута, определенные в RFC 2253 (CN, L, ST, O, OU, C, УЛИЦА, DC и UID). Реализации МОГУТ поддерживать дополнительные ключевые слова. Список защитно копируется, чтобы защитить от последующей модификации.X509Data
NullPointerException
- если content
null
IllegalArgumentException
- если content
пусто, или если подчиненное имя не является совместимым RFC 2253, или одно из ключевых слов типа атрибута не распознается.ClassCastException
- если content
содержит любые записи, которые не имеют одного из допустимых упомянутых выше типовpublic abstract X509IssuerSerial newX509IssuerSerial(String issuerName, BigInteger serialNumber)
X509IssuerSerial
от указанного отличительного имени выпускающего X.500 и порядкового номера.issuerName
- отличительное имя выпускающего в Строковом формате RFC 2253. Реализации ДОЛЖНЫ поддерживать ключевые слова типа атрибута, определенные в RFC 2253 (CN, L, ST, O, OU, C, УЛИЦА, DC и UID). Реализации МОГУТ поддерживать дополнительные ключевые слова.serialNumber
- порядковый номерX509IssuerSerial
NullPointerException
- если issuerName
или serialNumber
null
IllegalArgumentException
- если имя выпускающего не является совместимым RFC 2253, или одно из ключевых слов типа атрибута не распознается.public abstract boolean isFeatureSupported(String feature)
feature
- имя функции (как абсолютный URI)true
если указанная функция поддерживается, false
иначеNullPointerException
- если feature
null
public abstract URIDereferencer getURIDereferencer()
URIDereferencer
это используется по умолчанию, чтобы разыменовать URI в RetrievalMethod
объекты.URIDereferencer
public abstract KeyInfo unmarshalKeyInfo(XMLStructure xmlStructure) throws MarshalException
KeyInfo
экземпляр от специфичного для механизма XMLStructure
(исключая: DOMStructure
) экземпляр.xmlStructure
- специфичная для механизма структура XML, от которой можно неупорядочить keyinfo отKeyInfo
NullPointerException
- если xmlStructure
null
ClassCastException
- если тип xmlStructure
является несоответствующим для этой фабрикиMarshalException
- если неисправимое исключение происходит во время немаршалинга
Для дальнейшей ссылки API и документации разработчика, см.
Авторское право © 1993, 2011, Oracle и/или его филиалы. Все права защищены.