Main Page   Class Hierarchy   Compound List   File List   Compound Members   File Members   Examples  

TypeMapping.h

00001 /*
00002  *   Copyright 2003-2004 The Apache Software Foundation.
00003  *
00004  *   Licensed under the Apache License, Version 2.0 (the "License");
00005  *   you may not use this file except in compliance with the License.
00006  *   You may obtain a copy of the License at
00007  *
00008  *       http://www.apache.org/licenses/LICENSE-2.0
00009  *
00010  *   Unless required by applicable law or agreed to in writing, software
00011  *   distributed under the License is distributed on an "AS IS" BASIS,
00012  *   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00013  *   See the License for the specific language governing permissions and
00014  *   limitations under the License.
00015  */
00016 
00017 
00018 #ifdef WIN32
00019 #pragma warning (disable : 4786)
00020 #endif
00021 
00022 #if !defined(_TYPEMAPPING_H____OF_AXIS_INCLUDED_)
00023 #define _TYPEMAPPING_H____OF_AXIS_INCLUDED_
00024 
00025 #include "GDefine.h"
00026 
00027 typedef enum XSDTYPETag 
00028 { XSD_UNKNOWN=1, XSD_INT, XSD_FLOAT, XSD_STRING, XSD_LONG, XSD_SHORT, \
00029                 XSD_BYTE, XSD_UNSIGNEDLONG, \
00030                 XSD_BOOLEAN, XSD_UNSIGNEDINT, XSD_UNSIGNEDSHORT, \
00031                 XSD_UNSIGNEDBYTE, \
00032                 XSD_DOUBLE, XSD_DECIMAL, XSD_DURATION, \
00033                 XSD_DATETIME, XSD_TIME, XSD_DATE, \
00034                 XSD_YEARMONTH, XSD_YEAR, XSD_MONTHDAY, XSD_DAY, \
00035                 XSD_MONTH, XSD_HEXBINARY, \
00036                 XSD_BASE64BINARY, XSD_ANYURI, XSD_QNAME, XSD_NOTATION, \
00037                 XSD_INTEGER, \
00038                 XSD_ARRAY, USER_TYPE, ACCESSOR, XSD_NMTOKEN, XSD_ANY
00039 } XSDTYPE;
00040 
00041 #ifdef __cplusplus
00042 
00043 #include <map>
00044 #include <string>
00045 
00046 using namespace std;
00047 
00056 class TypeMapping  
00057 {
00058 public:
00059     static XSDTYPE map(const AxisXMLCh* sType);
00060     static void initialize();
00061 
00062 #if (defined(AIX) || (defined(_MSC_VER) && _MSC_VER >= 1300))
00063     static std::map<AxisXMLString, XSDTYPE> m_sTypeMap;
00064 #else
00065     static std::map<const AxisXMLString, XSDTYPE> m_sTypeMap;
00066 #endif
00067     static volatile bool m_bInit;
00068     TypeMapping();
00069     virtual ~TypeMapping();
00070 
00071 };
00072 
00073 #endif
00074 
00075 #endif 
00076 
00077 

Generated on Tue Jun 29 09:27:57 2004 for AxisC++ by doxygen1.2.18