diff options
author | George Goldberg <george@gberg.me> | 2017-10-02 12:43:21 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-10-02 12:43:21 +0100 |
commit | 76bd1bb212177824379c485c553e54530a854009 (patch) | |
tree | f4b3c41ff3ff72c96ab58e944e4254bfca4fd8be /model/data_retention_policy.go | |
parent | 9bc7af0c5704bbf73f8240b4569d5ea215352e39 (diff) | |
download | chat-76bd1bb212177824379c485c553e54530a854009.tar.gz chat-76bd1bb212177824379c485c553e54530a854009.tar.bz2 chat-76bd1bb212177824379c485c553e54530a854009.zip |
PLT-7705: API to get data retention policy. (#7539)
* PLT-7705: API to get data retention policy.
* Fix review comments.
Diffstat (limited to 'model/data_retention_policy.go')
-rw-r--r-- | model/data_retention_policy.go | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/model/data_retention_policy.go b/model/data_retention_policy.go new file mode 100644 index 000000000..7284477e5 --- /dev/null +++ b/model/data_retention_policy.go @@ -0,0 +1,36 @@ +// Copyright (c) 2017-present Mattermost, Inc. All Rights Reserved. +// See License.txt for license information. + +package model + +import ( + "encoding/json" + "io" +) + +type DataRetentionPolicy struct { + MessageDeletionEnabled bool `json:"message_deletion_enabled"` + FileDeletionEnabled bool `json:"file_deletion_enabled"` + MessageRetentionCutoff int64 `json:"message_retention_cutoff"` + FileRetentionCutoff int64 `json:"file_retention_cutoff"` +} + +func (me *DataRetentionPolicy) ToJson() string { + b, err := json.Marshal(me) + if err != nil { + return "" + } else { + return string(b) + } +} + +func DataRetentionPolicyFromJson(data io.Reader) *DataRetentionPolicy { + decoder := json.NewDecoder(data) + var me DataRetentionPolicy + err := decoder.Decode(&me) + if err == nil { + return &me + } else { + return nil + } +} |