Skip to content
This repository was archived by the owner on May 24, 2024. It is now read-only.

Commit e0b624c

Browse files
committed
Add input flag to GetToken
Signed-off-by: Ikoh Obaro <obaro.ikohpgs@stu.cu.edu.ng>
1 parent 7acde97 commit e0b624c

6 files changed

Lines changed: 43 additions & 22 deletions

File tree

affiliation/identity.go

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,11 @@ var (
1717
emailRegex = regexp.MustCompile("^[a-zA-Z0-9.!#$%&'*+\\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$")
1818
)
1919

20+
const (
21+
TRUE = true
22+
FALSE = false
23+
)
24+
2025
// Affiliations interface
2126
type Affiliations interface {
2227
AddIdentity(identity *Identity) bool
@@ -42,7 +47,7 @@ type SlackProvider interface {
4247

4348
// Auth0ClientProvider ...
4449
type Auth0ClientProvider interface {
45-
GetToken() (string, error)
50+
GetToken(input bool) (string, error)
4651
}
4752

4853
// Affiliation struct
@@ -81,7 +86,7 @@ func (a *Affiliation) AddIdentity(identity *Identity) bool {
8186
log.Println("AddIdentity: Identity is nil")
8287
return false
8388
}
84-
token, err := a.auth0ClientProvider.GetToken()
89+
token, err := a.auth0ClientProvider.GetToken(TRUE)
8590
if err != nil {
8691
log.Println(err)
8792
}
@@ -128,7 +133,7 @@ func (a *Affiliation) GetIdentity(uuid string) *Identity {
128133
log.Println("GetIdentity: uuid is empty")
129134
return nil
130135
}
131-
token, err := a.auth0ClientProvider.GetToken()
136+
token, err := a.auth0ClientProvider.GetToken(TRUE)
132137
if err != nil {
133138
log.Println(err)
134139
}
@@ -156,7 +161,7 @@ func (a *Affiliation) GetOrganizations(uuid, projectSlug string) *[]Enrollment {
156161
if uuid == "" || projectSlug == "" {
157162
return nil
158163
}
159-
token, err := a.auth0ClientProvider.GetToken()
164+
token, err := a.auth0ClientProvider.GetToken(TRUE)
160165
if err != nil {
161166
log.Println(err)
162167
}
@@ -201,7 +206,7 @@ func (a *Affiliation) GetProfile(uuid, projectSlug string) *ProfileResponse {
201206
if uuid == "" || projectSlug == "" {
202207
return nil
203208
}
204-
token, err := a.auth0ClientProvider.GetToken()
209+
token, err := a.auth0ClientProvider.GetToken(TRUE)
205210
if err != nil {
206211
log.Println(err)
207212
}
@@ -231,7 +236,7 @@ func (a *Affiliation) GetIdentityByUser(key string, value string) (*AffIdentity,
231236
nilKeyOrValueErr := "GetIdentityByUser: key or value is null"
232237
return nil, fmt.Errorf(nilKeyOrValueErr)
233238
}
234-
token, err := a.auth0ClientProvider.GetToken()
239+
token, err := a.auth0ClientProvider.GetToken(TRUE)
235240
if err != nil {
236241
log.Println(err)
237242
return nil, err
@@ -341,7 +346,7 @@ func (a *Affiliation) GetProfileByUsername(username string, projectSlug string)
341346
return nil, fmt.Errorf(nilKeyOrValueErr)
342347
}
343348

344-
token, err := a.auth0ClientProvider.GetToken()
349+
token, err := a.auth0ClientProvider.GetToken(FALSE)
345350
if err != nil {
346351
log.Println(err)
347352
return nil, err

auth0/token.go

Lines changed: 16 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,12 @@ import (
44
"encoding/json"
55
"errors"
66
"fmt"
7-
"github.com/LF-Engineering/dev-analytics-libraries/elastic"
87
"log"
98
"strings"
109
"time"
1110

11+
"github.com/LF-Engineering/dev-analytics-libraries/elastic"
12+
1213
"github.com/dgrijalva/jwt-go"
1314
)
1415

@@ -74,7 +75,7 @@ func NewAuth0Client(env,
7475
}
7576

7677
// GetToken ...
77-
func (a *ClientProvider) GetToken() (string, error) {
78+
func (a *ClientProvider) GetToken(input bool) (string, error) {
7879
authToken, err := a.getCachedToken()
7980
if err != nil {
8081
log.Println(err)
@@ -84,14 +85,21 @@ func (a *ClientProvider) GetToken() (string, error) {
8485
if authToken == "" {
8586
return authToken, errors.New("cached token is empty")
8687
}
88+
if input {
89+
// check token validity
90+
ok, _, err := a.isValid(authToken)
91+
if err != nil {
92+
log.Println(err)
93+
return "", err
94+
}
8795

88-
// check token validity
89-
ok, _, err := a.isValid(authToken)
90-
if ok {
91-
return authToken, nil
92-
}
96+
if ok {
97+
return authToken, nil
98+
}
9399

94-
return authToken, errors.New("cached token is not valid")
100+
return authToken, errors.New("cached token is not valid")
101+
}
102+
return authToken, nil
95103
}
96104

97105
func (a *ClientProvider) generateToken() (string, error) {

orgs/mocks/auth0_client_provider.go

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

orgs/organization.go

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,13 @@ import (
1515
"github.com/LF-Engineering/dev-analytics-libraries/http"
1616
)
1717

18+
const (
19+
TRUE = true
20+
)
21+
1822
// Auth0ClientProvider ...
1923
type Auth0ClientProvider interface {
20-
GetToken() (string, error)
24+
GetToken(input bool) (string, error)
2125
}
2226

2327
// HTTPClientProvider ...
@@ -62,7 +66,7 @@ func (o *Org) SearchOrganization(name string, pageSize string, offset string) (*
6266
log.Println("SearchOrganization: name param is empty")
6367
return nil, errors.New("SearchOrganization: name param is empty")
6468
}
65-
token, err := o.auth0Client.GetToken()
69+
token, err := o.auth0Client.GetToken(TRUE)
6670
if err != nil {
6771
log.Println(err)
6872
return nil, err
@@ -98,7 +102,7 @@ func (o *Org) LookupOrganization(name string) (*Organization, error) {
98102
log.Println("LookupOrganization: name param is empty")
99103
return nil, errors.New("LookupOrganization: name param is empty")
100104
}
101-
token, err := o.auth0Client.GetToken()
105+
token, err := o.auth0Client.GetToken(TRUE)
102106
if err != nil {
103107
log.Println(err)
104108
return nil, err

users/mocks/auth0_client_provider.go

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

users/user.go

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ import (
1717

1818
// Auth0ClientProvider ...
1919
type Auth0ClientProvider interface {
20-
GetToken() (string, error)
20+
GetToken(input bool) (string, error)
2121
}
2222

2323
// HTTPClientProvider ...
@@ -56,9 +56,13 @@ type Client struct {
5656
slackProvider SlackProvider
5757
}
5858

59+
const (
60+
TRUE = true
61+
)
62+
5963
// List ...
6064
func (u *Client) List(email string, pageSize string, offset string) (*ListResponse, error) {
61-
token, err := u.auth0Client.GetToken()
65+
token, err := u.auth0Client.GetToken(TRUE)
6266
if err != nil {
6367
log.Println("users.List", err)
6468
return nil, err

0 commit comments

Comments
 (0)