00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #if !defined(XERCESC_INCLUDE_GUARD_XMLRESOURCEIDENTIFIER_HPP)
00023 #define XERCESC_INCLUDE_GUARD_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
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
00153
00154
00155 XMLResourceIdentifier(const XMLResourceIdentifier&);
00156
00157
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