summaryrefslogtreecommitdiffstats
path: root/plugin/api.go
diff options
context:
space:
mode:
Diffstat (limited to 'plugin/api.go')
-rw-r--r--plugin/api.go16
1 files changed, 15 insertions, 1 deletions
diff --git a/plugin/api.go b/plugin/api.go
index 8d27bc794..4bcfd112b 100644
--- a/plugin/api.go
+++ b/plugin/api.go
@@ -79,6 +79,20 @@ type API interface {
// GetPost gets a post.
GetPost(postId string) (*model.Post, *model.AppError)
- // Update post updates a post.
+ // UpdatePost updates a post.
UpdatePost(post *model.Post) (*model.Post, *model.AppError)
+
+ // KeyValueStore returns an object for accessing the persistent key value storage.
+ KeyValueStore() KeyValueStore
+}
+
+type KeyValueStore interface {
+ // Set will store a key-value pair, unique per plugin.
+ Set(key string, value []byte) *model.AppError
+
+ // Get will retrieve a value based on the key. Returns nil for non-existent keys.
+ Get(key string) ([]byte, *model.AppError)
+
+ // Delete will remove a key-value pair. Returns nil for non-existent keys.
+ Delete(key string) *model.AppError
}