Main Page   Modules   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Related Pages  

EntityResolver.h

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 
00003 //=============================================================================
00004 /**
00005  *  @file    EntityResolver.h
00006  *
00007  *  $Id: EntityResolver.h,v 1.1.1.1 2003/02/21 18:36:32 chad Exp $
00008  *
00009  *  @author Nanbor Wang <nanbor@cs.wustl.edu>
00010  */
00011 //=============================================================================
00012 #ifndef _ACEXML_ENTITYHANDLER_H_
00013 #define _ACEXML_ENTITYHANDLER_H_
00014 
00015 #include "ace/pre.h"
00016 #include "ACEXML/common/ACEXML_Export.h"
00017 
00018 #if !defined (ACE_LACKS_PRAGMA_ONCE)
00019 #pragma once
00020 #endif /* ACE_LACKS_PRAGMA_ONCE */
00021 
00022 #include "ACEXML/common/Env.h"
00023 #include "ACEXML/common/InputSource.h"
00024 
00025 /**
00026  * @class ACEXML_EntityResolver EntityResolver.h "ACEXML/common/EntityResolver.h"
00027  *
00028  * @brief ACEXML_EntityResolver
00029  *
00030  * If a SAX application needs to implement customized handling for
00031  * external entities, it must implement this interface and register an
00032  * instance with the SAX driver using the setEntityResolver method.
00033  *
00034  * The XML reader will then allow the application to intercept any
00035  * external entities (including the external DTD subset and external
00036  * parameter entities, if any) before including them.
00037  *
00038  * Many SAX applications will not need to implement this interface,
00039  * but it will be especially useful for applications that build XML
00040  * documents from databases or other specialised input sources, or for
00041  * applications that use URI types other than URLs.
00042  */
00043 class ACEXML_Export ACEXML_EntityResolver
00044 {
00045 public:
00046   /**
00047    * Allow the application to resolve external entities.
00048    */
00049   virtual ACEXML_InputSource *resolveEntity (const ACEXML_Char *publicId,
00050                                              const ACEXML_Char *systemId ACEXML_ENV_ARG_DECL)
00051         ACE_THROW_SPEC ((ACEXML_SAXException)) = 0;
00052 };
00053 
00054 
00055 #include "ace/post.h"
00056 
00057 #endif /* _ACEXML_ENTITYHANDLER_H_ */

Generated on Mon Jun 16 13:23:21 2003 for ACEXML by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002