12345678910111213141516171819202122232425262728293031323334353637383940 |
- <?php
- namespace App\Services\Auth;
- use Illuminate\Auth\Passwords\PasswordBrokerManager as BasePasswordBrokerManager;
- use InvalidArgumentException;
- class PasswordBrokerManager extends BasePasswordBrokerManager
- {
- /**
- * Create a token repository instance based on the given configuration.
- *
- * @param array $config
- * @return \Illuminate\Auth\Passwords\TokenRepositoryInterface
- */
- protected function createTokenRepository(array $config)
- {
- return new ServiceTokenRepository();
- }
- /**
- * Resolve the given broker.
- *
- * @param string $name
- * @return PasswordBroker
- *
- * @throws InvalidArgumentException
- */
- protected function resolve($name)
- {
- $config = $this->getConfig($name);
- if (is_null($config)) {
- throw new InvalidArgumentException("密码重置器 [{$name}] 未定义");
- }
- return new PasswordBroker(
- $this->createTokenRepository($config),
- $this->app['auth']->createUserProvider($config['provider'] ?? null)
- );
- }
- }
|