From e8b5ecd826956dc002192146360f2b7fdcf69b7e Mon Sep 17 00:00:00 2001 From: Domenico Rizzo Date: Mon, 26 Aug 2024 13:39:29 +0200 Subject: [PATCH] MM-57738 - Added GetPluginID function across multiple files (#27960) --- server/channels/app/plugin_api.go | 4 +++ server/public/plugin/api.go | 6 +++++ .../plugin/api_timer_layer_generated.go | 7 +++++ server/public/plugin/client_rpc_generated.go | 27 +++++++++++++++++++ server/public/plugin/plugintest/api.go | 18 +++++++++++++ 5 files changed, 62 insertions(+) diff --git a/server/channels/app/plugin_api.go b/server/channels/app/plugin_api.go index 8daf00e4e75..d287b4a7285 100644 --- a/server/channels/app/plugin_api.go +++ b/server/channels/app/plugin_api.go @@ -1343,3 +1343,7 @@ func (api *PluginAPI) InviteRemoteToChannel(channelID string, remoteID, userID s func (api *PluginAPI) UninviteRemoteFromChannel(channelID string, remoteID string) error { return api.app.UninviteRemoteFromChannel(channelID, remoteID) } + +func (api *PluginAPI) GetPluginID() string { + return api.id +} diff --git a/server/public/plugin/api.go b/server/public/plugin/api.go index bc540024d83..41e7f98ed4c 100644 --- a/server/public/plugin/api.go +++ b/server/public/plugin/api.go @@ -1306,6 +1306,12 @@ type API interface { // @tag User // Minimum server version: 9.8 UpdateUserRoles(userID, newRoles string) (*model.User, *model.AppError) + + // GetPluginID returns the plugin ID. + // + // @tag Plugin + // Minimum server version: 10.1 + GetPluginID() string } var handshake = plugin.HandshakeConfig{ diff --git a/server/public/plugin/api_timer_layer_generated.go b/server/public/plugin/api_timer_layer_generated.go index 2643adb8a09..8f85a0d6e3b 100644 --- a/server/public/plugin/api_timer_layer_generated.go +++ b/server/public/plugin/api_timer_layer_generated.go @@ -1378,3 +1378,10 @@ func (api *apiTimerLayer) UpdateUserRoles(userID, newRoles string) (*model.User, api.recordTime(startTime, "UpdateUserRoles", _returnsB == nil) return _returnsA, _returnsB } + +func (api *apiTimerLayer) GetPluginID() string { + startTime := timePkg.Now() + _returnsA := api.apiImpl.GetPluginID() + api.recordTime(startTime, "GetPluginID", true) + return _returnsA +} diff --git a/server/public/plugin/client_rpc_generated.go b/server/public/plugin/client_rpc_generated.go index a2fa59c9de2..1d31bd791fe 100644 --- a/server/public/plugin/client_rpc_generated.go +++ b/server/public/plugin/client_rpc_generated.go @@ -6630,3 +6630,30 @@ func (s *apiRPCServer) UpdateUserRoles(args *Z_UpdateUserRolesArgs, returns *Z_U } return nil } + +type Z_GetPluginIDArgs struct { +} + +type Z_GetPluginIDReturns struct { + A string +} + +func (g *apiRPCClient) GetPluginID() string { + _args := &Z_GetPluginIDArgs{} + _returns := &Z_GetPluginIDReturns{} + if err := g.client.Call("Plugin.GetPluginID", _args, _returns); err != nil { + log.Printf("RPC call to GetPluginID API failed: %s", err.Error()) + } + return _returns.A +} + +func (s *apiRPCServer) GetPluginID(args *Z_GetPluginIDArgs, returns *Z_GetPluginIDReturns) error { + if hook, ok := s.impl.(interface { + GetPluginID() string + }); ok { + returns.A = hook.GetPluginID() + } else { + return encodableError(fmt.Errorf("API GetPluginID called but not implemented.")) + } + return nil +} diff --git a/server/public/plugin/plugintest/api.go b/server/public/plugin/plugintest/api.go index 07f212fdae3..7417f16dd31 100644 --- a/server/public/plugin/plugintest/api.go +++ b/server/public/plugin/plugintest/api.go @@ -1990,6 +1990,24 @@ func (_m *API) GetPluginConfig() map[string]interface{} { return r0 } +// GetPluginID provides a mock function with given fields: +func (_m *API) GetPluginID() string { + ret := _m.Called() + + if len(ret) == 0 { + panic("no return value specified for GetPluginID") + } + + var r0 string + if rf, ok := ret.Get(0).(func() string); ok { + r0 = rf() + } else { + r0 = ret.Get(0).(string) + } + + return r0 +} + // GetPluginStatus provides a mock function with given fields: id func (_m *API) GetPluginStatus(id string) (*model.PluginStatus, *model.AppError) { ret := _m.Called(id)