Class ResolverXPointer
- java.lang.Object
-
- org.apache.xml.security.utils.resolver.ResourceResolverSpi
-
- org.apache.xml.security.utils.resolver.implementations.ResolverXPointer
-
public class ResolverXPointer extends ResourceResolverSpi
Handles barename XPointer Reference URIs. To retain comments while selecting an element by an identifier ID, use the following full XPointer: URI='#xpointer(id('ID'))'. To retain comments while selecting the entire document, use the following full XPointer: URI='#xpointer(/)'. This XPointer contains a simple XPath expression that includes the root node, which the second to last step above replaces with all nodes of the parse tree (all descendants, plus all attributes, plus all namespaces nodes).
-
-
Field Summary
Fields Modifier and Type Field Description private static org.slf4j.Logger
LOG
private static java.lang.String
XP
private static int
XP_LENGTH
-
Fields inherited from class org.apache.xml.security.utils.resolver.ResourceResolverSpi
properties
-
-
Constructor Summary
Constructors Constructor Description ResolverXPointer()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
engineCanResolveURI(ResourceResolverContext context)
This method helps theResourceResolver
to decide whether aResourceResolverSpi
is able to perform the requested action.boolean
engineIsThreadSafe()
Tells if the implementation does can be reused by several threads safely.XMLSignatureInput
engineResolveURI(ResourceResolverContext context)
This is the workhorse method used to resolve resources.private static java.lang.String
getXPointerId(java.lang.String uri)
Method getXPointerIdprivate static boolean
isXPointerId(java.lang.String uri)
Method isXPointerIdprivate static boolean
isXPointerSlash(java.lang.String uri)
Method isXPointerSlash-
Methods inherited from class org.apache.xml.security.utils.resolver.ResourceResolverSpi
engineAddProperies, engineGetProperty, engineGetPropertyKeys, engineSetProperty, fixURI, understandsProperty
-
-
-
-
Field Detail
-
LOG
private static final org.slf4j.Logger LOG
-
XP
private static final java.lang.String XP
- See Also:
- Constant Field Values
-
XP_LENGTH
private static final int XP_LENGTH
-
-
Method Detail
-
engineIsThreadSafe
public boolean engineIsThreadSafe()
Description copied from class:ResourceResolverSpi
Tells if the implementation does can be reused by several threads safely. It normally means that the implementation does not have any member, or there is member change between engineCanResolve and engineResolve invocations. Or it maintains all member info in ThreadLocal methods.- Overrides:
engineIsThreadSafe
in classResourceResolverSpi
-
engineResolveURI
public XMLSignatureInput engineResolveURI(ResourceResolverContext context) throws ResourceResolverException
This is the workhorse method used to resolve resources.- Specified by:
engineResolveURI
in classResourceResolverSpi
- Parameters:
context
- Context to use to resolve resources.- Returns:
- the resource wrapped around a XMLSignatureInput
- Throws:
ResourceResolverException
-
engineCanResolveURI
public boolean engineCanResolveURI(ResourceResolverContext context)
This method helps theResourceResolver
to decide whether aResourceResolverSpi
is able to perform the requested action.- Specified by:
engineCanResolveURI
in classResourceResolverSpi
- Parameters:
context
- Context in which to do resolution.- Returns:
- true if the engine can resolve the uri
-
isXPointerSlash
private static boolean isXPointerSlash(java.lang.String uri)
Method isXPointerSlash- Parameters:
uri
-- Returns:
- true if begins with xpointer
-
isXPointerId
private static boolean isXPointerId(java.lang.String uri)
Method isXPointerId- Parameters:
uri
-- Returns:
- whether it has an xpointer id
-
getXPointerId
private static java.lang.String getXPointerId(java.lang.String uri)
Method getXPointerId- Parameters:
uri
-- Returns:
- xpointerId to search.
-
-