auth

Paddy 2015-01-19 Parent:dcd2125c4f57 Child:23c1a07c8a61

127:b714af0578dc Go to Latest

auth/token.go

Drop RemoveToken, test RevokeToken for refresh tokens. The RemoveToken function was never actually used, and there's no reason to use it. Tokens are revoked, not removed. So I deleted it. And while I was updating the tests, I finally inserted the test for revoking a refresh token, mainly to get rid of that damn TODO.

History
     1.1 --- a/token.go	Mon Jan 19 04:24:22 2015 -0500
     1.2 +++ b/token.go	Mon Jan 19 06:01:51 2015 -0500
     1.3 @@ -53,7 +53,6 @@
     1.4  type tokenStore interface {
     1.5  	getToken(token string, refresh bool) (Token, error)
     1.6  	saveToken(token Token) error
     1.7 -	removeToken(token string) error
     1.8  	revokeToken(token string, refresh bool) error
     1.9  	getTokensByProfileID(profileID uuid.ID, num, offset int) ([]Token, error)
    1.10  }
    1.11 @@ -94,30 +93,6 @@
    1.12  	return nil
    1.13  }
    1.14  
    1.15 -func (m *memstore) removeToken(token string) error {
    1.16 -	m.tokenLock.Lock()
    1.17 -	defer m.tokenLock.Unlock()
    1.18 -	t, ok := m.tokens[token]
    1.19 -	if !ok {
    1.20 -		return ErrTokenNotFound
    1.21 -	}
    1.22 -	delete(m.tokens, token)
    1.23 -	if t.RefreshToken != "" {
    1.24 -		delete(m.refreshTokenLookup, t.RefreshToken)
    1.25 -	}
    1.26 -	pos := -1
    1.27 -	for p, item := range m.profileTokenLookup[t.ProfileID.String()] {
    1.28 -		if item == token {
    1.29 -			pos = p
    1.30 -			break
    1.31 -		}
    1.32 -	}
    1.33 -	if pos >= 0 {
    1.34 -		m.profileTokenLookup[t.ProfileID.String()] = append(m.profileTokenLookup[t.ProfileID.String()][:pos], m.profileTokenLookup[t.ProfileID.String()][pos+1:]...)
    1.35 -	}
    1.36 -	return nil
    1.37 -}
    1.38 -
    1.39  func (m *memstore) revokeToken(token string, refresh bool) error {
    1.40  	if refresh {
    1.41  		t, err := m.lookupTokenByRefresh(token)