summaryrefslogtreecommitdiffstats
path: root/plugin
diff options
context:
space:
mode:
authorHanzei <16541325+hanzei@users.noreply.github.com>2018-10-15 15:19:36 +0200
committerSaturnino Abril <saturnino.abril@gmail.com>2018-10-15 21:19:36 +0800
commit0267a1f76e48ae833a4f951c82e69db59d39b314 (patch)
treed58512d7ebc6a21a28fa8569431a29a9c35ccc78 /plugin
parent5726d3919d194ea07b2fb0672d6bfa0e2c5edf9e (diff)
downloadchat-0267a1f76e48ae833a4f951c82e69db59d39b314.tar.gz
chat-0267a1f76e48ae833a4f951c82e69db59d39b314.tar.bz2
chat-0267a1f76e48ae833a4f951c82e69db59d39b314.zip
Add GetPostThread() to plugin API (#9652)
Diffstat (limited to 'plugin')
-rw-r--r--plugin/api.go3
-rw-r--r--plugin/client_rpc_generated.go29
-rw-r--r--plugin/plugintest/api.go25
3 files changed, 57 insertions, 0 deletions
diff --git a/plugin/api.go b/plugin/api.go
index 5a5727659..36012c23e 100644
--- a/plugin/api.go
+++ b/plugin/api.go
@@ -170,6 +170,9 @@ type API interface {
// DeletePost deletes a post.
DeletePost(postId string) *model.AppError
+ // GetPostThread gets a post with all the other posts in the same thread.
+ GetPostThread(postId string) (*model.PostList, *model.AppError)
+
// GetPost gets a post.
GetPost(postId string) (*model.Post, *model.AppError)
diff --git a/plugin/client_rpc_generated.go b/plugin/client_rpc_generated.go
index da41d9418..9da133449 100644
--- a/plugin/client_rpc_generated.go
+++ b/plugin/client_rpc_generated.go
@@ -1950,6 +1950,35 @@ func (s *apiRPCServer) DeletePost(args *Z_DeletePostArgs, returns *Z_DeletePostR
return nil
}
+type Z_GetPostThreadArgs struct {
+ A string
+}
+
+type Z_GetPostThreadReturns struct {
+ A *model.PostList
+ B *model.AppError
+}
+
+func (g *apiRPCClient) GetPostThread(postId string) (*model.PostList, *model.AppError) {
+ _args := &Z_GetPostThreadArgs{postId}
+ _returns := &Z_GetPostThreadReturns{}
+ if err := g.client.Call("Plugin.GetPostThread", _args, _returns); err != nil {
+ log.Printf("RPC call to GetPostThread API failed: %s", err.Error())
+ }
+ return _returns.A, _returns.B
+}
+
+func (s *apiRPCServer) GetPostThread(args *Z_GetPostThreadArgs, returns *Z_GetPostThreadReturns) error {
+ if hook, ok := s.impl.(interface {
+ GetPostThread(postId string) (*model.PostList, *model.AppError)
+ }); ok {
+ returns.A, returns.B = hook.GetPostThread(args.A)
+ } else {
+ return encodableError(fmt.Errorf("API GetPostThread called but not implemented."))
+ }
+ return nil
+}
+
type Z_GetPostArgs struct {
A string
}
diff --git a/plugin/plugintest/api.go b/plugin/plugintest/api.go
index c11446bda..c0302c1cf 100644
--- a/plugin/plugintest/api.go
+++ b/plugin/plugintest/api.go
@@ -599,6 +599,31 @@ func (_m *API) GetPost(postId string) (*model.Post, *model.AppError) {
return r0, r1
}
+// GetPostThread provides a mock function with given fields: postId
+func (_m *API) GetPostThread(postId string) (*model.PostList, *model.AppError) {
+ ret := _m.Called(postId)
+
+ var r0 *model.PostList
+ if rf, ok := ret.Get(0).(func(string) *model.PostList); ok {
+ r0 = rf(postId)
+ } else {
+ if ret.Get(0) != nil {
+ r0 = ret.Get(0).(*model.PostList)
+ }
+ }
+
+ var r1 *model.AppError
+ if rf, ok := ret.Get(1).(func(string) *model.AppError); ok {
+ r1 = rf(postId)
+ } else {
+ if ret.Get(1) != nil {
+ r1 = ret.Get(1).(*model.AppError)
+ }
+ }
+
+ return r0, r1
+}
+
// GetPostsForChannel provides a mock function with given fields: channelId, page, perPage
func (_m *API) GetPostsForChannel(channelId string, page int, perPage int) (*model.PostList, *model.AppError) {
ret := _m.Called(channelId, page, perPage)