# Attributes.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: Attributes.hpp 672311 2008-06-27 16:05:01Z borisk $
    00020  */
    00021
    00022 #if !defined(XERCESC_INCLUDE_GUARD_ATTRIBUTES_HPP)
    00023 #define XERCESC_INCLUDE_GUARD_ATTRIBUTES_HPP
    00024
    00025 #include <xercesc/util/XercesDefs.hpp>
    00026
    00027 XERCES_CPP_NAMESPACE_BEGIN
    00028
    00082 class SAX2_EXPORT Attributes
    00083 {
    00084 public:
    00085     // -----------------------------------------------------------------------
    00086     //  Constructors and Destructor
    00087     // -----------------------------------------------------------------------
    00091     Attributes()
    00092     {
    00093     }
    00094
    00096     virtual ~Attributes()
    00097     {
    00098     }
    00100
    00113     virtual XMLSize_t getLength() const = 0;
    00114
    00128     virtual const XMLCh* getURI(const XMLSize_t index) const = 0;
    00129
    00143     virtual const XMLCh* getLocalName(const XMLSize_t index) const = 0;
    00144
    00158     virtual const XMLCh* getQName(const XMLSize_t index) const = 0;
    00159
    00181     virtual const XMLCh* getType(const XMLSize_t index) const = 0;
    00182
    00196     virtual const XMLCh* getValue(const XMLSize_t index) const = 0;
    00197
    00199     // Name-based query.
    00201
    00212     virtual bool getIndex(const XMLCh* const uri,
    00213                           const XMLCh* const localPart,
    00214                           XMLSize_t& index) const = 0 ;
    00215
    00225     virtual int getIndex(const XMLCh* const uri,
    00226                          const XMLCh* const localPart ) const = 0 ;
    00227
    00236     virtual bool getIndex(const XMLCh* const qName,
    00237                           XMLSize_t& index) const = 0 ;
    00238
    00246     virtual int getIndex(const XMLCh* const qName ) const = 0 ;
    00247
    00260     virtual const XMLCh* getType(const XMLCh* const uri,
    00261                                  const XMLCh* const localPart ) const = 0 ;
    00262
    00273     virtual const XMLCh* getType(const XMLCh* const qName) const = 0;
    00274
    00286     virtual const XMLCh* getValue(const XMLCh* const uri, const XMLCh* const localPart ) const = 0 ;
    00287
    00298     virtual const XMLCh* getValue(const XMLCh* const qName) const = 0;
    00299
    00301
    00302 private :
    00303     /* Constructors and operators */
    00304     /* Copy constructor */
    00305     Attributes(const Attributes&);
    00306     /* Assignment operator */
    00307     Attributes& operator=(const Attributes&);
    00308
    00309 };
    00310
    00311 XERCES_CPP_NAMESPACE_END
    00312
    00313 #endif