123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384 |
- <?php
- /*
- * This file is part of the overtrue/socialite.
- *
- * (c) overtrue <i@overtrue.me>
- *
- * This source file is subject to the MIT license that is bundled
- * with this source code in the file LICENSE.
- */
- namespace Overtrue\Socialite;
- use ArrayAccess;
- use InvalidArgumentException;
- use JsonSerializable;
- /**
- * Class AccessToken.
- */
- class AccessToken implements AccessTokenInterface, ArrayAccess, JsonSerializable
- {
- use HasAttributes;
- /**
- * AccessToken constructor.
- *
- * @param array $attributes
- */
- public function __construct(array $attributes)
- {
- if (empty($attributes['access_token'])) {
- throw new InvalidArgumentException('The key "access_token" could not be empty.');
- }
- $this->attributes = $attributes;
- }
- /**
- * Return the access token string.
- *
- * @return string
- */
- public function getToken()
- {
- return $this->getAttribute('access_token');
- }
- /**
- * Return the refresh token string.
- *
- * @return string
- */
- public function getRefreshToken()
- {
- return $this->getAttribute('refresh_token');
- }
- /**
- * Set refresh token into this object.
- *
- * @param string $token
- */
- public function setRefreshToken($token)
- {
- $this->setAttribute('refresh_token', $token);
- }
- /**
- * {@inheritdoc}
- */
- public function __toString()
- {
- return strval($this->getAttribute('access_token', ''));
- }
- /**
- * {@inheritdoc}
- */
- public function jsonSerialize()
- {
- return $this->getToken();
- }
- }
|