PLT-7705: API to get data retention policy. (#7539)

* PLT-7705: API to get data retention policy.

* Fix review comments.
Этот коммит содержится в:
George Goldberg
2017-10-02 12:43:21 +01:00
коммит произвёл GitHub
родитель 9bc7af0c57
Коммит 76bd1bb212
13 изменённых файлов: 157 добавлений и 12 удалений

Просмотреть файл

@@ -34,6 +34,7 @@ type App struct {
Brand einterfaces.BrandInterface
Cluster einterfaces.ClusterInterface
Compliance einterfaces.ComplianceInterface
DataRetention einterfaces.DataRetentionInterface
Elasticsearch einterfaces.ElasticsearchInterface
Ldap einterfaces.LdapInterface
Metrics einterfaces.MetricsInterface
@@ -103,10 +104,16 @@ func RegisterComplianceInterface(f func(*App) einterfaces.ComplianceInterface) {
complianceInterface = f
}
var jobsDataRetentionInterface func(*App) ejobs.DataRetentionInterface
var dataRetentionInterface func(*App) einterfaces.DataRetentionInterface
func RegisterJobsDataRetentionInterface(f func(*App) ejobs.DataRetentionInterface) {
jobsDataRetentionInterface = f
func RegisterDataRetentionInterface(f func(*App) einterfaces.DataRetentionInterface) {
dataRetentionInterface = f
}
var jobsDataRetentionJobInterface func(*App) ejobs.DataRetentionJobInterface
func RegisterJobsDataRetentionJobInterface(f func(*App) ejobs.DataRetentionJobInterface) {
jobsDataRetentionJobInterface = f
}
var jobsElasticsearchAggregatorInterface func(*App) ejobs.ElasticsearchAggregatorInterface
@@ -183,9 +190,11 @@ func (a *App) initEnterprise() {
a.Saml.ConfigureSP()
})
}
if jobsDataRetentionInterface != nil {
a.Jobs.DataRetention = jobsDataRetentionInterface(a)
if dataRetentionInterface != nil {
a.DataRetention = dataRetentionInterface(a)
}
if jobsDataRetentionJobInterface != nil {
a.Jobs.DataRetentionJob = jobsDataRetentionJobInterface(a)
}
if jobsElasticsearchAggregatorInterface != nil {
a.Jobs.ElasticsearchAggregator = jobsElasticsearchAggregatorInterface(a)

18
app/data_retention.go Обычный файл
Просмотреть файл

@@ -0,0 +1,18 @@
// Copyright (c) 2017-present Mattermost, Inc. All Rights Reserved.
// See License.txt for license information.
package app
import (
"net/http"
"github.com/mattermost/mattermost-server/model"
)
func (a *App) GetDataRetentionPolicy() (*model.DataRetentionPolicy, *model.AppError) {
if a.DataRetention == nil {
return nil, model.NewAppError("App.GetDataRetentionPolicy", "ent.data_retention.generic.license.error", nil, "", http.StatusNotImplemented)
}
return a.DataRetention.GetPolicy()
}