⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 datatypevalidator.hpp

📁 基于属性证书的访问控制源代码,由c++编写,包括openssl,xercesc等
💻 HPP
📖 第 1 页 / 共 2 页
字号:
      *      *  Return:      *      ***/	static void storeDV(XSerializeEngine&        serEng                      , DatatypeValidator* const dv);    /***      *      *  Create a DatatypeValidator derivative from the binary      *  stream.      *      *  Param      *     serEng: serialize engine      *      *  Return:      *     DatatypeValidator derivative       *      ***/	static DatatypeValidator* loadDV(XSerializeEngine& serEng);protected:    // -----------------------------------------------------------------------    //  Protected Constructors    // -----------------------------------------------------------------------    /** @name Constructors */    //@{    /**      *      * @param  baseValidator  The base datatype validator for derived      *                        validators. Null if native validator.      *      * @param  facets         A hashtable of datatype facets (except enum).      *      * @param  finalSet       'final' value of the simpleType      */	DatatypeValidator(DatatypeValidator* const baseValidator,                      RefHashTableOf<KVStringPair>* const facets,                      const int finalSet,                      const ValidatorType type,                      MemoryManager* const manager = XMLPlatformUtils::fgMemoryManager);    //@}	friend class DatatypeValidatorFactory;    friend class XSObjectFactory;    /**      * facetDefined	  */	int   getFacetsDefined() const;    void  setFacetsDefined(int);    /**      * fixed	  */	int   getFixed() const;    void  setFixed(int);    /**      * fPattern	  */    const XMLCh* getPattern() const;	void         setPattern(const XMLCh* );    /**      * fRegex	  */	RegularExpression* getRegex() const;	void               setRegex(RegularExpression* const);    /**      * set fType      */    void setType(ValidatorType);    /**      * set fWhiteSpace      */    void setWhiteSpace(short);    /**      * get WSString      */    const XMLCh*   getWSstring(const short WSType) const;    /**     *  Fundamental Facet: ordered      */    void setOrdered(XSSimpleTypeDefinition::ORDERING ordered);    /**     * Fundamental Facet: cardinality.      */    void setFinite(bool finite);    /**     * Fundamental Facet: bounded.      */    void setBounded(bool bounded);    /**     * Fundamental Facet: numeric.      */    void setNumeric(bool numeric);    // -----------------------------------------------------------------------    //  Protected data members    //    //  fMemoryManager    //      Pluggable memory manager for dynamic allocation/deallocation.    // -----------------------------------------------------------------------    MemoryManager*                fMemoryManager;private:    // -----------------------------------------------------------------------    //  CleanUp methods    // -----------------------------------------------------------------------    void cleanUp();    inline bool isBuiltInDV(DatatypeValidator* const);    // -----------------------------------------------------------------------    //  Unimplemented constructors and operators    // -----------------------------------------------------------------------    DatatypeValidator(const DatatypeValidator&);    DatatypeValidator& operator=(const DatatypeValidator&);    // -----------------------------------------------------------------------    //  Private data members    //    //  fFinalSet    //      stores "final" values of simpleTypes    //    //  fBaseValidator    //      This is a pointer to a base datatype validator. If value is null,	//      it means we have a native datatype validator not a derived one.	//		    //  fFacets    //      This is a hashtable of dataype facets.    //    //  fType    //      Stores the class type of datatype validator    //    //  fFacetsDefined    //      Stores the constaiting facets flag    //    //  fPattern    //      the pointer to the String of the pattern. The actual data is    //      in the Facets.    //    //  fRegex    //      pointer to the RegularExpress object    //    //    //  fFixed    //      if {fixed} is true, then types for which this type is the    //      {base type definition} cannot specify a value for a specific    //      facet.    //    //  fTypeName    //      the uri,name of the type this validator will validate    //    //  fTypeLocalName    //      the name of the type this validator will validate    //    //  fTypeUri    //      the uri of the type this validator will validate    //  fAnonymous    //      true if this type is anonynous    //    // -----------------------------------------------------------------------    bool                                fAnonymous;    short                               fWhiteSpace;    int                                 fFinalSet;    int                                 fFacetsDefined;    int                                 fFixed;    ValidatorType                       fType;	DatatypeValidator*                  fBaseValidator;	RefHashTableOf<KVStringPair>*       fFacets;    XMLCh*                              fPattern;    RegularExpression*                  fRegex;    XMLCh*                              fTypeName;    const XMLCh*                        fTypeLocalName;    const XMLCh*                        fTypeUri;    XSSimpleTypeDefinition::ORDERING    fOrdered;    bool                                fFinite;    bool                                fBounded;    bool                                fNumeric;};// ---------------------------------------------------------------------------//  DatatypeValidator: Getters// ---------------------------------------------------------------------------inline int DatatypeValidator::getFinalSet() const {    return fFinalSet;}inline RefHashTableOf<KVStringPair>* DatatypeValidator::getFacets() const {    return fFacets;}inline DatatypeValidator* DatatypeValidator::getBaseValidator() const {	return fBaseValidator;}inline short DatatypeValidator::getWSFacet() const {    return fWhiteSpace;}inline DatatypeValidator::ValidatorType DatatypeValidator::getType() const{    return fType;}inline int DatatypeValidator::getFacetsDefined() const{    return fFacetsDefined;}inline int DatatypeValidator::getFixed() const{    return fFixed;}inline const XMLCh* DatatypeValidator::getPattern() const{    return fPattern;}inline RegularExpression* DatatypeValidator::getRegex() const{    return fRegex;}inline const XMLCh* DatatypeValidator::getTypeName() const{    return fTypeName;}inline bool DatatypeValidator::getAnonymous() const{    return fAnonymous;}inline const XMLCh* DatatypeValidator::getTypeLocalName() const{    return fTypeLocalName;}inline const XMLCh* DatatypeValidator::getTypeUri() const{    return fTypeUri;}inline MemoryManager* DatatypeValidator::getMemoryManager() const{    return fMemoryManager;}inline XSSimpleTypeDefinition::ORDERING DatatypeValidator::getOrdered() const{    return fOrdered;}inline bool DatatypeValidator::getFinite() const{    return fFinite;} inline bool DatatypeValidator::getBounded() const{    return fBounded;}inline bool DatatypeValidator::getNumeric() const{    return fNumeric;}// ---------------------------------------------------------------------------//  DatatypeValidator: Setters// ---------------------------------------------------------------------------inline void DatatypeValidator::setType(ValidatorType theType){    fType = theType;}inline void DatatypeValidator::setWhiteSpace(short newValue){    fWhiteSpace = newValue;}inline void DatatypeValidator::setFacetsDefined(int facets){    fFacetsDefined |= facets;}inline void DatatypeValidator::setFixed(int fixed){    fFixed |= fixed;}inline void DatatypeValidator::setPattern(const XMLCh* pattern){    if (fPattern)        fMemoryManager->deallocate(fPattern);//delete [] fPattern;    fPattern = XMLString::replicate(pattern, fMemoryManager);}inline void DatatypeValidator::setRegex(RegularExpression* const regex){    fRegex = regex;}inline bool DatatypeValidator::isAtomic() const {    return true;}inline void DatatypeValidator::setAnonymous() {    fAnonymous = true;}inline void DatatypeValidator::setOrdered(XSSimpleTypeDefinition::ORDERING ordered){    fOrdered = ordered;}inline void DatatypeValidator::setFinite(bool finite){    fFinite = finite;}inline void DatatypeValidator::setBounded(bool bounded){    fBounded = bounded;}inline void DatatypeValidator::setNumeric(bool numeric){    fNumeric = numeric;}// ---------------------------------------------------------------------------//  DatatypeValidators: Compare methods// ---------------------------------------------------------------------------inline int DatatypeValidator::compare(const XMLCh* const lValue,                                      const XMLCh* const rValue                                      , MemoryManager*     const){    return XMLString::compareString(lValue, rValue);}// ---------------------------------------------------------------------------//  DatatypeValidators: Validation methods// ---------------------------------------------------------------------------inline boolDatatypeValidator::isSubstitutableBy(const DatatypeValidator* const toCheck){    const DatatypeValidator* dv = toCheck;	while (dv != 0) {        if (dv == this) {            return true;        }        dv = dv->getBaseValidator();    }    return false;}XERCES_CPP_NAMESPACE_END#endif/**  * End of file DatatypeValidator.hpp  */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -