auth

Paddy 2014-08-16 Parent:fc5df8e68c7b Child:9fe684b33b3d

18:c4351b08c867 Go to Latest

auth/storage.go

Remove info.go. Let's wait until we need it to implement stuff outside the spec, we already have plenty of extra-spec-ular stuff that we know we need.

History
paddy@6 1 package auth
paddy@0 2
paddy@1 3 import "secondbit.org/uuid"
paddy@0 4
paddy@1 5 type ClientStore interface {
paddy@1 6 GetClient(id uuid.ID) (Client, error)
paddy@1 7 CreateClient(name, logo, redirectURI string, owner uuid.ID) (Client, error)
paddy@12 8 UpdateClient(client uuid.ID, name, logo, redirectURI *string) error
paddy@15 9 RemoveClient(id uuid.ID) error
paddy@12 10 ListClients(id uuid.ID, page, num int) ([]Client, error)
paddy@1 11 }
paddy@0 12
paddy@1 13 type TokenStore interface {
paddy@1 14 SaveAuthorization(AuthorizeData) error
paddy@1 15 GetAuthorization(code string) (AuthorizeData, error)
paddy@1 16 RemoveAuthorization(code string) error
paddy@0 17
paddy@1 18 SaveAccess(AccessData) error
paddy@1 19 GetAccess(token string) (AccessData, error)
paddy@0 20 RemoveAccess(token string) error
paddy@0 21
paddy@1 22 GetRefresh(token string) (AccessData, error)
paddy@0 23 RemoveRefresh(token string) error
paddy@0 24 }
paddy@1 25
paddy@1 26 type ProfileStore interface {
paddy@1 27 GetProfile(username, password string) (uuid.ID, error)
paddy@1 28 }