Class yii\authclient\Collection
Inheritance | yii\authclient\Collection » yii\base\Component |
---|---|
Available since extension's version | 2.0 |
Source Code | https://github.com/yiisoft/yii2-authclient/blob/master/Collection.php |
Collection is a storage for all auth clients in the application.
Example application configuration:
'components' => [
'authClientCollection' => [
'class' => 'yii\authclient\Collection',
'clients' => [
'google' => [
'class' => 'yii\authclient\clients\GoogleOpenId'
],
'facebook' => [
'class' => 'yii\authclient\clients\Facebook',
'clientId' => 'facebook_client_id',
'clientSecret' => 'facebook_client_secret',
],
],
]
...
]
Public Properties
Property | Type | Description | Defined By |
---|---|---|---|
$clients | yii\authclient\ClientInterface[] | List of auth clients. | yii\authclient\Collection |
Public Methods
Method | Description | Defined By |
---|---|---|
getClient() | yii\authclient\Collection | |
getClients() | yii\authclient\Collection | |
hasClient() | Checks if client exists in the hub. | yii\authclient\Collection |
setClients() | yii\authclient\Collection |
Protected Methods
Method | Description | Defined By |
---|---|---|
createClient() | Creates auth client instance from its array configuration. | yii\authclient\Collection |
Property Details
List of auth clients. This property is read-only.
Method Details
Creates auth client instance from its array configuration.
protected yii\authclient\ClientInterface createClient ( $id, $config ) | ||
$id | string |
Auth client id. |
$config | array |
Auth client instance configuration. |
return | yii\authclient\ClientInterface |
Auth client instance. |
---|
protected function createClient($id, $config)
{
$config['id'] = $id;
return Yii::createObject($config);
}
public yii\authclient\ClientInterface getClient ( $id ) | ||
$id | string |
Service id. |
return | yii\authclient\ClientInterface |
Auth client instance. |
---|---|---|
throws | \yii\base\InvalidParamException |
on non existing client request. |
public function getClient($id)
{
if (!array_key_exists($id, $this->_clients)) {
throw new InvalidParamException("Unknown auth client '{$id}'.");
}
if (!is_object($this->_clients[$id])) {
$this->_clients[$id] = $this->createClient($id, $this->_clients[$id]);
}
return $this->_clients[$id];
}
public yii\authclient\ClientInterface[] getClients ( ) | ||
return | yii\authclient\ClientInterface[] |
List of auth clients. |
---|
public function getClients()
{
$clients = [];
foreach ($this->_clients as $id => $client) {
$clients[$id] = $this->getClient($id);
}
return $clients;
}
Checks if client exists in the hub.
public boolean hasClient ( $id ) | ||
$id | string |
Client id. |
return | boolean |
Whether client exist. |
---|
public function hasClient($id)
{
return array_key_exists($id, $this->_clients);
}
public void setClients ( array $clients ) | ||
$clients | array |
List of auth clients |
public function setClients(array $clients)
{
$this->_clients = $clients;
}