Example #1
0
 /**
  * @param string $path
  * @return \CultuurNet\Auth\Session
  */
 public static function read($path)
 {
     if (!file_exists($path)) {
         return new Session();
     }
     $json = file_get_contents($path);
     if (!$json) {
         return new Session();
     }
     $data = json_decode($json);
     // @todo Throw an exception if unable to parse.
     if (null === $data && JSON_ERROR_NONE !== json_last_error()) {
     }
     self::validateSchema($data, $path);
     $session = new Session();
     if (isset($data->baseUrls)) {
         foreach (get_object_vars($data->baseUrls) as $api => $baseUrl) {
             $session->setBaseUrl($api, $baseUrl);
         }
     }
     if (isset($data->consumer)) {
         $consumer = new ConsumerCredentials();
         $consumer->setKey($data->consumer->key);
         $consumer->setSecret($data->consumer->secret);
         $session->setConsumerCredentials($consumer);
     }
     if (isset($data->user)) {
         $tokenCredentials = new TokenCredentials($data->user->token, $data->user->secret);
         $user = new User($data->user->id, $tokenCredentials);
         $session->setUser($user);
     }
     return $session;
 }
 /**
  * @param string $baseUrl
  * @param ConsumerCredentials $consumerCredentials
  * @param TokenCredentials $tokenCredentials
  *
  * @return Client
  */
 public function createClient($baseUrl, ConsumerCredentials $consumerCredentials, TokenCredentials $tokenCredentials = null)
 {
     $oAuthConfig = array('consumer_key' => $consumerCredentials->getKey(), 'consumer_secret' => $consumerCredentials->getSecret());
     if ($tokenCredentials instanceof TokenCredentials) {
         $oAuthConfig += array('token' => $tokenCredentials->getToken(), 'token_secret' => $tokenCredentials->getSecret());
     }
     $oAuth = new OAuth($oAuthConfig);
     $requestFactory = new JavaHttpRequestFactory();
     $client = new Client();
     $client->setBaseUrl($baseUrl)->addSubscriber($oAuth)->setRequestFactory($requestFactory);
     foreach ($this->subscribers as $subscriber) {
         $client->addSubscriber($subscriber);
     }
     return $client;
 }
 /**
  * @param AccessToken $userAccessToken
  * @return \CultureFeed_DefaultOAuthClient
  */
 private function createOAuthClient(AccessToken $userAccessToken)
 {
     return new \CultureFeed_DefaultOAuthClient($this->consumerCredentials->getKey(), $this->consumerCredentials->getSecret(), $userAccessToken->getTokenCredentials()->getToken(), $userAccessToken->getTokenCredentials()->getSecret());
 }