00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef INCL_PARSER
00021 #define INCL_PARSER
00022
00024 #include "base/fscapi.h"
00025 #include "base/util/utils.h"
00026 #include "base/util/XMLProcessor.h"
00027 #include "base/util/ArrayList.h"
00028 #include "syncml/core/ObjectDel.h"
00029
00030 class Parser {
00031
00032
00033 public:
00034 static SyncML* getSyncML (const char* xml);
00035 static SyncHdr* getSyncHdr (const char* xml);
00036 static SyncBody* getSyncBody (const char* xml);
00037 static SessionID* getSessionID (const char* xml);
00038 static VerDTD* getVerDTD (const char* xml);
00039 static VerProto* getVerProto (const char* xml);
00040 static Target* getTarget (const char* xml);
00041 static Source* getSource (const char* xml);
00042 static Cred* getCred (const char* xml);
00043 static Anchor* getAnchor (const char* xml);
00044 static NextNonce* getNextNonce (const char* xml);
00045 static Mem* getMem (const char* xml);
00046 static ArrayList* getEMI (const char* xml);
00047 static Meta* getMeta (const char* xml);
00048 static MetInf* getMetInf (const char* xml);
00049 static Authentication* getAuthentication (const char* xml);
00050 static ArrayList* getCommands (const char* xml);
00051 static Alert* getAlert (const char* xml);
00052 static BOOL getFinalMsg (const char* xml);
00053 static int getDataCode (const char* xml);
00054 static Data* getData (const char* xml);
00055 static BOOL getNoResp (const char* xml);
00056 static BOOL getNoResults (const char* xml);
00057 static CmdID* getCmdID (const char* xml);
00058 static Item* getItem (const char* xml, const char* command = NULL);
00059 static ArrayList* getItems (const char* xml, const char* command = NULL);
00060 static ComplexData* getComplexData (const char* xml, const char* command = NULL);
00061 static BOOL getMoreData (const char* xml);
00062 static Status* getStatus (const char* xml);
00063 static DevInf* getDevInf (const char* xml);
00064 static TargetRef* getTargetRef (const char* xml);
00065 static SourceRef* getSourceRef (const char* xml);
00066 static ArrayList* getTargetRefs (const char* xml);
00067 static ArrayList* getSourceRefs (const char* xml);
00068 static Chal* getChal (const char* xml);
00069 static Map* getMap (const char* xml);
00070 static MapItem* getMapItem (const char* xml);
00071 static ArrayList* getMapItems (const char* xml);
00072 static Add* getAdd (const char* xml);
00073 static Sync* getSync (const char* xml);
00074 static Replace* getReplace (const char* xml);
00075 static Delete* getDelete (const char* xml);
00076 static Copy* getCopy (const char* xml);
00077 static Sequence* getSequence (const char* xml);
00078 static Atomic* getAtomic (const char* xml);
00079 static ArrayList* getAdds (const char* xml, const char* except);
00080 static ArrayList* getReplaces (const char* xml, const char* except);
00081 static ArrayList* getDels (const char* xml, const char* except);
00082 static ArrayList* getCopies (const char* xml, const char* except);
00083 static ArrayList* getCommonCommandList(const char* xml, const char* except);
00084 static Get* getGet (const char* xml);
00085 static Put* getPut (const char* xml);
00086 static DataStore* getDataStore (const char* xml);
00087 static ContentTypeInfo* getContentTypeInfo (const char* xml);
00088 static DSMem* getDSMem (const char* xml);
00089 static SyncCap* getSyncCap (const char* xml);
00090 static SyncType* getSyncType (const char* xml);
00091 static CTCap* getCTCap (const char* xml);
00092 static Ext* getExt (const char* xml);
00093 static Results* getResult (const char* xml);
00094 static Exec* getExec (const char* xml);
00095 static Search* getSearch (const char* xml);
00096 static ArrayList* getSources (const char* xml);
00097 };
00098
00100 #endif
00101
00102
00103
00104