public abstract class AlgorithmMethodImpl extends DOMStructure implements AlgorithmMethod
AlgorithmMethod
type that supports the
DOM XML representation and processing mechanism.DOMStructure.NodeWrapper
Modifier and Type | Field and Description |
---|---|
protected URI |
algorithm_
The algorithm URI.
|
protected AlgorithmParameters |
params_
The algorithm parameters.
|
protected AlgorithmParameterSpec |
spec_
The algorithm parameter spec.
|
implMap_, state_, STATE_CREATED, STATE_MARSHALED, STATE_UNINITIALIZED, STATE_UNMARSHALED
Modifier | Constructor and Description |
---|---|
protected |
AlgorithmMethodImpl(Node node)
Creates a new instance of this
AlgorithmMethodImpl with the
specified node. |
protected |
AlgorithmMethodImpl(String algorithm,
AlgorithmParameterSpec params)
Creates a new instance of this
AlgorithmMethodImpl with the
specified algorithm and parameter spec. |
Modifier and Type | Method and Description |
---|---|
protected boolean |
containsElements(NodeList nodes)
|
String |
getAlgorithm()
Returns the algorithm URI of this
AlgorithmMethod . |
protected void |
getAlgorithmInstance(XSecProvider.Purpose purpose) |
protected abstract void |
getAlgorithmInstanceUncaught(XSecProvider.Purpose purpose) |
AlgorithmParameterSpec |
getParameterSpec()
Returns the algorithm parameters of this
AlgorithmMethod . |
protected abstract Class |
getParameterSpecClass() |
protected void |
getParamInstanceUncaught(XSecProvider.Purpose purpose) |
Node |
marshal(DOMCryptoContext context,
Node parent,
Node nextSibling)
Marshal the DOM node representation of this
DOMStructure and
all its child DOMStructures . |
protected void |
marshalAttributes(DOMCryptoContext context,
Element parent)
Marshals the XML representation of all
Attributes
represented by this DOMStrucuture . |
protected void |
unmarshalAttributes(NamedNodeMap attributes,
DOMCryptoContext context)
Unmarshal the given
attributes . |
protected void |
unmarshalStructures(NodeList nodes,
DOMCryptoContext context)
Unmarshals
DOMStructure s from the given nodes . |
addBytesToElement, addBytesToElement, clearMarshalling, clearMarshalling, getBytesFromElement, getBytesFromElementStream, getChildStructures, getChildStructureVersion, getHere, getImplClass, getInstance, getInstance, getLocalName, getNamespace, getNode, getParentStructure, getParentStructureOf, getQualifiedName, getQualifiedName, hasNSDeclAttrInScope, isFeatureSupported, isNSDeclInScope, marshalElement, marshalIDAttribute, newIDforLookUp, putChildStructure, putImplClass, setBackToCompatibilityPrior1_14, setNode, setParentStructure, toString, unmarshal, unmarshalElement, unmarshalIDAttribute, wrapNode
protected URI algorithm_
null
)protected AlgorithmParameterSpec spec_
protected AlgorithmParameters params_
protected AlgorithmMethodImpl(String algorithm, AlgorithmParameterSpec params) throws NoSuchAlgorithmException, InvalidAlgorithmParameterException
AlgorithmMethodImpl
with the
specified algorithm and parameter spec.algorithm
- the algorithm URIparams
- the algorithm parameter specNoSuchAlgorithmException
- if an implementation of the specified algorithm cannot be foundInvalidAlgorithmParameterException
- if the specified parameters are inappropriate for the requested
algorithmprotected AlgorithmMethodImpl(Node node)
AlgorithmMethodImpl
with the
specified node.node
- the nodeprotected abstract void getAlgorithmInstanceUncaught(XSecProvider.Purpose purpose) throws NoSuchAlgorithmException
NoSuchAlgorithmException
protected void getParamInstanceUncaught(XSecProvider.Purpose purpose) throws NoSuchAlgorithmException
NoSuchAlgorithmException
protected final void getAlgorithmInstance(XSecProvider.Purpose purpose) throws NoSuchAlgorithmException
NoSuchAlgorithmException
public String getAlgorithm()
javax.xml.crypto.AlgorithmMethod
AlgorithmMethod
.getAlgorithm
in interface AlgorithmMethod
AlgorithmMethod
AlgorithmMethod.getAlgorithm()
protected void marshalAttributes(DOMCryptoContext context, Element parent) throws MarshalException
DOMStructure
Attributes
represented by this DOMStrucuture
.
This method is called by DOMStructure.marshal(DOMCryptoContext, Node, Node)
.
If no namespace prefix is set in the context
for the namespace
of the Element
represented by this DOMStructure
an
namespace declaration is marshaled and returned. Otherwise, an empty list
is returned.
A subclass has to overwrite this method in order to marshal any additional attributes.
marshalAttributes
in class DOMStructure
context
- the marshal contextparent
- the element is the parent of the attribute node created however, an
the attribute node is not a child of it's parent element. see XPath.MarshalException
- if an exception occurs during marshalingDOMStructure.marshalAttributes(DOMCryptoContext,
Element)
protected void unmarshalAttributes(NamedNodeMap attributes, DOMCryptoContext context) throws MarshalException
DOMStructure
attributes
.
This method is called by DOMStructure.unmarshal(DOMCryptoContext)
.
A subclass has to overwrite this method to perform any special unmarshaling required.
unmarshalAttributes
in class DOMStructure
attributes
- the Attr
ibutes to unmarshalcontext
- the marshal contextMarshalException
- if an exception occurs during unmarshalingDOMStructure.unmarshalAttributes(org.w3c.dom.NamedNodeMap,
DOMCryptoContext)
public Node marshal(DOMCryptoContext context, Node parent, Node nextSibling) throws MarshalException
DOMStructure
DOMStructure
and
all its child DOMStructures
.
marshal
in class DOMStructure
context
- the DOMMarshalContext
holding context information about
the marshaling of this DOMStructure
parent
- where to place the marshalled nodenextSibling
- before wich to place the marshalled nodeDOMStrucuture
and
all its child DOMStructurues
MarshalException
- if the marshaling fails for any reasonDOMStructure.marshal(DOMCryptoContext, Node, Node)
protected boolean containsElements(NodeList nodes)
nodes
- the node listtrue
if the given node list contains any Node
s
of type Node.ELEMENT_NODE
, othewise false
protected void unmarshalStructures(NodeList nodes, DOMCryptoContext context) throws MarshalException
DOMStructure
DOMStructure
s from the given nodes
.
This method is called by DOMStructure.unmarshal(DOMCryptoContext)
.
This method calls DOMStructure.getInstance(Node, DOMCryptoContext)
for every
Element
in the list of nodes
. If
DOMStructure.getInstance(Node, DOMCryptoContext)
returns a
DOMStructure
DOMStructure.putChildStructure(DOMStructure)
is
called with the returned DOMStructure
as parameter.
unmarshalStructures
in class DOMStructure
nodes
- the nodes to unmarshal fromcontext
- the marshal contextMarshalException
- if an exception occurs during marshalingDOMStructure.unmarshalStructures(org.w3c.dom.NodeList,
DOMCryptoContext)
public final AlgorithmParameterSpec getParameterSpec()
javax.xml.crypto.AlgorithmMethod
AlgorithmMethod
.getParameterSpec
in interface AlgorithmMethod
AlgorithmMethod
.
Returns null
if this AlgorithmMethod
does
not require parameters and they are not specified.AlgorithmMethod.getParameterSpec()
,
SignatureMethod.getParameterSpec()
protected abstract Class getParameterSpecClass()
Class
of the concrete parameter spec to be returned by
getParameterSpec()
.getParameterSpec()
© 2002-2005 IAIK, © 2004, 2006 - 2019 Stiftung SIC