void ComplexTypeInfo::serialize(XSerializeEngine& serEng) { if (serEng.isStoring()) { serEng<<fAnonymous; serEng<<fAbstract; serEng<<fAdoptContentSpec; serEng<<fAttWithTypeId; serEng<<fPreprocessed; serEng<<fDerivedBy; serEng<<fBlockSet; serEng<<fFinalSet; serEng<<fScopeDefined; serEng<<fElementId; serEng<<fContentType; serEng.writeString(fTypeName); serEng.writeString(fTypeLocalName); serEng.writeString(fTypeUri); DatatypeValidator::storeDV(serEng, fBaseDatatypeValidator); DatatypeValidator::storeDV(serEng, fDatatypeValidator); serEng<<fBaseComplexTypeInfo; serEng<<fContentSpec; serEng<<fAttWildCard; serEng<<fAttList; /*** * * Serialize RefVectorOf<SchemaElementDecl>* fElements; * Serialize RefHash2KeysTableOf<SchemaAttDef>* fAttDefs; ***/ XTemplateSerializer::storeObject(fElements, serEng); XTemplateSerializer::storeObject(fAttDefs, serEng); /*** * Don't serialize * * fContentModel; * fFormattedModel; * fLocator; * * fContentSpecOrgURI: start of the array * fContentSpecOrgURISize: size of the array * fUniqueURI: the current last element in the array ***/ } else { serEng>>fAnonymous; serEng>>fAbstract; serEng>>fAdoptContentSpec; serEng>>fAttWithTypeId; serEng>>fPreprocessed; serEng>>fDerivedBy; serEng>>fBlockSet; serEng>>fFinalSet; serEng>>fScopeDefined; serEng>>fElementId; serEng>>fContentType; serEng.readString(fTypeName); serEng.readString(fTypeLocalName); serEng.readString(fTypeUri); fBaseDatatypeValidator = DatatypeValidator::loadDV(serEng); fDatatypeValidator = DatatypeValidator::loadDV(serEng); serEng>>fBaseComplexTypeInfo; serEng>>fContentSpec; serEng>>fAttWildCard; serEng>>fAttList; /*** * * Deserialize RefVectorOf<SchemaElementDecl>* fElements; * Deserialize RefHash2KeysTableOf<SchemaAttDef>* fAttDefs; ***/ XTemplateSerializer::loadObject(&fElements, 8, false, serEng); XTemplateSerializer::loadObject(&fAttDefs, 29, true, serEng); /*** * Don't deserialize * * fFormattedModel; * fLocator; * * fContentSpecOrgURI: start of the array * fContentSpecOrgURISize: size of the array * fUniqueURI: the current last element in the array ***/ fFormattedModel = 0; fLocator = 0; fContentSpecOrgURI = 0; fContentSpecOrgURISize = 0; fUniqueURI = 0; } }
void SchemaGrammar::serialize(XSerializeEngine& serEng) { /*** * don't serialize NamespaceScope* fNamespaceScope; * ValidationContext* fValidationContext; * fElemNonDeclPool ***/ Grammar::serialize(serEng); if (serEng.isStoring()) { //serialize DatatypeValidatorFactory first fDatatypeRegistry.serialize(serEng); /*** * * Serialize RefHash3KeysIdPool<SchemaElementDecl>* fElemDeclPool; * Serialize RefHash3KeysIdPool<SchemaElementDecl>* fGroupElemDeclPool; * ***/ XTemplateSerializer::storeObject(fElemDeclPool, serEng); XTemplateSerializer::storeObject(fGroupElemDeclPool, serEng); /*** * Serialize NameIdPool<XMLNotationDecl>* fNotationDeclPool; ***/ XTemplateSerializer::storeObject(fNotationDeclPool, serEng); /*** * * Serialize RefHashTableOf<XMLAttDef>* fAttributeDeclRegistry; * Serialize RefHashTableOf<ComplexTypeInfo>* fComplexTypeRegistry; * Serialize RefHashTableOf<XercesGroupInfo>* fGroupInfoRegistry; * Serialize RefHashTableOf<XercesAttGroupInfo>* fAttGroupInfoRegistry; * Serialize RefHashTableOf<XMLRefInfo>* fIDRefList; * ***/ XTemplateSerializer::storeObject(fAttributeDeclRegistry, serEng); XTemplateSerializer::storeObject(fComplexTypeRegistry, serEng); XTemplateSerializer::storeObject(fGroupInfoRegistry, serEng); XTemplateSerializer::storeObject(fAttGroupInfoRegistry, serEng); /*** * Serialize RefHash2KeysTableOf<ElemVector>* fValidSubstitutionGroups; ***/ XTemplateSerializer::storeObject(fValidSubstitutionGroups, serEng); /*** * Serialize RefHashTableOf<XSAnnotation>* fAnnotations; ***/ XTemplateSerializer::storeObject(fAnnotations, serEng); serEng.writeString(fTargetNamespace); serEng<<fValidated; /*** * serialize() method shall be used to store object * which has been created in ctor ***/ fGramDesc->serialize(serEng); } else { fDatatypeRegistry.serialize(serEng); /*** * * Deserialize RefHash3KeysIdPool<SchemaElementDecl>* fElemDeclPool; * Deserialize RefHash3KeysIdPool<SchemaElementDecl>* fGroupElemDeclPool; * ***/ XTemplateSerializer::loadObject(&fElemDeclPool, 109, true, 128, serEng); XTemplateSerializer::loadObject(&fGroupElemDeclPool, 109, true, 128, serEng); /*** * Deserialize NameIdPool<XMLNotationDecl>* fNotationDeclPool; ***/ XTemplateSerializer::loadObject(&fNotationDeclPool, 109, 128, serEng); /*** * * Deserialize RefHashTableOf<XMLAttDef>* fAttributeDeclRegistry; * Deserialize RefHashTableOf<ComplexTypeInfo>* fComplexTypeRegistry; * Deserialize RefHashTableOf<XercesGroupInfo>* fGroupInfoRegistry; * Deserialize RefHashTableOf<XercesAttGroupInfo>* fAttGroupInfoRegistry; * Deserialize RefHashTableOf<XMLRefInfo>* fIDRefList; * ***/ XTemplateSerializer::loadObject(&fAttributeDeclRegistry, 29, true, serEng); XTemplateSerializer::loadObject(&fComplexTypeRegistry, 29, true, serEng); XTemplateSerializer::loadObject(&fGroupInfoRegistry, 13, true, serEng); XTemplateSerializer::loadObject(&fAttGroupInfoRegistry, 13, true, serEng); /*** * Deserialize RefHash2KeysTableOf<ElemVector>* fValidSubstitutionGroups; ***/ XTemplateSerializer::loadObject(&fValidSubstitutionGroups, 29, true, serEng); /*** * Deserialize RefHashTableOf<XSAnnotation>* fAnnotations; ***/ XTemplateSerializer::loadObject(&fAnnotations, 29, true, serEng); serEng.readString(fTargetNamespace); serEng>>fValidated; /*** * serialize() method shall be used to load object * which has been created in ctor ***/ fGramDesc->serialize(serEng); } }
void SchemaElementDecl::serialize(XSerializeEngine& serEng) { XMLElementDecl::serialize(serEng); if (serEng.isStoring()) { serEng<<(int)fModelType; DatatypeValidator::storeDV(serEng, fDatatypeValidator); serEng<<fEnclosingScope; serEng<<fFinalSet; serEng<<fBlockSet; serEng<<fMiscFlags; serEng.writeString(fDefaultValue); serEng<<fComplexTypeInfo; /*** * Serialize RefHash2KeysTableOf<SchemaAttDef>* fAttDefs; ***/ XTemplateSerializer::storeObject(fAttDefs, serEng); serEng<<fXsiComplexTypeInfo; DatatypeValidator::storeDV(serEng, (DatatypeValidator*)fXsiSimpleTypeInfo); /*** * Serialize RefVectorOf<IdentityConstraint>* fIdentityConstraints; ***/ XTemplateSerializer::storeObject(fIdentityConstraints, serEng); serEng<<fAttWildCard; serEng<<fSubstitutionGroupElem; serEng<<(int)fValidity; serEng<<(int)fValidation; serEng<<fSeenValidation; serEng<<fSeenNoValidation; serEng<<fHadContent; } else { int i; serEng>>i; fModelType = (ModelTypes)i; fDatatypeValidator = DatatypeValidator::loadDV(serEng); serEng>>fEnclosingScope; serEng>>fFinalSet; serEng>>fBlockSet; serEng>>fMiscFlags; serEng.readString(fDefaultValue); serEng>>fComplexTypeInfo; /*** * DeSerialize RefHash2KeysTableOf<SchemaAttDef>* fAttDefs; ***/ XTemplateSerializer::loadObject(&fAttDefs, 29, true, serEng); serEng>>fXsiComplexTypeInfo; fXsiSimpleTypeInfo = DatatypeValidator::loadDV(serEng); /*** * DeSerialize RefVectorOf<IdentityConstraint>* fIdentityConstraints; ***/ XTemplateSerializer::loadObject(&fIdentityConstraints, 16, true, serEng); serEng>>fAttWildCard; serEng>>fSubstitutionGroupElem; serEng>>i; fValidity = (PSVIDefs::Validity)i; serEng>> i; fValidation = (PSVIDefs::Validation)i; serEng>>fSeenValidation; serEng>>fSeenNoValidation; serEng>>fHadContent; } }