/**
  * Attempt to create an AuthToken from user credentials.
  *
  * @param array $credentials
  * @return bool|AuthToken
  */
 public function attempt(array $credentials)
 {
     $user = $this->users->retrieveByCredentials($credentials);
     if ($user instanceof Authenticatable && $this->users->validateCredentials($user, $credentials)) {
         return $this->create($user);
     }
     return false;
 }
 /**
  * Determine if the user matches the credentials.
  *
  * @param  mixed  $user
  * @param  array  $credentials
  * @return bool
  */
 protected function hasValidCredentials($user, $credentials)
 {
     return !is_null($user) && $this->provider->validateCredentials($user, $credentials);
 }