class Poco::XML::EntityResolverImpl
Overview
A default implementation of the EntityResolver interface. More…
#include <EntityResolverImpl.h> class EntityResolverImpl: public Poco::XML::EntityResolver { public: // construction EntityResolverImpl(); EntityResolverImpl(const Poco::URIStreamOpener& opener); // methods virtual InputSource* resolveEntity( const XMLString* publicId, const XMLString& systemId ); virtual void releaseInputSource(InputSource* pSource); protected: // methods std::istream* resolveSystemId(const XMLString& systemId); };
Inherited Members
public: // methods virtual InputSource* resolveEntity( const XMLString* publicId, const XMLString& systemId ) = 0; virtual void releaseInputSource(InputSource* pSource) = 0;
Detailed Documentation
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.
Construction
EntityResolverImpl()
Creates an EntityResolverImpl that uses the default URIStreamOpener.
EntityResolverImpl(const Poco::URIStreamOpener& opener)
Creates an EntityResolverImpl that uses the given URIStreamOpener.
Methods
virtual 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.
virtual void releaseInputSource(InputSource* pSource)
Deletes the InputSource ‘s stream.