App\Providers\UserServiceProvider::registerPasswordBroker PHP Method

registerPasswordBroker() protected method

Register the password broker instance.
protected registerPasswordBroker ( ) : void
return void
    protected function registerPasswordBroker()
    {
        $this->app->singleton('auth.password', function ($app) {
            // The password token repository is responsible for storing the email addresses
            // and password reset tokens. It will be used to verify the tokens are valid
            // for the given e-mail addresses. We will resolve an implementation here.
            $tokens = $app['auth.password.tokens'];
            $users = $app['auth']->driver()->getProvider();
            $view = $app['config']['auth.password.email'];
            // The password broker uses a token repository to validate tokens and send user
            // password e-mails, as well as validating that password reset process as an
            // aggregate service of sorts providing a convenient interface for resets.
            $broker = new PasswordBroker($tokens, $users, $app['mailer'], $view);
            // register validator for password
            $broker->validator(function ($credentials) {
                try {
                    return app('xe.user')->validatePassword($credentials['password']);
                } catch (\Exception $e) {
                    return false;
                }
            });
            return $broker;
        });
    }