00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036 #ifndef INCL_UPDATE_CONFIG
00037 #define INCL_UPDATE_CONFIG
00038
00040 #include "base/fscapi.h"
00041 #include "client/DMTClientConfig.h"
00042 #include "spdm/ManagementNode.h"
00043 #include "spdm/DMTreeFactory.h"
00044 #include "spdm/DMTree.h"
00045 #include "base/util/utils.h"
00046 #include "base/util/StringBuffer.h"
00047 #include "base/globalsdef.h"
00048
00049 BEGIN_NAMESPACE
00050
00051
00053 #define CONTEXT_UPDATER "/updater"
00054
00055
00056 class UpdaterConfig {
00057
00058 private:
00059
00060 StringBuffer version;
00061 StringBuffer currentVersion;
00062 StringBuffer recommended;
00063 StringBuffer activationDate;
00064 StringBuffer urlUpdate;
00065 StringBuffer urlComment;
00066 StringBuffer urlCheck;
00067 size_t size;
00068 StringBuffer lastCheckUpdate;
00069 uint32_t intervalCheckUpdateHttp;
00070 uint32_t intervalRemind;
00071 StringBuffer lastUpdated;
00072 StringBuffer skipped;
00073 StringBuffer later;
00074 StringBuffer now;
00075 StringBuffer updateType;
00076 StringBuffer nextRemindCheck;
00077
00078 StringBuffer applicationUri;
00079
00080 static StringBuffer versionPropertyName;
00081 static StringBuffer recommendedPropertyName;
00082 static StringBuffer activationDatePropertyName;
00083 static StringBuffer urlCheckPropertyName;
00084 static StringBuffer urlUpdatePropertyName;
00085 static StringBuffer urlCommentPropertyName;
00086 static StringBuffer sizePropertyName;
00087 static StringBuffer lastCheckUpdatePropertyName;
00088 static StringBuffer intervalCheckUpdateHttpPropertyName;
00089 static StringBuffer intervalRemindPropertyName;
00090 static StringBuffer lastUpdatedPropertyName;
00091 static StringBuffer skippedPropertyName;
00092 static StringBuffer laterPropertyName;
00093 static StringBuffer nowPropertyName;
00094 static StringBuffer updateTypePropertyName;
00095 static StringBuffer nextRemindCheckPropertyName;
00096
00097 public:
00098
00102 UpdaterConfig(const StringBuffer appUri);
00103
00107 ~UpdaterConfig();
00108
00112 bool read();
00113
00119 void save();
00120
00125 void createDefaultConfig();
00126
00127 uint32_t getIntervalRemind() const;
00128 uint32_t getIntervalCheckUpdateHttp() const;
00129
00130 const StringBuffer& getLastCheckUpdate() const;
00131 void setLastCheckUpdate(const StringBuffer& time);
00132
00133 void setVersion(const StringBuffer& version);
00134 const StringBuffer& getVersion() const;
00135
00136 void setCurrentVersion(const StringBuffer& v);
00137 const StringBuffer& getCurrentVersion() const;
00138
00139 void setRecommended(const StringBuffer& recommended);
00140 const StringBuffer& getRecommended() const;
00141
00142 void setUrlCheck(const StringBuffer& urlCheck);
00143 const StringBuffer& getUrlCheck() const;
00144
00145 void setSkipped(const StringBuffer& skipped);
00146 const StringBuffer& getSkipped() const;
00147
00148 void setLater(const StringBuffer& later);
00149 const StringBuffer& getLater() const;
00150
00151 void setNow(const StringBuffer& now);
00152 const StringBuffer& getNow() const;
00153
00154 void setUpdateType(const StringBuffer& type);
00155 const StringBuffer& getUpdateType() const;
00156
00157 void setUrlUpdate(const StringBuffer& urlUpdate);
00158 const StringBuffer& getUrlUpdate() const;
00159
00160 void setReleaseDate(const StringBuffer& releaseData);
00161 const StringBuffer& getReleaseDate() const;
00162
00163 void setNextRemindCheck(const StringBuffer& time);
00164 const StringBuffer& getNextRemindCheck() const;
00165
00166 void setSize(uint32_t size);
00167 void setUrlComment(const StringBuffer& comment);
00168 };
00169
00170 END_NAMESPACE
00171
00173 #endif