auth

Paddy 2014-09-01 Parent:9fc5fd8196b4 Child:88523dab00a5

29:5bf0a5fd1d01 Go to Latest

auth/client.go

Implement GrantStore for Memstore. Fix bug in GrantStore that asks for a UUID when it really wants a string. Implement GrantStore interface in Memstore, including unit tests for successful (i.e., works-as-intended) scenarios.

History
paddy@6 1 package auth
paddy@0 2
paddy@0 3 import (
paddy@0 4 "secondbit.org/uuid"
paddy@0 5 )
paddy@0 6
paddy@25 7 // Client represents a client that grants access
paddy@25 8 // to the auth server, exchanging grants for tokens,
paddy@25 9 // and tokens for access.
paddy@0 10 type Client struct {
paddy@0 11 ID uuid.ID
paddy@0 12 Secret string
paddy@0 13 RedirectURI string
paddy@0 14 OwnerID uuid.ID
paddy@0 15 Name string
paddy@0 16 Logo string
paddy@25 17 Website string
paddy@0 18 }
paddy@0 19
paddy@25 20 // ClientStore abstracts the storage interface for
paddy@25 21 // storing and retrieving Clients.
paddy@25 22 type ClientStore interface {
paddy@25 23 GetClient(id uuid.ID) (Client, error)
paddy@25 24 SaveClient(client Client) error
paddy@25 25 UpdateClient(id uuid.ID, secret, redirectURI *string, ownerID uuid.ID, name, logo, website *string) error
paddy@25 26 DeleteClient(id uuid.ID) error
paddy@25 27 ListClientsByOwner(ownerID uuid.ID, page, num int) ([]Client, error)
paddy@0 28 }