From b953a2c81fa8a66a58a9c0ec185da48ce853e8d9 Mon Sep 17 00:00:00 2001 From: Guillaume Horel Date: Thu, 27 Dec 2018 07:57:48 -0500 Subject: WIP: not working --- store.go | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) (limited to 'store.go') diff --git a/store.go b/store.go index b744d88..55d808b 100644 --- a/store.go +++ b/store.go @@ -9,14 +9,20 @@ import ( type Session struct { Id string - UserId string + UserId int64 } -type SessionStore interface { - Get(id string) (*Session, bool) +type User struct { + Id int64 + UserName string } -type PgSessionStore struct { +type Store interface { + GetSession(id string) (*Session, bool) + GetUser(id int64) (*User, bool) +} + +type PgStore struct { *sql.DB cache map[string]*Session } @@ -31,5 +37,10 @@ func NewPgStore() *PgSessionStore { func (store *PgSessionStore) Get(id string) (*Session, bool) { s, ok := store.cache[id] + if !ok { + row := store.QueryRow("SELECT id, user_id FROM session WHERE id = ?", id) + var s Session + row.Scan(&s. + } return s, ok } -- cgit v1.2.3-70-g09d2