Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 10:14:56

0001 /*
0002  * Licensed to the Apache Software Foundation (ASF) under one or more
0003  * contributor license agreements.  See the NOTICE file distributed with
0004  * this work for additional information regarding copyright ownership.
0005  * The ASF licenses this file to You under the Apache License, Version 2.0
0006  * (the "License"); you may not use this file except in compliance with
0007  * the License.  You may obtain a copy of the License at
0008  *
0009  *      http://www.apache.org/licenses/LICENSE-2.0
0010  *
0011  * Unless required by applicable law or agreed to in writing, software
0012  * distributed under the License is distributed on an "AS IS" BASIS,
0013  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
0014  * See the License for the specific language governing permissions and
0015  * limitations under the License.
0016  */
0017 
0018 /*
0019  * $Id$
0020  */
0021 
0022 #if !defined(XERCESC_INCLUDE_GUARD_XTEMPLATE_SERIALIZER_HPP)
0023 #define XERCESC_INCLUDE_GUARD_XTEMPLATE_SERIALIZER_HPP
0024 
0025 #include <xercesc/util/ValueVectorOf.hpp>
0026 #include <xercesc/util/RefArrayVectorOf.hpp>
0027 #include <xercesc/util/RefVectorOf.hpp>
0028 #include <xercesc/util/RefHashTableOf.hpp>
0029 #include <xercesc/util/RefHash2KeysTableOf.hpp>
0030 #include <xercesc/util/RefHash3KeysIdPool.hpp>
0031 #include <xercesc/util/NameIdPool.hpp>
0032 
0033 #include <xercesc/framework/XMLNotationDecl.hpp>
0034 #include <xercesc/framework/XMLRefInfo.hpp>
0035 #include <xercesc/util/XMLNumber.hpp>
0036 #include <xercesc/validators/common/ContentSpecNode.hpp>
0037 #include <xercesc/validators/DTD/DTDAttDef.hpp>
0038 #include <xercesc/validators/DTD/DTDElementDecl.hpp>
0039 #include <xercesc/validators/DTD/DTDEntityDecl.hpp>
0040 #include <xercesc/validators/schema/SchemaAttDef.hpp>
0041 #include <xercesc/validators/schema/SchemaElementDecl.hpp>
0042 #include <xercesc/validators/schema/XercesGroupInfo.hpp>
0043 #include <xercesc/validators/schema/XercesAttGroupInfo.hpp>
0044 #include <xercesc/validators/schema/SchemaGrammar.hpp>
0045 #include <xercesc/validators/schema/identity/IC_Field.hpp>
0046 #include <xercesc/validators/schema/identity/IdentityConstraint.hpp>
0047 #include <xercesc/validators/schema/identity/XercesXPath.hpp>
0048 #include <xercesc/framework/psvi/XSAnnotation.hpp>
0049 
0050 XERCES_CPP_NAMESPACE_BEGIN
0051 
0052 class XMLUTIL_EXPORT XTemplateSerializer
0053 {
0054 public:
0055 
0056     /**********************************************************
0057      *
0058      * ValueVectorOf
0059      *
0060      *   SchemaElementDecl*
0061      *   unsigned int
0062      *
0063      ***********************************************************/
0064     static void           storeObject(ValueVectorOf<SchemaElementDecl*>* const tempObjToWrite
0065                                     , XSerializeEngine&                        serEng);
0066 
0067     static void           loadObject(ValueVectorOf<SchemaElementDecl*>**       tempObjToRead
0068                                    , int                                       initSize
0069                                    , bool                                      toCallDestructor
0070                                    , XSerializeEngine&                         serEng);
0071 
0072     static void           storeObject(ValueVectorOf<unsigned int>* const tempObjToWrite
0073                                     , XSerializeEngine&                  serEng);
0074 
0075     static void           loadObject(ValueVectorOf<unsigned int>**       tempObjToRead
0076                                    , int                                 initSize
0077                                    , bool                                toCallDestructor
0078                                    , XSerializeEngine&                   serEng);
0079 
0080     /**********************************************************
0081      *
0082      * RefArrayVectorOf
0083      *
0084      *   XMLCh
0085      *
0086      ***********************************************************/
0087     static void           storeObject(RefArrayVectorOf<XMLCh>* const tempObjToWrite
0088                                     , XSerializeEngine&              serEng);
0089 
0090     static void           loadObject(RefArrayVectorOf<XMLCh>**       tempObjToRead
0091                                    , int                             initSize
0092                                    , bool                            toAdopt
0093                                    , XSerializeEngine&               serEng);
0094 
0095     /**********************************************************
0096      *
0097      * RefVectorOf
0098      *
0099      *   SchemaAttDef
0100      *   SchemaElementDecl
0101      *   ContentSpecNode
0102      *   IC_Field
0103      *   DatatypeValidator
0104      *   IdentityConstraint
0105      *   XMLNumber
0106      *   XercesLocationPath
0107      *   XercesStep
0108      *
0109      ***********************************************************/
0110     static void           storeObject(RefVectorOf<SchemaAttDef>* const tempObjToWrite
0111                                     , XSerializeEngine&                serEng);
0112 
0113     static void           loadObject(RefVectorOf<SchemaAttDef>**       tempObjToRead
0114                                    , int                               initSize
0115                                    , bool                              toAdopt
0116                                    , XSerializeEngine&                 serEng);
0117 
0118     static void           storeObject(RefVectorOf<SchemaElementDecl>* const tempObjToWrite
0119                                     , XSerializeEngine&                     serEng);
0120 
0121     static void           loadObject(RefVectorOf<SchemaElementDecl>**       tempObjToRead
0122                                    , int                                    initSize
0123                                    , bool                                   toAdopt
0124                                    , XSerializeEngine&                      serEng);
0125 
0126     static void           storeObject(RefVectorOf<ContentSpecNode>* const tempObjToWrite
0127                                     , XSerializeEngine&                   serEng);
0128 
0129     static void           loadObject(RefVectorOf<ContentSpecNode>**       tempObjToRead
0130                                    , int                                  initSize
0131                                    , bool                                 toAdopt
0132                                    , XSerializeEngine&                    serEng);
0133 
0134     static void           storeObject(RefVectorOf<IC_Field>* const tempObjToWrite
0135                                     , XSerializeEngine&            serEng);
0136 
0137     static void           loadObject(RefVectorOf<IC_Field>**       tempObjToRead
0138                                    , int                           initSize
0139                                    , bool                          toAdopt
0140                                    , XSerializeEngine&             serEng);
0141 
0142     static void           storeObject(RefVectorOf<DatatypeValidator>* const tempObjToWrite
0143                                     , XSerializeEngine&                     serEng);
0144 
0145     static void           loadObject(RefVectorOf<DatatypeValidator>**       tempObjToRead
0146                                    , int                                    initSize
0147                                    , bool                                   toAdopt
0148                                    , XSerializeEngine&                      serEng);
0149 
0150     static void           storeObject(RefVectorOf<IdentityConstraint>* const tempObjToWrite
0151                                     , XSerializeEngine&                      serEng);
0152 
0153     static void           loadObject(RefVectorOf<IdentityConstraint>**       tempObjToRead
0154                                    , int                                     initSize
0155                                    , bool                                    toAdopt
0156                                    , XSerializeEngine&                       serEng);
0157 
0158     static void           storeObject(RefVectorOf<XMLNumber>* const tempObjToWrite
0159                                     , XSerializeEngine&             serEng);
0160 
0161     static void           loadObject(RefVectorOf<XMLNumber>**       tempObjToRead
0162                                    , int                            initSize
0163                                    , bool                           toAdopt
0164                                    , XMLNumber::NumberType          numType
0165                                    , XSerializeEngine&              serEng);
0166 
0167     static void           storeObject(RefVectorOf<XercesLocationPath>* const tempObjToWrite
0168                                     , XSerializeEngine&                      serEng);
0169 
0170     static void           loadObject(RefVectorOf<XercesLocationPath>**       tempObjToRead
0171                                    , int                                     initSize
0172                                    , bool                                    toAdopt
0173                                    , XSerializeEngine&                       serEng);
0174 
0175     static void           storeObject(RefVectorOf<XercesStep>* const tempObjToWrite
0176                                     , XSerializeEngine&              serEng);
0177 
0178     static void           loadObject(RefVectorOf<XercesStep>**       tempObjToRead
0179                                    , int                             initSize
0180                                    , bool                            toAdopt
0181                                    , XSerializeEngine&               serEng);
0182 
0183     /**********************************************************
0184      *
0185      * RefHashTableOf
0186      *
0187      *   KVStringPair
0188      *   XMLAttDef
0189      *   DTDAttDef
0190      *   ComplexTypeInfo
0191      *   XercesGroupInfo
0192      *   XercesAttGroupInfo
0193      *   XMLRefInfo
0194      *   DatatypeValidator
0195      *   Grammar
0196      *   XSAnnotation
0197      *
0198      ***********************************************************/
0199     static void           storeObject(RefHashTableOf<KVStringPair>* const tempObjToWrite
0200                                     , XSerializeEngine&                   serEng);
0201 
0202     static void           loadObject(RefHashTableOf<KVStringPair>**       tempObjToRead
0203                                    , int                                  initSize
0204                                    , bool                                 toAdopt
0205                                    , XSerializeEngine&                    serEng);
0206 
0207     static void           storeObject(RefHashTableOf<XMLAttDef>* const tempObjToWrite
0208                                     , XSerializeEngine&                serEng);
0209 
0210     static void           loadObject(RefHashTableOf<XMLAttDef>**       tempObjToRead
0211                                    , int                               initSize
0212                                    , bool                              toAdopt
0213                                    , XSerializeEngine&                 serEng);
0214 
0215     static void           storeObject(RefHashTableOf<DTDAttDef>* const tempObjToWrite
0216                                     , XSerializeEngine&                serEng);
0217 
0218     static void           loadObject(RefHashTableOf<DTDAttDef>**       tempObjToRead
0219                                    , int                               initSize
0220                                    , bool                              toAdopt
0221                                    , XSerializeEngine&                 serEng);
0222 
0223     static void           storeObject(RefHashTableOf<ComplexTypeInfo>* const tempObjToWrite
0224                                     , XSerializeEngine&                      serEng);
0225 
0226     static void           loadObject(RefHashTableOf<ComplexTypeInfo>**       tempObjToRead
0227                                    , int                                     initSize
0228                                    , bool                                    toAdopt
0229                                    , XSerializeEngine&                       serEng);
0230 
0231     static void           storeObject(RefHashTableOf<XercesGroupInfo>* const tempObjToWrite
0232                                     , XSerializeEngine&                      serEng);
0233 
0234     static void           loadObject(RefHashTableOf<XercesGroupInfo>**       tempObjToRead
0235                                    , int                                     initSize
0236                                    , bool                                    toAdopt
0237                                    , XSerializeEngine&                       serEng);
0238 
0239     static void           storeObject(RefHashTableOf<XercesAttGroupInfo>* const tempObjToWrite
0240                                     , XSerializeEngine&                         serEng);
0241 
0242     static void           loadObject(RefHashTableOf<XercesAttGroupInfo>**       tempObjToRead
0243                                    , int                                        initSize
0244                                    , bool                                       toAdopt
0245                                    , XSerializeEngine&                          serEng);
0246 
0247     static void           storeObject(RefHashTableOf<XMLRefInfo>* const tempObjToWrite
0248                                     , XSerializeEngine&                 serEng);
0249 
0250     static void           loadObject(RefHashTableOf<XMLRefInfo>**       tempObjToRead
0251                                    , int                                initSize
0252                                    , bool                               toAdopt
0253                                    , XSerializeEngine&                  serEng);
0254 
0255     static void           storeObject(RefHashTableOf<DatatypeValidator>* const tempObjToWrite
0256                                     , XSerializeEngine&                        serEng);
0257 
0258     static void           loadObject(RefHashTableOf<DatatypeValidator>**       tempObjToRead
0259                                    , int                                       initSize
0260                                    , bool                                      toAdopt
0261                                    , XSerializeEngine&                         serEng);
0262 
0263     static void           storeObject(RefHashTableOf<Grammar>* const tempObjToWrite
0264                                     , XSerializeEngine&              serEng);
0265 
0266     static void           loadObject(RefHashTableOf<Grammar>**       tempObjToRead
0267                                    , int                             initSize
0268                                    , bool                            toAdopt
0269                                    , XSerializeEngine&               serEng);
0270 
0271     static void           storeObject(RefHashTableOf<XSAnnotation, PtrHasher>* const tempObjToWrite
0272                                     , XSerializeEngine&                   serEng);
0273 
0274     static void           loadObject(RefHashTableOf<XSAnnotation, PtrHasher>**  tempObjToRead
0275                                    , int                             initSize
0276                                    , bool                            toAdopt
0277                                    , XSerializeEngine&               serEng);
0278 
0279     /**********************************************************
0280      *
0281      * RefHash2KeysTableOf
0282      *
0283      *   SchemaAttDef
0284      *   ElemVector
0285      *
0286      ***********************************************************/
0287     static void           storeObject(RefHash2KeysTableOf<SchemaAttDef>* const tempObjToWrite
0288                                     , XSerializeEngine&                        serEng);
0289 
0290     static void           loadObject(RefHash2KeysTableOf<SchemaAttDef>**       tempObjToRead
0291                                    , int                                       initSize
0292                                    , bool                                      toAdopt
0293                                    , XSerializeEngine&                         serEng);
0294 
0295     static void           storeObject(RefHash2KeysTableOf<ElemVector>* const tempObjToWrite
0296                                     , XSerializeEngine&                      serEng);
0297 
0298     static void           loadObject(RefHash2KeysTableOf<ElemVector>**       tempObjToRead
0299                                    , int                                     initSize
0300                                    , bool                                    toAdopt
0301                                    , XSerializeEngine&                       serEng);
0302 
0303     /**********************************************************
0304      *
0305      * RefHash3KeysIdPool
0306      *
0307      *   SchemaElementDecl
0308      *
0309      ***********************************************************/
0310     static void           storeObject(RefHash3KeysIdPool<SchemaElementDecl>* const tempObjToWrite
0311                                     , XSerializeEngine&                            serEng);
0312 
0313     static void           loadObject(RefHash3KeysIdPool<SchemaElementDecl>**       tempObjToRead
0314                                    , int                                           initSize
0315                                    , bool                                          toAdopt
0316                                    , int                                           initSize2
0317                                    , XSerializeEngine&                             serEng);
0318 
0319     /**********************************************************
0320      *
0321      * NameIdPool
0322      *
0323      *   DTDElementDecl
0324      *   DTDEntityDecl
0325      *   XMLNotationDecl
0326      *
0327      ***********************************************************/
0328     static void           storeObject(NameIdPool<DTDElementDecl>* const tempObjToWrite
0329                                     , XSerializeEngine&                 serEng);
0330 
0331     static void           loadObject(NameIdPool<DTDElementDecl>**       tempObjToRead
0332                                    , int                                initSize
0333                                    , int                                initSize2
0334                                    , XSerializeEngine&                  serEng);
0335 
0336     static void           storeObject(NameIdPool<DTDEntityDecl>* const tempObjToWrite
0337                                     , XSerializeEngine&                serEng);
0338 
0339     static void           loadObject(NameIdPool<DTDEntityDecl>**       tempObjToRead
0340                                    , int                               initSize
0341                                    , int                               initSize2
0342                                    , XSerializeEngine&                 serEng);
0343 
0344     static void           storeObject(NameIdPool<XMLNotationDecl>* const tempObjToWrite
0345                                     , XSerializeEngine&                  serEng);
0346 
0347     static void           loadObject(NameIdPool<XMLNotationDecl>**      tempObjToRead
0348                                    , int                                initSize
0349                                    , int                                initSize2
0350                                    , XSerializeEngine&                  serEng);
0351 
0352 private:
0353     // -----------------------------------------------------------------------
0354     //  Unimplemented constructors and operators
0355     // -----------------------------------------------------------------------
0356     ~XTemplateSerializer();
0357     XTemplateSerializer();
0358     XTemplateSerializer(const XTemplateSerializer&);
0359     XTemplateSerializer& operator=(const XTemplateSerializer&);
0360 
0361 };
0362 
0363 XERCES_CPP_NAMESPACE_END
0364 
0365 #endif