mirror of
https://github.com/elyby/oauth2-server.git
synced 2024-12-23 05:29:52 +05:30
Refactored constructor to set defaults, added new setter methods for default token TTL and default token type
This commit is contained in:
parent
8e9b12fefd
commit
2e3c6b4f3a
@ -1,4 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace League\OAuth2\Server;
|
namespace League\OAuth2\Server;
|
||||||
|
|
||||||
use DateInterval;
|
use DateInterval;
|
||||||
@ -40,25 +41,44 @@ class Server extends AbstractServer
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* New server instance
|
* New server instance
|
||||||
*
|
|
||||||
* @param TokenTypeInterface $defaultTokenType
|
|
||||||
* @param DateInterval $defaultAccessTokenTTL
|
|
||||||
*/
|
*/
|
||||||
public function __construct(
|
public function __construct() {
|
||||||
TokenTypeInterface $defaultTokenType = null,
|
$this->defaultTokenType = new BearerTokenType();
|
||||||
DateInterval $defaultAccessTokenTTL = null
|
$this->defaultAccessTokenTTL = new DateInterval('PT01H'); // default of 1 hour
|
||||||
) {
|
|
||||||
$this->defaultResponseType = ($defaultTokenType instanceof TokenTypeInterface)
|
|
||||||
? $defaultTokenType
|
|
||||||
: new BearerTokenType();
|
|
||||||
|
|
||||||
$this->defaultAccessTokenTTL = ($defaultAccessTokenTTL instanceof DateInterval)
|
|
||||||
? $defaultAccessTokenTTL
|
|
||||||
: new DateInterval('PT01H'); // default of 1 hour
|
|
||||||
|
|
||||||
parent::__construct();
|
parent::__construct();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set the default token type that grants will return
|
||||||
|
*
|
||||||
|
* @param TokenTypeInterface $defaultTokenType
|
||||||
|
*/
|
||||||
|
public function setDefaultTokenType(TokenTypeInterface $defaultTokenType)
|
||||||
|
{
|
||||||
|
$this->defaultTokenType = $defaultTokenType;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set the delimiter used to separate scopes in a request
|
||||||
|
*
|
||||||
|
* @param string $scopeDelimiter
|
||||||
|
*/
|
||||||
|
public function setScopeDelimiter($scopeDelimiter)
|
||||||
|
{
|
||||||
|
$this->scopeDelimiter = $scopeDelimiter;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set the default TTL of access tokens
|
||||||
|
*
|
||||||
|
* @param DateInterval $defaultAccessTokenTTL
|
||||||
|
*/
|
||||||
|
public function setDefaultAccessTokenTTL(DateInterval $defaultAccessTokenTTL)
|
||||||
|
{
|
||||||
|
$this->defaultAccessTokenTTL = $defaultAccessTokenTTL;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param string $grantType
|
* @param string $grantType
|
||||||
* @param TokenTypeInterface $tokenType
|
* @param TokenTypeInterface $tokenType
|
||||||
@ -83,7 +103,7 @@ class Server extends AbstractServer
|
|||||||
if ($tokenType instanceof TokenTypeInterface) {
|
if ($tokenType instanceof TokenTypeInterface) {
|
||||||
$this->grantTypeTokenTypes[$grantIdentifier] = $tokenType;
|
$this->grantTypeTokenTypes[$grantIdentifier] = $tokenType;
|
||||||
} else {
|
} else {
|
||||||
$this->grantTypeTokenTypes[$grantIdentifier] = $this->defaultResponseType;
|
$this->grantTypeTokenTypes[$grantIdentifier] = $this->defaultTokenType;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Set grant access token TTL
|
// Set grant access token TTL
|
||||||
@ -124,14 +144,4 @@ class Server extends AbstractServer
|
|||||||
|
|
||||||
return $tokenType->generateHttpResponse();
|
return $tokenType->generateHttpResponse();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Set the delimiter used to separate scopes in a request
|
|
||||||
*
|
|
||||||
* @param string $scopeDelimiter
|
|
||||||
*/
|
|
||||||
public function setScopeDelimiter($scopeDelimiter)
|
|
||||||
{
|
|
||||||
$this->scopeDelimiter = $scopeDelimiter;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user