Package net.shibboleth.shared.xml

# Class ClasspathResolver

java.lang.Object
net.shibboleth.shared.xml.ClasspathResolver

All Implemented Interfaces:
  `LSResourceResolver`, `EntityResolver`

public class ClasspathResolver extends Object implements EntityResolver, LSResourceResolver
A entity resolver that resolves an entity's location within the classpath. Entity URIs must begin with the prefix `classpath:` and be followed by either an absolute or relative classpath. Relative classpaths are relative to this class. This resolver will not attempt to resolve any other URIs.

## Nested Class Summary

Nested Classes
Modifier and Type
Class
Description
`protected class`
`ClasspathResolver.LSInputImpl`
Implementation of DOM 3 `LSInput`.

## Field Summary

Fields
Modifier and Type
Field
Description
`static final String`
`CLASSPATH_URI_SCHEME`
URI scheme for classpath locations.
`private final org.slf4j.Logger`
`log`
Class logger.

## Constructor Summary

Constructors
Constructor
Description
`ClasspathResolver()`

## Method Summary

Modifier and Type
Method
Description
`InputSource`
`resolveEntity(String publicId, String systemId)`
`protected InputStream`
`resolver(String publicId, String systemId)`
Resolves an id against the classpath.
`LSInput`
`resolveResource(String type, String namespaceURI, String publicId, String systemId, String baseURI)`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Field Details

### CLASSPATH_URI_SCHEME

@Nonnull @NotEmpty public static final String CLASSPATH_URI_SCHEME
URI scheme for classpath locations.

See Also:
  - Constant Field Values

### log

@Nonnull private final org.slf4j.Logger log
Class logger.

## Constructor Details

### ClasspathResolver

public ClasspathResolver()

## Method Details

### resolveEntity

public InputSource resolveEntity(String publicId, String systemId) throws SAXException, IOException

Specified by:
  `resolveEntity` in interface `EntityResolver`
Throws:
  `SAXException`
  `IOException`

### resolveResource

public LSInput resolveResource(String type, String namespaceURI, String publicId, String systemId, String baseURI)

Specified by:
  `resolveResource` in interface `LSResourceResolver`

### resolver

protected InputStream resolver(String publicId, String systemId)
Resolves an id against the classpath. System ID is tried first, then public ID.

Parameters:
  `publicId` - resources public ID
  `systemId` - resources system ID
Returns:
  resolved resource or null