From e45282deaa1d78d7ff3a125e9fd11e3fdc120b07 Mon Sep 17 00:00:00 2001 From: JoramWilander Date: Thu, 4 Feb 2016 13:00:03 -0500 Subject: Move license storage to database --- model/license.go | 26 ++++++++++++++++++++++++++ model/system.go | 1 + 2 files changed, 27 insertions(+) (limited to 'model') diff --git a/model/license.go b/model/license.go index a271b46b7..ea66fef0d 100644 --- a/model/license.go +++ b/model/license.go @@ -8,6 +8,12 @@ import ( "io" ) +type LicenseRecord struct { + Id string `json:"id"` + CreateAt int64 `json:"create_at"` + Bytes string `json:"-"` +} + type License struct { Id string `json:"id"` IssuedAt int64 `json:"issued_at"` @@ -83,3 +89,23 @@ func LicenseFromJson(data io.Reader) *License { return nil } } + +func (lr *LicenseRecord) IsValid() *AppError { + if len(lr.Id) != 26 { + return NewLocAppError("LicenseRecord.IsValid", "model.license_record.is_valid.id.app_error", nil, "") + } + + if lr.CreateAt == 0 { + return NewLocAppError("LicenseRecord.IsValid", "model.license_record.is_valid.create_at.app_error", nil, "") + } + + if len(lr.Bytes) == 0 || len(lr.Bytes) > 10000 { + return NewLocAppError("LicenseRecord.IsValid", "model.license_record.is_valid.create_at.app_error", nil, "") + } + + return nil +} + +func (lr *LicenseRecord) PreSave() { + lr.CreateAt = GetMillis() +} diff --git a/model/system.go b/model/system.go index 70db529d5..b387749f6 100644 --- a/model/system.go +++ b/model/system.go @@ -12,6 +12,7 @@ const ( SYSTEM_DIAGNOSTIC_ID = "DiagnosticId" SYSTEM_RAN_UNIT_TESTS = "RanUnitTests" SYSTEM_LAST_SECURITY_TIME = "LastSecurityTime" + SYSTEM_ACTIVE_LICENSE_ID = "ActiveLicenseId" ) type System struct { -- cgit v1.2.3-1-g7c22