00001 /* 00002 * Copyright 1999-2000,2004 The Apache Software Foundation. 00003 * 00004 * Licensed under the Apache License, Version 2.0 (the "License"); 00005 * you may not use this file except in compliance with the License. 00006 * You may obtain a copy of the License at 00007 * 00008 * http://www.apache.org/licenses/LICENSE-2.0 00009 * 00010 * Unless required by applicable law or agreed to in writing, software 00011 * distributed under the License is distributed on an "AS IS" BASIS, 00012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 00013 * See the License for the specific language governing permissions and 00014 * limitations under the License. 00015 */ 00016 00017 /* 00018 * $Log: LocalFileInputSource.hpp,v $ 00019 * Revision 1.6 2004/09/08 13:55:57 peiyongz 00020 * Apache License Version 2.0 00021 * 00022 * Revision 1.5 2004/01/29 11:46:29 cargilld 00023 * Code cleanup changes to get rid of various compiler diagnostic messages. 00024 * 00025 * Revision 1.4 2003/12/01 23:23:25 neilg 00026 * fix for bug 25118; thanks to Jeroen Witmond 00027 * 00028 * Revision 1.3 2003/05/16 21:36:55 knoaman 00029 * Memory manager implementation: Modify constructors to pass in the memory manager. 00030 * 00031 * Revision 1.2 2002/11/04 15:00:21 tng 00032 * C++ Namespace Support. 00033 * 00034 * Revision 1.1.1.1 2002/02/01 22:21:50 peiyongz 00035 * sane_include 00036 * 00037 * Revision 1.7 2001/10/13 04:21:53 jasons 00038 * This patch resolves bug #2409: undocumented XMLException in LocalFileInputSource::new() 00039 * 00040 * Revision 1.6 2000/12/14 18:49:53 tng 00041 * Fix API document generation warning: "Warning: end of member group without matching begin" 00042 * 00043 * Revision 1.5 2000/02/24 20:00:22 abagchi 00044 * Swat for removing Log from API docs 00045 * 00046 * Revision 1.4 2000/02/15 23:59:06 roddey 00047 * More updated documentation of Framework classes. 00048 * 00049 * Revision 1.3 2000/02/15 01:21:30 roddey 00050 * Some initial documentation improvements. More to come... 00051 * 00052 * Revision 1.2 2000/02/06 07:47:46 rahulj 00053 * Year 2K copyright swat. 00054 * 00055 * Revision 1.1 2000/01/12 18:58:06 roddey 00056 * Putting this back with the correct lower case extension. 00057 * 00058 * Revision 1.1 2000/01/12 00:13:26 roddey 00059 * These were moved from internal/ to framework/, which was something that should have 00060 * happened long ago. They are really framework type of classes. 00061 * 00062 * Revision 1.1.1.1 1999/11/09 01:08:10 twl 00063 * Initial checkin 00064 * 00065 * Revision 1.2 1999/11/08 20:44:43 rahul 00066 * Swat for adding in Product name and CVS comment log variable. 00067 * 00068 */ 00069 00070 00071 #if !defined(LOCALFILEINPUTSOURCE_HPP) 00072 #define LOCALFILEINPUTSOURCE_HPP 00073 00074 #include <xercesc/sax/InputSource.hpp> 00075 00076 XERCES_CPP_NAMESPACE_BEGIN 00077 00078 class BinInputStream; 00079 00096 class LocalFileInputSource : public InputSource 00097 { 00098 public : 00099 // ----------------------------------------------------------------------- 00100 // Constructors and Destructor 00101 // ----------------------------------------------------------------------- 00102 00105 00134 LocalFileInputSource 00135 ( 00136 const XMLCh* const basePath 00137 , const XMLCh* const relativePath 00138 , MemoryManager* const manager = XMLPlatformUtils::fgMemoryManager 00139 ); 00140 00159 LocalFileInputSource 00160 ( 00161 const XMLCh* const filePath 00162 , MemoryManager* const manager = XMLPlatformUtils::fgMemoryManager 00163 ); 00165 00168 ~LocalFileInputSource(); 00170 00171 00172 // ----------------------------------------------------------------------- 00173 // Virtual input source interface 00174 // ----------------------------------------------------------------------- 00175 00178 00186 virtual BinInputStream* makeStream() const; 00187 00189 private: 00190 // ----------------------------------------------------------------------- 00191 // Unimplemented constructors and operators 00192 // ----------------------------------------------------------------------- 00193 LocalFileInputSource(const LocalFileInputSource&); 00194 LocalFileInputSource& operator=(const LocalFileInputSource&); 00195 00196 }; 00197 00198 XERCES_CPP_NAMESPACE_END 00199 00200 #endif