XMLResourceIdentifier.hpp

Go to the documentation of this file.
00001 /*
00002  * Licensed to the Apache Software Foundation (ASF) under one or more
00003  * contributor license agreements.  See the NOTICE file distributed with
00004  * this work for additional information regarding copyright ownership.
00005  * The ASF licenses this file to You under the Apache License, Version 2.0
00006  * (the "License"); you may not use this file except in compliance with
00007  * the License.  You may obtain a copy of the License at
00008  * 
00009  *      http://www.apache.org/licenses/LICENSE-2.0
00010  * 
00011  * Unless required by applicable law or agreed to in writing, software
00012  * distributed under the License is distributed on an "AS IS" BASIS,
00013  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00014  * See the License for the specific language governing permissions and
00015  * limitations under the License.
00016  */
00017 
00018 /*
00019  * $Id: XMLResourceIdentifier.hpp 568078 2007-08-21 11:43:25Z amassari $
00020  */
00021 
00022 #ifndef XMLRESOURCEIDENTIFIER_HPP
00023 #define XMLRESOURCEIDENTIFIER_HPP
00024 
00025 XERCES_CPP_NAMESPACE_BEGIN
00026 
00027 class Locator;
00028 
00095 class XMLUTIL_EXPORT XMLResourceIdentifier
00096 {
00097 public:
00098 
00101     enum ResourceIdentifierType {
00102         SchemaGrammar = 0,
00103         SchemaImport,
00104         SchemaInclude,
00105         SchemaRedefine ,
00106         ExternalEntity,
00107         UnKnown = 255    
00108     };
00110    
00115     XMLResourceIdentifier(const ResourceIdentifierType resourceIdentitiferType
00116                             , const XMLCh* const  systemId
00117                             , const XMLCh* const  nameSpace = 0
00118                             , const XMLCh* const  publicId = 0
00119                             , const XMLCh* const  baseURI = 0
00120                             , const Locator*      locator = 0);
00121 
00123     ~XMLResourceIdentifier()
00124     {
00125     }
00126 
00128 
00129     // -----------------------------------------------------------------------
00130     //  Getter methods
00131     // -----------------------------------------------------------------------
00134     ResourceIdentifierType getResourceIdentifierType() const;
00135     const XMLCh* getPublicId()          const;
00136     const XMLCh* getSystemId()          const;
00137     const XMLCh* getSchemaLocation()    const;
00138     const XMLCh* getBaseURI()           const;
00139     const XMLCh* getNameSpace()         const;
00140     const Locator* getLocator()         const;
00142 
00143 private :
00144 
00145     const ResourceIdentifierType    fResourceIdentifierType;
00146     const XMLCh*                    fPublicId;
00147     const XMLCh*                    fSystemId;
00148     const XMLCh*                    fBaseURI;
00149     const XMLCh*                    fNameSpace;
00150     const Locator*                  fLocator;
00151 
00152     /* Unimplemented constructors and operators */
00153 
00154     /* Copy constructor */
00155     XMLResourceIdentifier(const XMLResourceIdentifier&);
00156 
00157     /* Assignment operator */
00158     XMLResourceIdentifier& operator=(const XMLResourceIdentifier&);
00159 
00160 };
00161 
00162 inline XMLResourceIdentifier::ResourceIdentifierType XMLResourceIdentifier::getResourceIdentifierType() const 
00163 {
00164     return fResourceIdentifierType;
00165 }
00166 
00167 inline const XMLCh* XMLResourceIdentifier::getPublicId() const
00168 {
00169     return fPublicId;
00170 }
00171 
00172 inline const XMLCh* XMLResourceIdentifier::getSystemId() const
00173 {
00174     return fSystemId;
00175 }
00176 
00177 inline const XMLCh* XMLResourceIdentifier::getSchemaLocation() const
00178 {
00179     return fSystemId;
00180 }
00181 
00182 inline const XMLCh* XMLResourceIdentifier::getBaseURI() const
00183 {
00184     return fBaseURI;
00185 }
00186 
00187 inline const XMLCh* XMLResourceIdentifier::getNameSpace() const
00188 {
00189     return fNameSpace;
00190 }
00191 
00192 inline const Locator* XMLResourceIdentifier::getLocator() const
00193 {
00194     return fLocator;
00195 }
00196 
00197 inline XMLResourceIdentifier::XMLResourceIdentifier(const ResourceIdentifierType resourceIdentifierType
00198                             , const XMLCh* const  systemId
00199                             , const XMLCh* const  nameSpace
00200                             , const XMLCh* const  publicId
00201                             , const XMLCh* const  baseURI
00202                             , const Locator*      locator )
00203     : fResourceIdentifierType(resourceIdentifierType)
00204     , fPublicId(publicId)
00205     , fSystemId(systemId)
00206     , fBaseURI(baseURI)     
00207     , fNameSpace(nameSpace)
00208     , fLocator(locator)
00209 {
00210 }
00211 
00212 XERCES_CPP_NAMESPACE_END
00213 
00214 #endif

Generated on Thu Feb 19 11:35:44 2009 for Xerces-C++ by  doxygen 1.5.4