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

📄 xmlscanner.hpp

📁 基于属性证书的访问控制源代码,由c++编写,包括openssl,xercesc等
💻 HPP
📖 第 1 页 / 共 4 页
字号:
    //  fBufMgr    //      This is a manager for temporary buffers used during scanning.    //      For efficiency we must use a set of static buffers, but we have    //      to insure that they are not incorrectly reused. So this manager    //      provides the smarts to hand out buffers as required.    //    //  fDocHandler    //      The client code's document handler. If zero, then no document    //      handler callouts are done. We don't adopt it.    //    //  fDocTypeHandler    //      The client code's document type handler (used by DTD Validator).    //    //  fDoNamespaces    //      This flag indicates whether the client code wants us to do    //      namespaces or not. If the installed validator indicates that it    //      has to do namespaces, then this is ignored.    //    //  fEntityHandler    //      The client code's entity handler. If zero, then no entity handler    //      callouts are done. We don't adopt it.    //    //  fErrorReporter    //      The client code's error reporter. If zero, then no error reporter    //      callouts are done. We don't adopt it.    //    //  fErrorHandler    //      The client code's error handler.  Need to store this info for    //      Schema parse error handling.    //    //  fPSVIHandler    //      The client code's PSVI handler.    //    //  fExitOnFirstFatal    //      This indicates whether we bail out on the first fatal XML error    //      or not. It defaults to true, which is the strict XML way, but it    //      can be changed.    //    //  fValidationConstraintFatal    //      This indicates whether we treat validation constraint errors as    //      fatal errors or not. It defaults to false, but it can be changed.    //    //  fIDRefList    //      This is a list of XMLRefInfo objects. This member lets us do all    //      needed ID-IDREF balancing checks.    //    //  fInException    //      To avoid a circular freakout when we catch an exception and emit    //      it, which would normally throw again if the 'fail on first error'    //      flag is one.    //    //  fReaderMgr    //      This is the reader manager, from which we get characters. It    //      manages the reader stack for us, and provides a lot of convenience    //      methods to do specialized checking for chars, sequences of chars,    //      skipping chars, etc...    //    //  fScannerId    //  fSequenceId    //      These are used for progressive parsing, to make sure that the    //      client code does the right thing at the right time.    //    //  fStandalone    //      Indicates whether the document is standalone or not. Defaults to    //      no, but can be overridden in the XMLDecl.    //    //  fHasNoDTD    //      Indicates the document has no DTD or has only an internal DTD subset    //      which contains no parameter entity references.    //    //  fValidate    //      Indicates whether any validation should be done. This is defined    //      by the existence of a Grammar together with fValScheme.    //    //  fValidator    //      The installed validator. We look at them via the abstract    //      validator interface, and don't know what it actual is.    //      Either point to user's installed validator, or fDTDValidator    //      or fSchemaValidator.    //    //  fValidatorFromUser    //      This flag indicates whether the validator was installed from    //      user.  If false, then the validator was created by the Scanner.    //    //  fValScheme    //      This is the currently set validation scheme. It defaults to    //      'never', but can be set by the client.    //    //  fErrorCount    //		The number of errors we've encountered.    //    //  fDoSchema    //      This flag indicates whether the client code wants Schema to    //      be processed or not.    //    //  fSchemaFullChecking    //      This flag indicates whether the client code wants full Schema    //      constraint checking.    //    //  fAttName    //  fAttValue    //  fCDataBuf    //  fNameBuf    //  fQNameBuf    //  fPrefixBuf    //      For the most part, buffers are obtained from the fBufMgr object    //      on the fly. However, for the start tag scan, we have a set of    //      fixed buffers for performance reasons. These are used a lot and    //      there are a number of them, so asking the buffer manager each    //      time for new buffers is a bit too much overhead.    //    //  fEmptyNamespaceId    //      This is the id of the empty namespace URI. This is a special one    //      because of the xmlns="" type of deal. We have to quickly sense    //      that its the empty namespace.    //    //  fUnknownNamespaceId    //      This is the id of the namespace URI which is assigned to the    //      global namespace. Its for debug purposes only, since there is no    //      real global namespace URI. Its set by the derived class.    //    //  fXMLNamespaceId    //  fXMLNSNamespaceId    //      These are the ids of the namespace URIs which are assigned to the    //      'xml' and 'xmlns' special prefixes. The former is officially    //      defined but the latter is not, so we just provide one for debug    //      purposes.    //    //  fSchemaNamespaceId    //      This is the id of the schema namespace URI.    //    //  fGrammarResolver    //      Grammar Pool that stores all the grammars. Key is namespace for    //      schema and system id for external DTD. When caching a grammar, if    //      a grammar is already in the pool, it will be replaced with the    //      new parsed one.    //    //  fGrammar    //      Current Grammar used by the Scanner and Validator    //    //  fRootGrammar    //      The grammar where the root element is declared.    //    //  fGrammarType    //      Current Grammar Type.  Store this value instead of calling getGrammarType    //      all the time for faster performance.    //    //  fURIStringPool    //      This is a pool for URIs with unique ids assigned. We use a standard    //      string pool class.  This pool is going to be shared by all Grammar.    //      Use only if namespace is turned on.    //    //  fRootElemName    //      No matter we are using DTD or Schema Grammar, if a DOCTYPE exists,    //      we need to verify the root element name.  So store the rootElement    //      that is used in the DOCTYPE in the Scanner instead of in the DTDGrammar    //      where it used to    //    //  fExternalSchemaLocation    //      The list of Namespace/SchemaLocation that was specified externally    //      using setExternalSchemaLocation.    //    //  fExternalNoNamespaceSchemaLocation    //      The no target namespace XML Schema Location that was specified    //      externally using setExternalNoNamespaceSchemaLocation.    //    //  fSecurityManager    //      The SecurityManager instance; as and when set by the application.    //    //  fEntityExpansionLimit    //      The number of entity expansions to be permitted while processing this document    //      Only meaningful when fSecurityManager != 0    //    //  fEntityExpansionCount    //      The number of general entities expanded so far in this document.    //      Only meaningful when fSecurityManager != null    //    //  fLoadExternalDTD    //      This flag indicates whether the external DTD be loaded or not    //    //  fNormalizeData    //      This flag indicates whether the parser should perform datatype    //      normalization that is defined in the schema.    //    //  fCalculateSrcOfs    //      This flag indicates the parser should calculate the source offset.    //      Turning this on may impact performance.    //    //  fStandardUriConformant    //      This flag controls whether we force conformant URI    //    //  fXMLVersion    //      Enum to indicate if the main doc is XML 1.1 or XML 1.0 conformant        //  fUIntPool    //      pool of unsigned integers to help with duplicate attribute    //      detection and filling in default/fixed attributes    //  fUIntPoolRow    //      current row in fUIntPool    //  fUIntPoolCol    //      current column i row    //  fUIntPoolRowTotal    //      total number of rows in table    //    //  fMemoryManager    //      Pluggable memory manager for dynamic allocation/deallocation.    // -----------------------------------------------------------------------    bool                        fStandardUriConformant;    bool                        fCalculateSrcOfs;    bool                        fDoNamespaces;    bool                        fExitOnFirstFatal;    bool                        fValidationConstraintFatal;    bool                        fInException;    bool                        fStandalone;    bool                        fHasNoDTD;    bool                        fValidate;    bool                        fValidatorFromUser;    bool                        fDoSchema;    bool                        fSchemaFullChecking;    bool                        fToCacheGrammar;    bool                        fUseCachedGrammar;    bool                        fLoadExternalDTD;    bool                        fNormalizeData;    int                         fErrorCount;    unsigned int                fEntityExpansionLimit;    unsigned int                fEntityExpansionCount;    unsigned int                fEmptyNamespaceId;    unsigned int                fUnknownNamespaceId;    unsigned int                fXMLNamespaceId;    unsigned int                fXMLNSNamespaceId;    unsigned int                fSchemaNamespaceId;    unsigned int **             fUIntPool;    unsigned int                fUIntPoolRow;    unsigned int                fUIntPoolCol;    unsigned int                fUIntPoolRowTotal;    XMLUInt32                   fScannerId;    XMLUInt32                   fSequenceId;    RefVectorOf<XMLAttr>*       fAttrList;    XMLDocumentHandler*         fDocHandler;    DocTypeHandler*             fDocTypeHandler;    XMLEntityHandler*           fEntityHandler;    XMLErrorReporter*           fErrorReporter;    ErrorHandler*               fErrorHandler;    PSVIHandler*                fPSVIHandler;    ValidationContext           *fValidationContext;    bool                        fEntityDeclPoolRetrieved;    ReaderMgr                   fReaderMgr;    XMLValidator*               fValidator;    ValSchemes                  fValScheme;    GrammarResolver* const      fGrammarResolver;    MemoryManager* const        fGrammarPoolMemoryManager;    Grammar*                    fGrammar;    Grammar*                    fRootGrammar;    XMLStringPool*              fURIStringPool;    XMLCh*                      fRootElemName;    XMLCh*                      fExternalSchemaLocation;    XMLCh*                      fExternalNoNamespaceSchemaLocation;    SecurityManager*            fSecurityManager;    XMLReader::XMLVersion       fXMLVersion;    MemoryManager*              fMemoryManager;    XMLBufferMgr                fBufMgr;    XMLBuffer                   fAttNameBuf;    XMLBuffer                   fAttValueBuf;    XMLBuffer                   fCDataBuf;    XMLBuffer                   fQNameBuf;    XMLBuffer                   fPrefixBuf;    XMLBuffer                   fURIBuf;    ElemStack                   fElemStack;private :    // -----------------------------------------------------------------------    //  Unimplemented constructors and operators    // -----------------------------------------------------------------------    XMLScanner();    XMLScanner(const XMLScanner&);    XMLScanner& operator=(const XMLScanner&);    // -----------------------------------------------------------------------    //  Private helper methods    // -----------------------------------------------------------------------    void commonInit();    // -----------------------------------------------------------------------    //  Private scanning methods    // -----------------------------------------------------------------------    bool getQuotedString(XMLBuffer& toFill);    unsigned int scanUpToWSOr    (                XMLBuffer&  toFill        , const XMLCh       chEndChar    );};// ---------------------------------------------------------------------------//  XMLScanner: Getter methods// ---------------------------------------------------------------------------inline const XMLDocumentHandler* XMLScanner::getDocHandler() const{    return fDocHandler;}inline XMLDocumentHandler* XMLScanner::getDocHandler(){    return fDocHandler;}inline const DocTypeHandler* XMLScanner::getDocTypeHandler() const{    return fDocTypeHandler;}inline DocTypeHandler* XMLScanner::getDocTypeHandler(){    return fDocTypeHandler;}inline bool XMLScanner::getDoNamespaces() const{    return fDoNamespaces;}inline const XMLEntityHandler* XMLScanner::getEntityHandler() const{    return fEntityHandler;}inline XMLEntityHandler* XMLScanner::getEntityHandler(){    return fEntityHandler;}inline const XMLErrorReporter* XMLScanner::getErrorReporter() const{    return fErrorReporter;}inline XMLErrorReporter* XMLScanner::getErrorReporter(){    return fErrorReporter;}inline const ErrorHandler* XMLScanner::getErrorHandler() const{    return fErrorHandler;}inline ErrorHandler* XMLScanner::getErrorHandler(){    return fErrorHandler;}inline const PSVIHandler* XMLScanner::getPSVIHandler() const{    return fPSVIHandler;}inline PSVIHandler* XMLScanner::getPSVIHandler(){    return fPSVIHandler;}inline bool XMLScanner::getExitOnFirstFatal() const{    return fExitOnFirstFatal;}inline bool XMLScanner::getValidationConstraintFatal() const{    return fValidationConstraintFatal;}inline bool XMLScanner::getInException() const{    return fInException;}

⌨️ 快捷键说明

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