00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef INCL_ABSTRACT_COMMAND
00022 #define INCL_ABSTRACT_COMMAND
00023
00025 #include "base/fscapi.h"
00026 #include "base/util/ArrayElement.h"
00027 #include "syncml/core/CmdID.h"
00028 #include "syncml/core/Meta.h"
00029 #include "syncml/core/Cred.h"
00030
00031
00032
00038 class AbstractCommand : public ArrayElement {
00039
00040
00041 protected:
00042
00043 CmdID* cmdID ;
00044 BOOL noResp;
00045 Meta* meta;
00046 Cred* credential;
00047
00048 void initialize();
00049
00050
00051 public:
00052 AbstractCommand();
00053
00054 AbstractCommand(CmdID* cmdID, BOOL noResp);
00055
00062 AbstractCommand(CmdID* cmdID);
00063
00072 AbstractCommand(CmdID* cmdID, BOOL noResp, Meta* meta);
00073
00074 void set(CmdID* cmdID, BOOL noResp);
00075
00076 virtual ~AbstractCommand();
00077
00083 CmdID* getCmdID();
00084
00091 void setCmdID(CmdID* cmdID);
00092
00098 BOOL isNoResp();
00099
00100 BOOL getNoResp();
00101
00108 void setNoResp(BOOL noResp);
00109
00115 Cred* getCred();
00116
00123 void setCred(Cred* cred);
00124
00130 Meta* getMeta();
00131
00138 void setMeta(Meta* meta);
00139
00145 virtual const char* getName() = 0;
00146
00147 virtual ArrayElement* clone() = 0;
00148
00149 };
00150
00152 #endif