8 type sessionRepository struct {
12 func NewSessionRepository(db *kv.Database) *sessionRepository {
13 return &sessionRepository{
18 func (repo *sessionRepository) Add(s model.Session) (err error) {
19 err = repo.db.Set(s.ID, s.Marshal())
23 func (repo *sessionRepository) Update(id string, accessToken string) (err error) {
24 data, err := repo.db.Get(id)
30 err = s.Unmarshal(id, data)
35 s.AccessToken = accessToken
37 return repo.db.Set(id, s.Marshal())
40 func (repo *sessionRepository) Get(id string) (s model.Session, err error) {
41 data, err := repo.db.Get(id)
43 err = model.ErrSessionNotFound
47 err = s.Unmarshal(id, data)