http://xml.apache.org/http://www.apache.org/http://www.w3.org/

Home

Readme
Release Info

Installation
Download
Build

FAQs
Samples
API Docs

DOM C++ Binding
Programming
Migration Guide

Feedback
Bug-Reporting
PDF Document

CVS Repository
Mail Archive

API Docs for SAX and DOM
 

Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

InputSource Class Reference

A single input source for an XML entity. More...

Inheritance diagram for InputSource:

Inheritance graph
[legend]
List of all members.

Public Methods

Destructor
virtual ~InputSource ()
 Destructor.

Virtual input source interface
virtual BinInputStreammakeStream () const=0
 Makes the byte stream for this input source.

Getter methods
virtual const XMLCh * getEncoding () const
 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.

virtual const XMLCh * getPublicId () const
 Get the public identifier for this input source.

virtual const XMLCh * getSystemId () const
 Get the system identifier for this input source.

virtual const bool getIssueFatalErrorIfNotFound () const
 Get the flag that indicates if the parser should issue fatal error if this input source is not found.

Setter methods
virtual void setEncoding (const XMLCh *const encodingStr)
 Set the encoding which will be required for use with the XML text read via a stream opened by this input source.

virtual void setPublicId (const XMLCh *const publicId)
 Set the public identifier for this input source.

virtual void setSystemId (const XMLCh *const systemId)
 Set the system identifier for this input source.

virtual void setIssueFatalErrorIfNotFound (const bool flag)
 Indicates if the parser should issue fatal error if this input source is not found.


Protected Methods

Constructors and Destructor
 InputSource ()
 Default constructor.

 InputSource (const XMLCh *const systemId)
 Constructor with a system identifier as XMLCh type.

 InputSource (const XMLCh *const systemId, const XMLCh *const publicId)
 Constructor with a system and public identifiers.

 InputSource (const char *const systemId)
 Constructor witha system identifier as string.

 InputSource (const char *const systemId, const char *const publicId)
 Constructor witha system and public identifiers.


Detailed Description

A single input source for an XML entity.

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.

See also:
Parser::parse , EntityResolver::resolveEntity


Constructor & Destructor Documentation

virtual InputSource::~InputSource   [virtual]
 

Destructor.

InputSource::InputSource   [protected]
 

Default constructor.

InputSource::InputSource const XMLCh *const    systemId [protected]
 

Constructor with a system identifier as XMLCh type.

Parameters:
systemId  The system identifier (URI).

InputSource::InputSource const XMLCh *const    systemId,
const XMLCh *const    publicId
[protected]
 

Constructor with a system and public identifiers.

Parameters:
systemId  The system identifier (URI).
publicId  The public identifier as in the entity definition.

InputSource::InputSource const char *const    systemId [protected]
 

Constructor witha system identifier as string.

Parameters:
systemId  The system identifier (URI).

InputSource::InputSource const char *const    systemId,
const char *const    publicId
[protected]
 

Constructor witha system and public identifiers.

Both as string

Parameters:
systemId  The system identifier (URI).
publicId  The public identifier as in the entity definition.


Member Function Documentation

const XMLCh * InputSource::getEncoding   [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.

Returns:
The forced encoding, or null if none was supplied.
See also:
setEncoding

Reimplemented in Wrapper4DOMInputSource.

const bool InputSource::getIssueFatalErrorIfNotFound   [virtual]
 

Get the flag that indicates if the parser should issue fatal error if this input source is not found.

Returns:
True if the parser should issue fatal error if this input source is not found. False if the parser issue warning message instead.
See also:
setIssueFatalErrorIfNotFound

Reimplemented in Wrapper4DOMInputSource.

const XMLCh * InputSource::getPublicId   [virtual]
 

Get the public identifier for this input source.

Returns:
The public identifier, or null if none was supplied.
See also:
setPublicId

Reimplemented in Wrapper4DOMInputSource.

const XMLCh * InputSource::getSystemId   [virtual]
 

Get the system identifier for this input source.

If the system ID is a URL, it will be fully resolved.

Returns:
The system identifier.
See also:
setSystemId

Reimplemented in Wrapper4DOMInputSource.

virtual BinInputStream* InputSource::makeStream   [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.

See also:
BinInputStream

Implemented in LocalFileInputSource, MemBufInputSource, StdInInputSource, URLInputSource, and Wrapper4DOMInputSource.

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.

Parameters:
encodingStr  The name of the encoding to force.

Reimplemented in Wrapper4DOMInputSource.

void InputSource::setIssueFatalErrorIfNotFound const bool    flag [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.

Parameters:
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)
See also:
getIssueFatalErrorIfNotFound

Reimplemented in Wrapper4DOMInputSource.

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.

Parameters:
publicId  The public identifier as a string.
See also:
Locator::getPublicId , SAXParseException::getPublicId , getPublicId

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.

Parameters:
systemId  The system identifier as a string.
See also:
getSystemId , Locator::getSystemId , SAXParseException::getSystemId

Reimplemented in Wrapper4DOMInputSource.


The documentation for this class was generated from the following file:


Copyright © 2000 The Apache Software Foundation. All Rights Reserved.