summaryrefslogtreecommitdiffstats
path: root/app
diff options
context:
space:
mode:
Diffstat (limited to 'app')
-rw-r--r--app/app.go21
-rw-r--r--app/data_retention.go18
2 files changed, 33 insertions, 6 deletions
diff --git a/app/app.go b/app/app.go
index 508c652c1..7974ab44f 100644
--- a/app/app.go
+++ b/app/app.go
@@ -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)
diff --git a/app/data_retention.go b/app/data_retention.go
new file mode 100644
index 000000000..b931ca8b1
--- /dev/null
+++ b/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()
+}