mirror of
https://github.com/mattermost/mattermost.git
synced 2025-02-25 18:55:24 -06:00
MM-56147 Add GetPreferenceForUser plugin API (#25704)
* MM-56147 Add GetPreferenceForUser plugin API * Change return type to non-pointer for preference consistency * Fix merge
This commit is contained in:
@@ -166,6 +166,13 @@ type API interface {
|
||||
// Minimum server version: 5.6
|
||||
GetUsersInTeam(teamID string, page int, perPage int) ([]*model.User, *model.AppError)
|
||||
|
||||
// GetPreferenceForUser gets a single preference for a user.
|
||||
//
|
||||
// @tag User
|
||||
// @tag Preference
|
||||
// Minimum server version: 9.5
|
||||
GetPreferenceForUser(userID, category, name string) (model.Preference, *model.AppError)
|
||||
|
||||
// GetPreferencesForUser gets a user's preferences.
|
||||
//
|
||||
// @tag User
|
||||
|
||||
@@ -195,6 +195,13 @@ func (api *apiTimerLayer) GetUsersInTeam(teamID string, page int, perPage int) (
|
||||
return _returnsA, _returnsB
|
||||
}
|
||||
|
||||
func (api *apiTimerLayer) GetPreferenceForUser(userID, category, name string) (model.Preference, *model.AppError) {
|
||||
startTime := timePkg.Now()
|
||||
_returnsA, _returnsB := api.apiImpl.GetPreferenceForUser(userID, category, name)
|
||||
api.recordTime(startTime, "GetPreferenceForUser", _returnsB == nil)
|
||||
return _returnsA, _returnsB
|
||||
}
|
||||
|
||||
func (api *apiTimerLayer) GetPreferencesForUser(userID string) ([]model.Preference, *model.AppError) {
|
||||
startTime := timePkg.Now()
|
||||
_returnsA, _returnsB := api.apiImpl.GetPreferencesForUser(userID)
|
||||
|
||||
@@ -1703,6 +1703,37 @@ func (s *apiRPCServer) GetUsersInTeam(args *Z_GetUsersInTeamArgs, returns *Z_Get
|
||||
return nil
|
||||
}
|
||||
|
||||
type Z_GetPreferenceForUserArgs struct {
|
||||
A string
|
||||
B string
|
||||
C string
|
||||
}
|
||||
|
||||
type Z_GetPreferenceForUserReturns struct {
|
||||
A model.Preference
|
||||
B *model.AppError
|
||||
}
|
||||
|
||||
func (g *apiRPCClient) GetPreferenceForUser(userID, category, name string) (model.Preference, *model.AppError) {
|
||||
_args := &Z_GetPreferenceForUserArgs{userID, category, name}
|
||||
_returns := &Z_GetPreferenceForUserReturns{}
|
||||
if err := g.client.Call("Plugin.GetPreferenceForUser", _args, _returns); err != nil {
|
||||
log.Printf("RPC call to GetPreferenceForUser API failed: %s", err.Error())
|
||||
}
|
||||
return _returns.A, _returns.B
|
||||
}
|
||||
|
||||
func (s *apiRPCServer) GetPreferenceForUser(args *Z_GetPreferenceForUserArgs, returns *Z_GetPreferenceForUserReturns) error {
|
||||
if hook, ok := s.impl.(interface {
|
||||
GetPreferenceForUser(userID, category, name string) (model.Preference, *model.AppError)
|
||||
}); ok {
|
||||
returns.A, returns.B = hook.GetPreferenceForUser(args.A, args.B, args.C)
|
||||
} else {
|
||||
return encodableError(fmt.Errorf("API GetPreferenceForUser called but not implemented."))
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
type Z_GetPreferencesForUserArgs struct {
|
||||
A string
|
||||
}
|
||||
|
||||
@@ -1942,6 +1942,32 @@ func (_m *API) GetPostsSince(channelId string, time int64) (*model.PostList, *mo
|
||||
return r0, r1
|
||||
}
|
||||
|
||||
// GetPreferenceForUser provides a mock function with given fields: userID, category, name
|
||||
func (_m *API) GetPreferenceForUser(userID string, category string, name string) (model.Preference, *model.AppError) {
|
||||
ret := _m.Called(userID, category, name)
|
||||
|
||||
var r0 model.Preference
|
||||
var r1 *model.AppError
|
||||
if rf, ok := ret.Get(0).(func(string, string, string) (model.Preference, *model.AppError)); ok {
|
||||
return rf(userID, category, name)
|
||||
}
|
||||
if rf, ok := ret.Get(0).(func(string, string, string) model.Preference); ok {
|
||||
r0 = rf(userID, category, name)
|
||||
} else {
|
||||
r0 = ret.Get(0).(model.Preference)
|
||||
}
|
||||
|
||||
if rf, ok := ret.Get(1).(func(string, string, string) *model.AppError); ok {
|
||||
r1 = rf(userID, category, name)
|
||||
} else {
|
||||
if ret.Get(1) != nil {
|
||||
r1 = ret.Get(1).(*model.AppError)
|
||||
}
|
||||
}
|
||||
|
||||
return r0, r1
|
||||
}
|
||||
|
||||
// GetPreferencesForUser provides a mock function with given fields: userID
|
||||
func (_m *API) GetPreferencesForUser(userID string) ([]model.Preference, *model.AppError) {
|
||||
ret := _m.Called(userID)
|
||||
|
||||
Reference in New Issue
Block a user