Change names to Equatable
This commit is contained in:
parent
680b1086e9
commit
56db4a1d26
@ -15,7 +15,7 @@ use Symfony\Component\Security\Core\Role\RoleInterface;
|
|||||||
use Symfony\Component\Security\Core\Role\Role;
|
use Symfony\Component\Security\Core\Role\Role;
|
||||||
use Symfony\Component\Security\Core\User\UserInterface;
|
use Symfony\Component\Security\Core\User\UserInterface;
|
||||||
use Symfony\Component\Security\Core\User\AdvancedUserInterface;
|
use Symfony\Component\Security\Core\User\AdvancedUserInterface;
|
||||||
use Symfony\Component\Security\Core\User\ComparableInterface;
|
use Symfony\Component\Security\Core\User\EquatableInterface;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Base class for Token instances.
|
* Base class for Token instances.
|
||||||
@ -89,7 +89,7 @@ abstract class AbstractToken implements TokenInterface
|
|||||||
if (!$user instanceof UserInterface) {
|
if (!$user instanceof UserInterface) {
|
||||||
$changed = true;
|
$changed = true;
|
||||||
} else {
|
} else {
|
||||||
$changed = !$this->compareUser($user);
|
$changed = !$this->isUserChanged($user);
|
||||||
}
|
}
|
||||||
} elseif ($user instanceof UserInterface) {
|
} elseif ($user instanceof UserInterface) {
|
||||||
$changed = true;
|
$changed = true;
|
||||||
@ -223,14 +223,14 @@ abstract class AbstractToken implements TokenInterface
|
|||||||
return sprintf('%s(user="%s", authenticated=%s, roles="%s")', $class, $this->getUsername(), json_encode($this->authenticated), implode(', ', $roles));
|
return sprintf('%s(user="%s", authenticated=%s, roles="%s")', $class, $this->getUsername(), json_encode($this->authenticated), implode(', ', $roles));
|
||||||
}
|
}
|
||||||
|
|
||||||
private function compareUser(UserInterface $user)
|
private function isUserChanged(UserInterface $user)
|
||||||
{
|
{
|
||||||
if (!($this->user instanceof UserInterface)) {
|
if (!($this->user instanceof UserInterface)) {
|
||||||
throw new \BadMethodCallException('Method "compareUser" should be called when current user class is instance of "UserInterface".');
|
throw new \BadMethodCallException('Method "compareUser" should be called when current user class is instance of "UserInterface".');
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($this->user instanceof ComparableInterface) {
|
if ($this->user instanceof EquatableInterface) {
|
||||||
return $this->user->compareTo($user);
|
return $this->user->isEqualTo($user);
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($this->user->getPassword() !== $user->getPassword()) {
|
if ($this->user->getPassword() !== $user->getPassword()) {
|
||||||
|
@ -12,12 +12,12 @@
|
|||||||
namespace Symfony\Component\Security\Core\User;
|
namespace Symfony\Component\Security\Core\User;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* ComparableInterface used to test if two objects are equal in security
|
* EquatableInterface used to test if two objects are equal in security
|
||||||
* and re-authentication context.
|
* and re-authentication context.
|
||||||
*
|
*
|
||||||
* @author Dariusz Górecki <darek.krk@gmail.com>
|
* @author Dariusz Górecki <darek.krk@gmail.com>
|
||||||
*/
|
*/
|
||||||
interface ComparableInterface
|
interface EquatableInterface
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
* The equality comparison should neither be done by referential equality
|
* The equality comparison should neither be done by referential equality
|
||||||
@ -30,5 +30,5 @@ interface ComparableInterface
|
|||||||
*
|
*
|
||||||
* @return Boolean
|
* @return Boolean
|
||||||
*/
|
*/
|
||||||
function compareTo(UserInterface $user);
|
function isEqualTo(UserInterface $user);
|
||||||
}
|
}
|
Reference in New Issue
Block a user