aboutsummaryrefslogtreecommitdiff
path: root/model/session.go
diff options
context:
space:
mode:
Diffstat (limited to 'model/session.go')
-rw-r--r--model/session.go23
1 files changed, 23 insertions, 0 deletions
diff --git a/model/session.go b/model/session.go
new file mode 100644
index 0000000..43628ee
--- /dev/null
+++ b/model/session.go
@@ -0,0 +1,23 @@
+package model
+
+import "errors"
+
+var (
+ ErrSessionNotFound = errors.New("session not found")
+)
+
+type Session struct {
+ ID string
+ InstanceURL string
+ AccessToken string
+}
+
+type SessionRepository interface {
+ Add(session Session) (err error)
+ Update(sessionID string, accessToken string) (err error)
+ Get(sessionID string) (session Session, err error)
+}
+
+func (s Session) IsLoggedIn() bool {
+ return len(s.AccessToken) > 0
+}