00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00056
00058
00059 #if !defined(MQTTCLIENTPERSISTENCE_H)
00060 #define MQTTCLIENTPERSISTENCE_H
00061
00063
00064
00069 #define MQTTCLIENT_PERSISTENCE_DEFAULT 0
00070
00074 #define MQTTCLIENT_PERSISTENCE_NONE 1
00075
00079 #define MQTTCLIENT_PERSISTENCE_USER 2
00080
00085 #define MQTTCLIENT_PERSISTENCE_ERROR -2
00086
00113 typedef int (*Persistence_open)(void** handle, const char* clientID, const char* serverURI, void* context);
00114
00123 typedef int (*Persistence_close)(void* handle);
00124
00140 typedef int (*Persistence_put)(void* handle, char* key, int bufcount, char* buffers[], int buflens[]);
00141
00156 typedef int (*Persistence_get)(void* handle, char* key, char** buffer, int* buflen);
00157
00169 typedef int (*Persistence_remove)(void* handle, char* key);
00170
00186 typedef int (*Persistence_keys)(void* handle, char*** keys, int* nkeys);
00187
00197 typedef int (*Persistence_clear)(void* handle);
00198
00208 typedef int (*Persistence_containskey)(void* handle, char* key);
00209
00215 typedef struct {
00219 void* context;
00223 Persistence_open popen;
00227 Persistence_close pclose;
00231 Persistence_put pput;
00235 Persistence_get pget;
00239 Persistence_remove premove;
00243 Persistence_keys pkeys;
00247 Persistence_clear pclear;
00251 Persistence_containskey pcontainskey;
00252 } MQTTClient_persistence;
00253
00254 #endif