From 75c2752ee6344e4b69e89783649d8aa501754dd0 Mon Sep 17 00:00:00 2001 From: Andrey Nering Date: Mon, 5 Dec 2016 19:03:09 -0200 Subject: [PATCH] Use own type (smallint on DB) and iota instead of VARCHAR(1) --- models/notification.go | 23 +++++++++++++++-------- 1 file changed, 15 insertions(+), 8 deletions(-) diff --git a/models/notification.go b/models/notification.go index 776b5aa5f..d5ebab78e 100644 --- a/models/notification.go +++ b/models/notification.go @@ -4,13 +4,20 @@ import ( "time" ) -const ( - NotificationStatusUnread = "U" - NotificationStatusRead = "R" +type ( + NotificationStatus uint8 + NotificationSource uint8 +) - NotificationSourceIssue = "I" - NotificationSourcePullRequest = "P" - NotificationSourceCommit = "C" +const ( + NotificationStatusUnread NotificationStatus = iota + 1 + NotificationStatusRead +) + +const ( + NotificationSourceIssue NotificationSource = iota + 1 + NotificationSourcePullRequest + NotificationSourceCommit ) type Notification struct { @@ -18,8 +25,8 @@ type Notification struct { UserID int64 `xorm:"INDEX NOT NULL"` RepoID int64 `xorm:"INDEX NOT NULL"` - Status string `xorm:"VARCHAR(1) INDEX NOT NULL"` - Source string `xorm:"VARCHAR(1) INDEX NOT NULL"` + Status NotificationStatus `xorm:"SMALLINT INDEX NOT NULL"` + Source NotificationSource `xorm:"SMALLINT INDEX NOT NULL"` IssueID int64 `xorm:"INDEX NOT NULL"` PullID int64 `xorm:"INDEX"`