Xerces-C++: LocalFileInputSource Class Reference

Xerces-C++ 3.3.0

List of all members
LocalFileInputSource Class Reference

This class is a derivative of the standard InputSource class. More...

`#include <xercesc/framework/LocalFileInputSource.hpp>`

Inheritance diagram for LocalFileInputSource:

## Public Member Functions
Constructors
| LocalFileInputSource (const XMLCh *const basePath, const XMLCh *const relativePath, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
| A local file input source requires a path to the file to load.
| LocalFileInputSource (const XMLCh *const filePath, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
| This constructor takes a single parameter which is the fully qualified or relative path.
Destructor
| ~LocalFileInputSource ()
Public Member Functions inherited from InputSource
virtual | ~InputSource ()
| Destructor.
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 represents, 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 bool | getIssueFatalErrorIfNotFound () const
| Get the flag that indicates if the parser should issue fatal error if this input source is not found.
MemoryManager * | getMemoryManager () const
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.
Public Member Functions inherited from XMemory
void * | operator new (size_t size)
| This method overrides operator new.
void * | operator new (size_t size, MemoryManager *memMgr)
| This method defines a custom operator new, that will use the provided memory manager to perform the allocation.
void * | operator new (size_t size, void *ptr)
| This method overrides placement operator new.
void | operator delete (void *p)
| This method overrides operator delete.
void | operator delete (void *p, MemoryManager *memMgr)
| This method provides a matching delete for the custom operator new.
void | operator delete (void *p, void *ptr)
| This method provides a matching delete for the placement new.

## Virtual methods
virtual BinInputStream * | makeStream () const
| This method will return a binary input stream derivative that will parse from the local file indicatedby the system id.

## Additional Inherited Members
Protected Member Functions inherited from InputSource
| InputSource (MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
| Default constructor.
| InputSource (const XMLCh *const systemId, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
| Constructor with a system identifier as XMLCh type.
| InputSource (const XMLCh *const systemId, const XMLCh *const publicId, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
| Constructor with a system and public identifiers.
| InputSource (const char *const systemId, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
| Constructor witha system identifier as string.
| InputSource (const char *const systemId, const char *const publicId, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
| Constructor witha system and public identifiers.
Protected Member Functions inherited from XMemory
| XMemory ()
| Protected default constructor.

## Detailed Description

This class is a derivative of the standard InputSource class.

It provides for the parser access to data which is referenced via a local file path, as apposed to remote file or URL. This is the most efficacious mechanism by which local files can be parsed, since the parse knows that it refers to a local file and will make no other attempts to interpret the passed path.

The path provided can either be a fully qualified path or a relative path. If relative, it will be completed either relative to a passed base path or relative to the current working directory of the process.

As with all InputSource derivatives. The primary objective of an input source is to create an input stream via which the parser can spool in data from the referenced source.

## Constructor & Destructor Documentation

## ◆ LocalFileInputSource() [1/2]

LocalFileInputSource::LocalFileInputSource | ( | const XMLCh *const | basePath,
|  | const XMLCh *const | relativePath,
|  | MemoryManager *const | manager = XMLPlatformUtils::fgMemoryManager )

A local file input source requires a path to the file to load.

This can be provided either as a fully qualified path, a path relative to the current working directly, or a path relative to a provided base path.

The completed path will become the system id of this input source. The constructors don't take any public id for local files, but you still set them via the parent class' setPublicId() method of course.

This constructor takes an explicit base path and a possibly relative path. If the relative path is seen to be fully qualified, it is used as is. Otherwise, it is made relative to the passed base path.

Parameters

  basePath | The base path from which the passed relative path will be based, if the relative part is indeed relative.
  relativePath | The relative part of the path. It can actually be fully qualified, in which case it is taken as is.
  manager | Pointer to the memory manager to be used to allocate objects.

Exceptions

  XMLException | If the path is relative and doesn't properly resolve to a file.

## ◆ LocalFileInputSource() [2/2]

LocalFileInputSource::LocalFileInputSource | ( | const XMLCh *const | filePath,
|  | MemoryManager *const | manager = XMLPlatformUtils::fgMemoryManager )

This constructor takes a single parameter which is the fully qualified or relative path.

If it is fully qualified, it is taken as is. If it is relative, then it is completed relative to the current working directory (or the equivalent on the local host machine.)

The completed path will become the system id of this input source. The constructors don't take any public id for local files, but you still set them via the parent class' setPublicId() method of course.

Parameters

  filePath | The relative or fully qualified path.
  manager | Pointer to the memory manager to be used to allocate objects.

Exceptions

  XMLException | If the path is relative and doesn't properly resolve to a file.

## ◆ ~LocalFileInputSource()

LocalFileInputSource::~LocalFileInputSource | ( |  | ) |

## Member Function Documentation

## ◆ makeStream()

virtual BinInputStream * LocalFileInputSource::makeStream | ( |  | ) | const
| virtual

This method will return a binary input stream derivative that will parse from the local file indicatedby the system id.

Returns
  A dynamically allocated binary input stream derivative that can parse from the file indicated by the system id.

Implements InputSource.

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

- LocalFileInputSource.hpp