Skip to content

Commit 930305f

Browse files
committed
Token retrieve should grab a new token if soon to expire
1 parent 4bbffba commit 930305f

File tree

2 files changed

+10
-3
lines changed

2 files changed

+10
-3
lines changed

src/OAuth/TokenStorage/TempFileTokenStorage.php

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,9 +34,15 @@ public function storeToken($key, IToken $token)
3434
public function retrieveToken($key, callable $retrieve = null)
3535
{
3636
$location = $this->_createFileName($key);
37+
$token = null;
3738
if(file_exists($location))
3839
{
39-
return unserialize(file_get_contents($location));
40+
$token = unserialize(file_get_contents($location));
41+
}
42+
43+
if($token instanceof IToken && $token->getExpiryTime() > time() + 60)
44+
{
45+
return $token;
4046
}
4147

4248
if($retrieve !== null)
@@ -45,11 +51,10 @@ public function retrieveToken($key, callable $retrieve = null)
4551
if($token instanceof IToken)
4652
{
4753
$this->storeToken($key, $token);
48-
return $token;
4954
}
5055
}
5156

52-
return null;
57+
return $token instanceof IToken ? $token : null;
5358
}
5459

5560
/**

src/OAuth/Tokens/IToken.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,6 @@ interface IToken
66
public function getType();
77

88
public function getToken();
9+
10+
public function getExpiryTime();
911
}

0 commit comments

Comments
 (0)