Example #1
0
 /**
  * Adds the correct authentication configuration for a client
  *
  * @param Desk\Client $client The client (with configuration)
  *
  * @throws InvalidArgumentException If authentication configuration
  * provided is unknown
  */
 public function addAuthentication(Client &$client)
 {
     $authentication = $client->getConfig('authentication');
     switch ($authentication) {
         case 'basic':
             $client->setAuth($client->getConfig('username'), $client->getConfig('password'));
             break;
         case 'oauth':
             $client->addSubscriber(new OauthPlugin(array('consumer_key' => $client->getConfig('consumer_key'), 'consumer_secret' => $client->getConfig('consumer_secret'), 'token' => $client->getConfig('token'), 'token_secret' => $client->getConfig('token_secret'))));
             break;
         default:
             $value = $client->getConfig('authentication');
             throw new InvalidArgumentException("Invalid authentication '{$value}'");
     }
 }