#include <InputSource.hpp>
Inheritance diagram for InputSource:
Public Member Functions | |
Destructor | |
virtual | ~InputSource () |
Virtual input source interface | |
virtual BinInputStream * | makeStream () const =0 |
Getter methods | |
virtual const XMLCh * | getEncoding () const |
virtual const XMLCh * | getPublicId () const |
virtual const XMLCh * | getSystemId () const |
virtual const bool | getIssueFatalErrorIfNotFound () const |
MemoryManager * | getMemoryManager () const |
Setter methods | |
virtual void | setEncoding (const XMLCh *const encodingStr) |
virtual void | setPublicId (const XMLCh *const publicId) |
virtual void | setSystemId (const XMLCh *const systemId) |
virtual void | setIssueFatalErrorIfNotFound (const bool flag) |
Protected Member Functions | |
Constructors and Destructor | |
InputSource (MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager) | |
InputSource (const XMLCh *const systemId, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager) | |
InputSource (const XMLCh *const systemId, const XMLCh *const publicId, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager) | |
InputSource (const char *const systemId, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager) | |
InputSource (const char *const systemId, const char *const publicId, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager) | |
Private Member Functions | |
InputSource (const InputSource &) | |
InputSource & | operator= (const InputSource &) |
Private Attributes | |
MemoryManager * | fMemoryManager |
XMLCh * | fEncoding |
XMLCh * | fPublicId |
XMLCh * | fSystemId |
bool | fFatalErrorIfNotFound |
This class encapsulates information about an input source in a single object, which may include a public identifier or a system identifier
There are two places that the application will deliver this input source to the parser: as the argument to the Parser::parse method, or as the return value of the EntityResolver::resolveEntity method.
InputSource is never used directly, but is the base class for a number of derived classes for particular types of input sources. Derivatives are provided (in the internal/ directory) for URL input sources, memory buffer input sources, and so on.
When it is time to parse the input described by an input source, it will be asked to create a binary stream for that source. That stream will be used to input the data of the source. The derived class provides the implementation of the makeStream() method, and provides a type of stream of the correct type for the input source it represents.
An InputSource object belongs to the application: the parser never modifies them in any way. They are always passed by const reference so the parser will make a copy of any input sources that it must keep around beyond the call.
Definition at line 168 of file InputSource.hpp.
virtual InputSource::~InputSource | ( | ) | [virtual] |
Destructor
InputSource::InputSource | ( | MemoryManager *const | manager = XMLPlatformUtils::fgMemoryManager |
) | [protected] |
Default constructor
InputSource::InputSource | ( | const XMLCh *const | systemId, | |
MemoryManager *const | manager = XMLPlatformUtils::fgMemoryManager | |||
) | [protected] |
Constructor with a system identifier as XMLCh type.
systemId | The system identifier (URI). |
InputSource::InputSource | ( | const XMLCh *const | systemId, | |
const XMLCh *const | publicId, | |||
MemoryManager *const | manager = XMLPlatformUtils::fgMemoryManager | |||
) | [protected] |
Constructor with a system and public identifiers
systemId | The system identifier (URI). | |
publicId | The public identifier as in the entity definition. |
InputSource::InputSource | ( | const char *const | systemId, | |
MemoryManager *const | manager = XMLPlatformUtils::fgMemoryManager | |||
) | [protected] |
Constructor witha system identifier as string
systemId | The system identifier (URI). |
InputSource::InputSource | ( | const char *const | systemId, | |
const char *const | publicId, | |||
MemoryManager *const | manager = XMLPlatformUtils::fgMemoryManager | |||
) | [protected] |
Constructor witha system and public identifiers. Both as string
systemId | The system identifier (URI). | |
publicId | The public identifier as in the entity definition. |
InputSource::InputSource | ( | const InputSource & | ) | [private] |
const XMLCh * InputSource::getEncoding | ( | ) | const [inline, virtual] |
An input source can be set to force the parser to assume a particular encoding for the data that input source reprsents, via the setEncoding() method. This method returns name of the encoding that is to be forced. If the encoding has never been forced, it returns a null pointer.
Reimplemented in Wrapper4DOMInputSource.
Definition at line 400 of file InputSource.hpp.
References fEncoding.
const bool InputSource::getIssueFatalErrorIfNotFound | ( | ) | const [inline, virtual] |
Get the flag that indicates if the parser should issue fatal error if this input source is not found.
Reimplemented in Wrapper4DOMInputSource.
Definition at line 415 of file InputSource.hpp.
References fFatalErrorIfNotFound.
MemoryManager * InputSource::getMemoryManager | ( | ) | const [inline] |
const XMLCh * InputSource::getPublicId | ( | ) | const [inline, virtual] |
Get the public identifier for this input source.
Reimplemented in Wrapper4DOMInputSource.
Definition at line 405 of file InputSource.hpp.
References fPublicId.
const XMLCh * InputSource::getSystemId | ( | ) | const [inline, virtual] |
Get the system identifier for this input source.
If the system ID is a URL, it will be fully resolved.
Reimplemented in Wrapper4DOMInputSource.
Definition at line 410 of file InputSource.hpp.
References fSystemId.
virtual BinInputStream* InputSource::makeStream | ( | ) | const [pure virtual] |
Makes the byte stream for this input source.
The derived class must create and return a binary input stream of an appropriate type for its kind of data source. The returned stream must be dynamically allocated and becomes the parser's property.
Implemented in LocalFileInputSource, MemBufInputSource, StdInInputSource, URLInputSource, and Wrapper4DOMInputSource.
InputSource& InputSource::operator= | ( | const InputSource & | ) | [private] |
virtual void InputSource::setEncoding | ( | const XMLCh *const | encodingStr | ) | [virtual] |
Set the encoding which will be required for use with the XML text read via a stream opened by this input source.
This is usually not set, allowing the encoding to be sensed in the usual XML way. However, in some cases, the encoding in the file is known to be incorrect because of intermediate transcoding, for instance encapsulation within a MIME document.
encodingStr | The name of the encoding to force. |
Reimplemented in Wrapper4DOMInputSource.
void InputSource::setIssueFatalErrorIfNotFound | ( | const bool | flag | ) | [inline, virtual] |
Indicates if the parser should issue fatal error if this input source is not found. If set to false, the parser issue warning message instead.
flag | True if the parser should issue fatal error if this input source is not found. If set to false, the parser issue warning message instead. (Default: true) |
Reimplemented in Wrapper4DOMInputSource.
Definition at line 428 of file InputSource.hpp.
References fFatalErrorIfNotFound.
virtual void InputSource::setPublicId | ( | const XMLCh *const | publicId | ) | [virtual] |
Set the public identifier for this input source.
The public identifier is always optional: if the application writer includes one, it will be provided as part of the location information.
publicId | The public identifier as a string. |
Reimplemented in Wrapper4DOMInputSource.
virtual void InputSource::setSystemId | ( | const XMLCh *const | systemId | ) | [virtual] |
Set the system identifier for this input source.
Set the system identifier for this input source.
The system id is always required. The public id may be used to map to another system id, but the system id must always be present as a fall back.
If the system ID is a URL, it must be fully resolved.
systemId | The system identifier as a string. |
Reimplemented in Wrapper4DOMInputSource.
XMLCh* InputSource::fEncoding [private] |
bool InputSource::fFatalErrorIfNotFound [private] |
Definition at line 393 of file InputSource.hpp.
Referenced by getIssueFatalErrorIfNotFound(), and setIssueFatalErrorIfNotFound().
MemoryManager* InputSource::fMemoryManager [private] |
XMLCh* InputSource::fPublicId [private] |
XMLCh* InputSource::fSystemId [private] |