public interface XMLCryptoContext
包含用于 XML 加密操作的通用上下文信息。
此接口包含一些方法可用来设置和检索那些影响 XML 签名或 XML 加密结构处理的属性。
注意,XMLCryptoContext
实例可以包含特定于所使用的 XML 加密结构的信息和状态。如果 XMLCryptoContext
使用多个结构(例如,不应该使用相同的 XMLValidateContext
实例来验证两个不同的 XMLSignature
对象),则结果是不可预知的。
方法摘要 | |
---|---|
Object |
get(Object key) 返回此上下文将指定键映射到的值。 |
String |
getBaseURI() 返回基本 URI。 |
String |
getDefaultNamespacePrefix() 返回默认名称空间前缀。 |
KeySelector |
getKeySelector() 返回用于查找某个密钥的密钥选择器。 |
String |
getNamespacePrefix(String namespaceURI, String defaultPrefix) 返回与指定的名称空间 URI 关联的名称空间前缀。 |
Object |
getProperty(String name) 返回指定属性的值。 |
URIDereferencer |
getURIDereferencer() 返回用来取消引用 URIReference 的 URIDereferencer 。 |
Object |
put(Object key, Object value) 将指定值与此上下文中的指定键关联。 |
String |
putNamespacePrefix(String namespaceURI, String prefix) 将指定的名称空间 URI 映射到指定的前缀。 |
void |
setBaseURI(String baseURI) 设置基本 URI。 |
void |
setDefaultNamespacePrefix(String defaultPrefix) 设置默认的名称空间前缀。 |
void |
setKeySelector(KeySelector ks) 设置用于查找某个密钥的密钥选择器。 |
Object |
setProperty(String name, Object value) 设置指定的属性。 |
void |
setURIDereferencer(URIDereferencer dereferencer) 设置用来取消引用 URIReference 的 URIDereferencer 。 |
方法详细信息 |
---|
String getBaseURI()
null
setBaseURI(String)
void setBaseURI(String baseURI)
baseURI
- 基本 URI;或者为
null
,表示移除当前值
IllegalArgumentException
- 如果
baseURI
与 RFC 2396 不兼容
getBaseURI()
KeySelector getKeySelector()
null
setKeySelector(KeySelector)
void setKeySelector(KeySelector ks)
ks
- 密钥选择器;或者为
null
,表示移除当前设置
getKeySelector()
URIDereferencer getURIDereferencer()
URIReference
的
URIDereferencer
。
URIDereferencer
;如果未指定,则返回
null
setURIDereferencer(URIDereferencer)
void setURIDereferencer(URIDereferencer dereferencer)
URIReference
的
URIDereferencer
。使用指定的
URIDereferencer
来代替某一实现的默认
URIDereferencer
。
dereferencer
-
URIDereferencer
;或者为
null
,表示移除任何当前设置
getURIDereferencer()
String getNamespacePrefix(String namespaceURI, String defaultPrefix)
putNamespacePrefix
方法。
namespaceURI
- 名称空间 URI
defaultPrefix
- 在没有将指定的名称空间 URI 绑定到某一前缀的情况下将被返回的前缀。
defaultPrefix
。如果已注册名称空间 URI,但没有前缀,则返回一个空字符串 (
""
)。
NullPointerException
- 如果
namespaceURI
为
null
putNamespacePrefix(String, String)
String putNamespacePrefix(String namespaceURI, String prefix)
namespaceURI
- 名称空间 URI
prefix
- 名称空间前缀(或者为
null
,表示移除所有现有映射)。指定空字符串 (
""
) 则表示不将任何前缀绑定到名称空间 URI。
null
NullPointerException
- 如果
namespaceURI
为
null
getNamespacePrefix(String, String)
String getDefaultNamespacePrefix()
putNamespacePrefix
方法显式设置。
null
。
setDefaultNamespacePrefix(String)
void setDefaultNamespacePrefix(String defaultPrefix)
putNamespacePrefix
方法显式设置的名称空间 URI 的名称空间前缀。
defaultPrefix
- 默认的名称空间前缀;或者为
null
,表示移除当前设置。指定空字符串 (
""
) 则表示不绑定任何前缀。
getDefaultNamespacePrefix()
Object setProperty(String name, Object value)
name
- 属性名称
value
- 要设置的属性值
null
NullPointerException
- 如果
name
为
null
getProperty(String)
Object getProperty(String name)
name
- 属性名称
null
NullPointerException
- 如果
name
为
null
setProperty(String, Object)
Object get(Object key)
更正式地说,如果此上下文包含键 k
到值 v
的映射关系:(key==null ? k==null :key.equals(k))
,则此方法返回 v
;否则返回 null
。(最多只能有一个这样的映射关系)。
对于检索特定于使用此上下文的加密操作的任意信息,此方法很有用。
key
- 关联值将被返回的键
null
put(Object, Object)
Object put(Object key, Object value)
对于存储特定于使用此上下文的加密操作的任意信息,此方法很有用。
key
- 将与指定值关联的键
value
- 将与指定键关联的值
null
IllegalArgumentException
- 如果此键或值的某个方面阻止它存储在此上下文中
get(Object)