diff options
author | Christopher Speller <crspeller@gmail.com> | 2017-07-31 08:15:23 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-07-31 08:15:23 -0700 |
commit | 09b49c26ddfdb20ced61e7dfd4192e750ce40449 (patch) | |
tree | 1288d069cc8a199b8eb3b858935dffd377ee3d2d /store/layered_store_supplier.go | |
parent | 6f4e38d129ffaf469d40fc8596d3957ee94d21e9 (diff) | |
download | chat-09b49c26ddfdb20ced61e7dfd4192e750ce40449.tar.gz chat-09b49c26ddfdb20ced61e7dfd4192e750ce40449.tar.bz2 chat-09b49c26ddfdb20ced61e7dfd4192e750ce40449.zip |
PLT-5308 Caching layer part 2 (#6973)
* Adding Reaction store cache layer example
* Implementing reaction store in new caching system.
* Redis for reaction store
* Adding redis library
* Adding invalidation for DeleteAllWithEmojiName and other minor enhancements
Diffstat (limited to 'store/layered_store_supplier.go')
-rw-r--r-- | store/layered_store_supplier.go | 26 |
1 files changed, 15 insertions, 11 deletions
diff --git a/store/layered_store_supplier.go b/store/layered_store_supplier.go index 7b7da5710..22c90ab17 100644 --- a/store/layered_store_supplier.go +++ b/store/layered_store_supplier.go @@ -6,24 +6,28 @@ package store import "github.com/mattermost/platform/model" import "context" +type ResultHandler func(*StoreResult) + type LayeredStoreSupplierResult struct { - Result StoreResult - Err *model.AppError + StoreResult } -func NewSupplierResult() LayeredStoreSupplierResult { - return LayeredStoreSupplierResult{ - Result: StoreResult{}, - Err: nil, - } +func NewSupplierResult() *LayeredStoreSupplierResult { + return &LayeredStoreSupplierResult{} } type LayeredStoreSupplier interface { // + // Control + // + SetChainNext(LayeredStoreSupplier) + Next() LayeredStoreSupplier + + // // Reactions //), hints ...LayeredStoreHint) - ReactionSave(ctx context.Context, reaction *model.Reaction, hints ...LayeredStoreHint) LayeredStoreSupplierResult - ReactionDelete(ctx context.Context, reaction *model.Reaction, hints ...LayeredStoreHint) LayeredStoreSupplierResult - ReactionGetForPost(ctx context.Context, postId string, hints ...LayeredStoreHint) LayeredStoreSupplierResult - ReactionDeleteAllWithEmojiName(ctx context.Context, emojiName string, hints ...LayeredStoreHint) LayeredStoreSupplierResult + ReactionSave(ctx context.Context, reaction *model.Reaction, hints ...LayeredStoreHint) *LayeredStoreSupplierResult + ReactionDelete(ctx context.Context, reaction *model.Reaction, hints ...LayeredStoreHint) *LayeredStoreSupplierResult + ReactionGetForPost(ctx context.Context, postId string, hints ...LayeredStoreHint) *LayeredStoreSupplierResult + ReactionDeleteAllWithEmojiName(ctx context.Context, emojiName string, hints ...LayeredStoreHint) *LayeredStoreSupplierResult } |