zend-blog-3-backend
22 строки · 598.0 Байт
1<?php
2
3namespace App\OAuth2;
4
5use App\OAuth2\Providers\DataProviderInterface;
6use App\OAuth2\Providers\VkDataProvider;
7use App\OAuth2\Providers\YandexDataProvider;
8
9class DataProviderFactory
10{
11public function dataProvider(string $providerName): DataProviderInterface
12{
13switch ($providerName) {
14case DataProviderInterface::YANDEX:
15return new YandexDataProvider();
16case DataProviderInterface::VK:
17return new VkDataProvider();
18}
19
20throw new \InvalidArgumentException('Unknown provider: ' . $providerName);
21}
22}
23