Webiny\Component\TwitterOAuth\Bridge\TwitterOAuth::getInstance PHP Method

getInstance() public static method

Create an instance of an TwitterOAuth driver.
public static getInstance ( string $clientId, string $clientSecret, string $redirectUri ) : Webiny\Component\TwitterOAuth\Bridge\TwitterOAuthInterface
$clientId string Client id.
$clientSecret string Client secret.
$redirectUri string Target url where to redirect after authentication.
return Webiny\Component\TwitterOAuth\Bridge\TwitterOAuthInterface
    public static function getInstance($clientId, $clientSecret, $redirectUri)
    {
        $driver = static::getLibrary();
        try {
            $instance = new $driver($clientId, $clientSecret, $redirectUri);
        } catch (\Exception $e) {
            throw new TwitterOAuthException('Unable to create an instance of ' . $driver);
        }
        if (!self::isInstanceOf($instance, '\\Webiny\\Component\\TwitterOAuth\\Bridge\\TwitterOAuthInterface')) {
            throw new TwitterOAuthException(TwitterOAuthException::MSG_INVALID_ARG, ['driver', '\\Webiny\\Component\\OAuth2\\TwitterOAuth\\TwitterOAuthInterface']);
        }
        return $instance;
    }

Usage Example

Exemplo n.º 1
0
 /**
  * Returns an instance to TwitterOAuth server based on the current configuration.
  *
  * @param string $key Unique identifier for the TwitterOAuth server that you wish to get.
  *
  * @return array|TwitterOAuth
  * @throws TwitterOAuthException
  */
 public static function getInstance($key)
 {
     if (isset(self::$instances[$key])) {
         return self::$instances;
     }
     $config = TwitterOAuth::getConfig()->get($key, false);
     if (!$config) {
         throw new TwitterOAuthException('Unable to read "TwitterOAuth.' . $key . '" configuration.');
     }
     if (strpos($config->RedirectUri, 'http://') !== false || strpos($config->RedirectUri, 'https://') !== false) {
         $redirectUri = $config->RedirectUri;
     } else {
         $redirectUri = self::httpRequest()->getCurrentUrl(true)->setPath($config->RedirectUri)->setQuery('')->val();
     }
     $instance = \Webiny\Component\TwitterOAuth\Bridge\TwitterOAuth::getInstance($config->ClientId, $config->ClientSecret, $redirectUri);
     return new TwitterOAuth($instance);
 }
All Usage Examples Of Webiny\Component\TwitterOAuth\Bridge\TwitterOAuth::getInstance