天嵌二次封装库使用手册  V2.1.2
MQTTClientPersistence.h
浏览该文件的文档.
1 /*******************************************************************************
2  * Copyright (c) 2009, 2020 IBM Corp.
3  *
4  * All rights reserved. This program and the accompanying materials
5  * are made available under the terms of the Eclipse Public License v2.0
6  * and Eclipse Distribution License v1.0 which accompany this distribution.
7  *
8  * The Eclipse Public License is available at
9  * https://www.eclipse.org/legal/epl-2.0/
10  * and the Eclipse Distribution License is available at
11  * http://www.eclipse.org/org/documents/edl-v10.php.
12  *
13  * Contributors:
14  * Ian Craggs - initial API and implementation and/or initial documentation
15  *******************************************************************************/
16 
56 /*
58 */
59 #if !defined(MQTTCLIENTPERSISTENCE_H)
60 #define MQTTCLIENTPERSISTENCE_H
61 /*
63 */
64 
69 #define MQTTCLIENT_PERSISTENCE_DEFAULT 0
70 
74 #define MQTTCLIENT_PERSISTENCE_NONE 1
75 
79 #define MQTTCLIENT_PERSISTENCE_USER 2
80 
85 #define MQTTCLIENT_PERSISTENCE_ERROR -2
86 
113 typedef int (*Persistence_open)(void** handle, const char* clientID, const char* serverURI, void* context);
114 
123 typedef int (*Persistence_close)(void* handle);
124 
140 typedef int (*Persistence_put)(void* handle, char* key, int bufcount, char* buffers[], int buflens[]);
141 
156 typedef int (*Persistence_get)(void* handle, char* key, char** buffer, int* buflen);
157 
169 typedef int (*Persistence_remove)(void* handle, char* key);
170 
186 typedef int (*Persistence_keys)(void* handle, char*** keys, int* nkeys);
187 
197 typedef int (*Persistence_clear)(void* handle);
198 
208 typedef int (*Persistence_containskey)(void* handle, char* key);
209 
215 typedef struct {
219  void* context;
253 
254 
264 typedef int MQTTPersistence_beforeWrite(void* context, int bufcount, char* buffers[], int buflens[]);
265 
266 
275 typedef int MQTTPersistence_afterRead(void* context, char** buffer, int* buflen);
276 
277 #endif
Persistence_containskey pcontainskey
int(* Persistence_get)(void *handle, char *key, char **buffer, int *buflen)
Retrieve the specified data from the persistent store.
int(* Persistence_clear)(void *handle)
Clears the persistence store, so that it no longer contains any persisted data.
int(* Persistence_containskey)(void *handle, char *key)
Returns whether any data has been persisted using the specified key.
int(* Persistence_keys)(void *handle, char ***keys, int *nkeys)
Returns the keys in this persistent data store.
int(* Persistence_open)(void **handle, const char *clientID, const char *serverURI, void *context)
Initialize the persistent store.
int MQTTPersistence_afterRead(void *context, char **buffer, int *buflen)
int(* Persistence_close)(void *handle)
Close the persistent store referred to by the handle.
int(* Persistence_remove)(void *handle, char *key)
Remove the data for the specified key from the store.
int(* Persistence_put)(void *handle, char *key, int bufcount, char *buffers[], int buflens[])
Put the specified data into the persistent store.
A structure containing the function pointers to a persistence implementation and the context or state...
int MQTTPersistence_beforeWrite(void *context, int bufcount, char *buffers[], int buflens[])