/**
  * Get a new access token.
  *
  * @return AccessToken|null
  */
 protected function acquireAccessToken()
 {
     $accessToken = null;
     if ($this->refreshTokenGrantType) {
         // Get an access token using the stored refresh token.
         if ($this->refreshToken) {
             $this->refreshTokenGrantType->setRefreshToken($this->refreshToken->getToken());
         }
         if ($this->refreshTokenGrantType->hasRefreshToken()) {
             $accessToken = $this->refreshTokenGrantType->getToken();
         }
     }
     if (!$accessToken && $this->grantType) {
         // Get a new access token.
         $accessToken = $this->grantType->getToken();
     }
     return $accessToken ?: null;
 }
 /**
  * Get a new access token.
  *
  * @return AccessToken|null
  */
 protected function acquireAccessToken()
 {
     $accessToken = null;
     if ($this->refreshTokenGrantType) {
         if ($this->refreshTokenGrantType->hasRefreshToken()) {
             $accessToken = $this->getToken($this->refreshTokenGrantType);
         }
     }
     if (!$accessToken && $this->grantType) {
         // Get a new access token.
         $accessToken = $this->getToken($this->grantType);
     }
     return $accessToken ?: null;
 }