00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 
00020 
00021 
00022 
00023 
00024 
00025 
00026 
00027 
00028 
00029 
00030 
00031 
00032 
00033 
00034 
00035 
00036 
00037 
00038 
00039 
00040 
00041 
00042 
00043 
00044 
00045 
00046 
00047 
00048 
00049 
00050 
00051 
00052 
00053 
00054 
00055 
00056 
00057 
00058 
00059 
00060 
00061 
00062 
00063 
00064 
00065 
00066 
00067 
00068 
00069 
00070 
00071 
00072 
00073 
00074 
00075 
00076 
00077 
00078 
00079 
00080 
00081 
00082 #if !defined(QNAME_HPP)
00083 #define QNAME_HPP
00084 
00085 #include <util/XMLString.hpp>
00086 #include <util/XMLUniDefs.hpp>
00087 #include <util/XMLUni.hpp>
00088 
00089 class  QName
00090 {
00091 public :
00092     
00093     
00094     
00096     QName();
00097 
00099     QName
00100     (   const XMLCh* const        prefix
00101       , const XMLCh* const        localPart
00102        , const unsigned int        uriId
00103     );
00104 
00106     QName
00107     (   const XMLCh* const        rawName
00108        , const unsigned int        uriId
00109     );
00110 
00112     QName(const QName* const qname);
00113 
00114     ~QName();
00115 
00116     
00117     
00118     
00119     const XMLCh* getPrefix() const;
00120     XMLCh* getPrefix();
00121 
00122     const XMLCh* getLocalPart() const;
00123     XMLCh* getLocalPart();
00124 
00125     const unsigned int getURI() const;
00126     unsigned int getURI();
00127 
00128     const XMLCh* getRawName() const;
00129     XMLCh* getRawName();
00130 
00131     
00132     
00133     
00134     void setName
00135     (
00136         const XMLCh* const        prefix
00137       , const XMLCh* const        localPart
00138        , const unsigned int        uriId
00139     );
00140 
00141     void setName
00142     (
00143         const XMLCh* const        rawName
00144        , const unsigned int        uriId
00145     );
00146 
00147     void setPrefix(const XMLCh*) ;
00148     void setLocalPart(const XMLCh*) ;
00149     void setURI(const unsigned int) ;
00150 
00151     void setValues(const QName& qname);
00152 
00153     
00154     
00155     
00156     bool operator==(const QName&);
00157 
00158     
00159     
00160     
00161     void cleanUp();
00162 
00163 private :
00164 
00165     
00166     
00167     
00168     
00169     
00170     
00171     
00172     
00173     
00174     
00175     
00176     
00177     
00178     
00179     
00180     
00181     
00182     
00183     
00184     
00185     
00186     
00187     
00188     
00189     
00190     
00191     
00192     
00193     XMLCh*              fPrefix;
00194     unsigned int        fPrefixBufSz;
00195     XMLCh*              fLocalPart;
00196     unsigned int        fLocalPartBufSz;
00197     XMLCh*              fRawName;
00198     unsigned int        fRawNameBufSz;
00199     unsigned int        fURIId;
00200 
00201 };
00202 
00203 
00204 
00205 
00206 inline const XMLCh* QName::getPrefix() const
00207 {
00208     return fPrefix;
00209 }
00210 
00211 inline XMLCh* QName::getPrefix()
00212 {
00213     return fPrefix;
00214 }
00215 
00216 inline const XMLCh* QName::getLocalPart() const
00217 {
00218     return fLocalPart;
00219 }
00220 
00221 inline XMLCh* QName::getLocalPart()
00222 {
00223     return fLocalPart;
00224 }
00225 
00226 inline const unsigned int QName::getURI() const
00227 {
00228     return fURIId;
00229 }
00230 
00231 inline unsigned int QName::getURI()
00232 {
00233     return fURIId;
00234 }
00235 
00236 
00237 
00238 
00239 inline void QName::setURI(const unsigned int uriId)
00240 {
00241     fURIId = uriId;
00242 }
00243 #endif