Library: XML
Package: SAX
Header: Poco/SAX/EntityResolverImpl.h
A default implementation of the EntityResolver interface.
The system ID is first interpreted as an URI and the URIStreamOpener is used to create and open an istream for an InputSource.
If the system ID is not a valid URI, it is interpreted as a filesystem path and a Poco::FileInputStream is opened for it.
Direct Base Classes: EntityResolver
All Base Classes: EntityResolver
Member Functions: releaseInputSource, resolveEntity, resolveSystemId
Inherited Functions: releaseInputSource, resolveEntity
Creates an EntityResolverImpl that uses the default URIStreamOpener.
EntityResolverImpl(
const Poco::URIStreamOpener & opener
);
Creates an EntityResolverImpl that uses the given URIStreamOpener.
Destroys the EntityResolverImpl.
void releaseInputSource(
InputSource * pSource
);
Deletes the InputSource's stream.
InputSource * resolveEntity(
const XMLString * publicId,
const XMLString & systemId
);
Tries to use the URIStreamOpener to create and open an istream for the given systemId, which is interpreted as an URI.
If the systemId is not a valid URI, it is interpreted as a local filesystem path and a Poco::FileInputStream is opened for it.
std::istream * resolveSystemId(
const XMLString & systemId
);