summaryrefslogtreecommitdiffstats
path: root/plugin/api.go
diff options
context:
space:
mode:
authorDaniel Schalla <daniel@schalla.me>2018-10-10 19:55:12 +0200
committerChristopher Speller <crspeller@gmail.com>2018-10-10 10:55:12 -0700
commitc36e85c9126b921cf00e578ac70c1f1ee0153abd (patch)
tree86bfea62ec6a1ce0edc548db4a87851c41e30b88 /plugin/api.go
parentbd04d7f75698c7b68434199208dc469021b823c2 (diff)
downloadchat-c36e85c9126b921cf00e578ac70c1f1ee0153abd.tar.gz
chat-c36e85c9126b921cf00e578ac70c1f1ee0153abd.tar.bz2
chat-c36e85c9126b921cf00e578ac70c1f1ee0153abd.zip
DeleteAll for KV (#9431)
Expire K/V Values Regenerate Code pathfix Update Expiry on Update Check for Exit Signal gofmt Rewrote Go Routine Remove tempoarily cleanup loop fix expiretime TEST: Expired Watchdog as GoRoutine Check if Srv is nil Use Scheduler/Worker for Expired Key CleanUp add license fix scheduler job type; DoJob Restructuring Remove unused imports and constants move db migration from 5.4 to 5.5
Diffstat (limited to 'plugin/api.go')
-rw-r--r--plugin/api.go6
1 files changed, 6 insertions, 0 deletions
diff --git a/plugin/api.go b/plugin/api.go
index 308067228..5a5727659 100644
--- a/plugin/api.go
+++ b/plugin/api.go
@@ -196,12 +196,18 @@ type API interface {
// KVSet will store a key-value pair, unique per plugin.
KVSet(key string, value []byte) *model.AppError
+ // KVSet will store a key-value pair, unique per plugin with an expiry time
+ KVSetWithExpiry(key string, value []byte, expireInSeconds int64) *model.AppError
+
// KVGet will retrieve a value based on the key. Returns nil for non-existent keys.
KVGet(key string) ([]byte, *model.AppError)
// KVDelete will remove a key-value pair. Returns nil for non-existent keys.
KVDelete(key string) *model.AppError
+ // KVDeleteAll will remove all key-value pairs for a plugin.
+ KVDeleteAll() *model.AppError
+
// KVList will list all keys for a plugin.
KVList(page, perPage int) ([]string, *model.AppError)