PLT-7705: API to get data retention policy. (#7539)
* PLT-7705: API to get data retention policy. * Fix review comments.
Этот коммит содержится в:
коммит произвёл
GitHub
родитель
9bc7af0c57
Коммит
76bd1bb212
@@ -80,6 +80,8 @@ type Routes struct {
|
||||
|
||||
Elasticsearch *mux.Router // 'api/v4/elasticsearch'
|
||||
|
||||
DataRetention *mux.Router // 'api/v4/data_retention'
|
||||
|
||||
Brand *mux.Router // 'api/v4/brand'
|
||||
|
||||
System *mux.Router // 'api/v4/system'
|
||||
@@ -185,6 +187,7 @@ func Init(a *app.App, root *mux.Router, full bool) *API {
|
||||
api.BaseRoutes.Reactions = api.BaseRoutes.ApiRoot.PathPrefix("/reactions").Subrouter()
|
||||
api.BaseRoutes.Jobs = api.BaseRoutes.ApiRoot.PathPrefix("/jobs").Subrouter()
|
||||
api.BaseRoutes.Elasticsearch = api.BaseRoutes.ApiRoot.PathPrefix("/elasticsearch").Subrouter()
|
||||
api.BaseRoutes.DataRetention = api.BaseRoutes.ApiRoot.PathPrefix("/data_retention").Subrouter()
|
||||
|
||||
api.BaseRoutes.Emojis = api.BaseRoutes.ApiRoot.PathPrefix("/emoji").Subrouter()
|
||||
api.BaseRoutes.Emoji = api.BaseRoutes.Emojis.PathPrefix("/{emoji_id:[A-Za-z0-9]+}").Subrouter()
|
||||
@@ -208,6 +211,7 @@ func Init(a *app.App, root *mux.Router, full bool) *API {
|
||||
api.InitCluster()
|
||||
api.InitLdap()
|
||||
api.InitElasticsearch()
|
||||
api.InitDataRetention()
|
||||
api.InitBrand()
|
||||
api.InitJob()
|
||||
api.InitCommand()
|
||||
|
||||
30
api4/data_retention.go
Обычный файл
30
api4/data_retention.go
Обычный файл
@@ -0,0 +1,30 @@
|
||||
// Copyright (c) 2017-present Mattermost, Inc. All Rights Reserved.
|
||||
// See License.txt for license information.
|
||||
|
||||
package api4
|
||||
|
||||
import (
|
||||
"net/http"
|
||||
|
||||
l4g "github.com/alecthomas/log4go"
|
||||
|
||||
"github.com/mattermost/mattermost-server/utils"
|
||||
)
|
||||
|
||||
func (api *API) InitDataRetention() {
|
||||
l4g.Debug(utils.T("api.data_retention.init.debug"))
|
||||
|
||||
api.BaseRoutes.DataRetention.Handle("/policy", api.ApiSessionRequired(getPolicy)).Methods("GET")
|
||||
}
|
||||
|
||||
func getPolicy(c *Context, w http.ResponseWriter, r *http.Request) {
|
||||
|
||||
// No permission check required.
|
||||
|
||||
if policy, err := c.App.GetDataRetentionPolicy(); err != nil {
|
||||
c.Err = err
|
||||
return
|
||||
} else {
|
||||
w.Write([]byte(policy.ToJson()))
|
||||
}
|
||||
}
|
||||
16
api4/data_retention_test.go
Обычный файл
16
api4/data_retention_test.go
Обычный файл
@@ -0,0 +1,16 @@
|
||||
// Copyright (c) 2017-present Mattermost, Inc. All Rights Reserved.
|
||||
// See License.txt for license information.
|
||||
|
||||
package api4
|
||||
|
||||
import (
|
||||
"testing"
|
||||
)
|
||||
|
||||
func TestDataRetentionGetPolicy(t *testing.T) {
|
||||
th := Setup().InitBasic()
|
||||
defer TearDown()
|
||||
|
||||
_, resp := th.Client.GetDataRetentionPolicy()
|
||||
CheckNotImplementedStatus(t, resp)
|
||||
}
|
||||
Ссылка в новой задаче
Block a user