[Security] renamed UserProviderInterface::loadUser() to refreshUser()

This commit is contained in:
Fabien Potencier 2011-06-16 18:00:36 +02:00
parent adb9aaf47d
commit fa9b920051
7 changed files with 19 additions and 15 deletions

View File

@ -9,6 +9,10 @@ timeline closely anyway.
beta4 to beta5 beta4 to beta5
-------------- --------------
* `UserProviderInterface::loadUser()` has been renamed to
`UserProviderInterface::refreshUser()` to make the goal of the method
clearer.
* The `$kernel` property on `WebTestCase` is now static. Change any instances * The `$kernel` property on `WebTestCase` is now static. Change any instances
of `$this->kernel` in your functional tests to `self::$kernel`. of `$this->kernel` in your functional tests to `self::$kernel`.

View File

@ -50,11 +50,11 @@ class ChainUserProvider implements UserProviderInterface
/** /**
* {@inheritDoc} * {@inheritDoc}
*/ */
public function loadUser(UserInterface $user) public function refreshUser(UserInterface $user)
{ {
foreach ($this->providers as $provider) { foreach ($this->providers as $provider) {
try { try {
return $provider->loadUser($user); return $provider->refreshUser($user);
} catch (UnsupportedUserException $unsupported) { } catch (UnsupportedUserException $unsupported) {
// try next one // try next one
} }

View File

@ -66,7 +66,7 @@ class EntityUserProvider implements UserProviderInterface
/** /**
* {@inheritDoc} * {@inheritDoc}
*/ */
public function loadUser(UserInterface $user) public function refreshUser(UserInterface $user)
{ {
if (!$user instanceof $this->class) { if (!$user instanceof $this->class) {
throw new UnsupportedUserException(sprintf('Instances of "%s" are not supported.', get_class($user))); throw new UnsupportedUserException(sprintf('Instances of "%s" are not supported.', get_class($user)));

View File

@ -78,7 +78,7 @@ class InMemoryUserProvider implements UserProviderInterface
/** /**
* {@inheritDoc} * {@inheritDoc}
*/ */
public function loadUser(UserInterface $user) public function refreshUser(UserInterface $user)
{ {
if (!$user instanceof User) { if (!$user instanceof User) {
throw new UnsupportedUserException(sprintf('Instances of "%s" are not supported.', get_class($user))); throw new UnsupportedUserException(sprintf('Instances of "%s" are not supported.', get_class($user)));

View File

@ -33,7 +33,7 @@ interface UserProviderInterface
function loadUserByUsername($username); function loadUserByUsername($username);
/** /**
* Loads the user for the account interface. * Refreshes the user for the account interface.
* *
* It is up to the implementation if it decides to reload the user data * It is up to the implementation if it decides to reload the user data
* from the database, or if it simply merges the passed User into the * from the database, or if it simply merges the passed User into the
@ -44,7 +44,7 @@ interface UserProviderInterface
* *
* @return UserInterface * @return UserInterface
*/ */
function loadUser(UserInterface $user); function refreshUser(UserInterface $user);
/** /**
* Whether this provider supports the given user class * Whether this provider supports the given user class

View File

@ -128,7 +128,7 @@ class ContextListener implements ListenerInterface
foreach ($this->userProviders as $provider) { foreach ($this->userProviders as $provider) {
try { try {
$token->setUser($provider->loadUser($user)); $token->setUser($provider->refreshUser($user));
if (null !== $this->logger) { if (null !== $this->logger) {
$this->logger->debug(sprintf('Username "%s" was reloaded from user provider.', $user->getUsername())); $this->logger->debug(sprintf('Username "%s" was reloaded from user provider.', $user->getUsername()));

View File

@ -66,47 +66,47 @@ class ChainUserProviderTest extends \PHPUnit_Framework_TestCase
$provider->loadUserByUsername('foo'); $provider->loadUserByUsername('foo');
} }
public function testloadUser() public function testRefreshUser()
{ {
$provider1 = $this->getProvider(); $provider1 = $this->getProvider();
$provider1 $provider1
->expects($this->once()) ->expects($this->once())
->method('loadUser') ->method('refreshUser')
->will($this->throwException(new UnsupportedUserException('unsupported'))) ->will($this->throwException(new UnsupportedUserException('unsupported')))
; ;
$provider2 = $this->getProvider(); $provider2 = $this->getProvider();
$provider2 $provider2
->expects($this->once()) ->expects($this->once())
->method('loadUser') ->method('refreshUser')
->will($this->returnValue($account = $this->getAccount())) ->will($this->returnValue($account = $this->getAccount()))
; ;
$provider = new ChainUserProvider(array($provider1, $provider2)); $provider = new ChainUserProvider(array($provider1, $provider2));
$this->assertSame($account, $provider->loadUser($this->getAccount())); $this->assertSame($account, $provider->refreshUser($this->getAccount()));
} }
/** /**
* @expectedException Symfony\Component\Security\Core\Exception\UnsupportedUserException * @expectedException Symfony\Component\Security\Core\Exception\UnsupportedUserException
*/ */
public function testloadUserThrowsUnsupportedUserException() public function testRefreshUserThrowsUnsupportedUserException()
{ {
$provider1 = $this->getProvider(); $provider1 = $this->getProvider();
$provider1 $provider1
->expects($this->once()) ->expects($this->once())
->method('loadUser') ->method('refreshUser')
->will($this->throwException(new UnsupportedUserException('unsupported'))) ->will($this->throwException(new UnsupportedUserException('unsupported')))
; ;
$provider2 = $this->getProvider(); $provider2 = $this->getProvider();
$provider2 $provider2
->expects($this->once()) ->expects($this->once())
->method('loadUser') ->method('refreshUser')
->will($this->throwException(new UnsupportedUserException('unsupported'))) ->will($this->throwException(new UnsupportedUserException('unsupported')))
; ;
$provider = new ChainUserProvider(array($provider1, $provider2)); $provider = new ChainUserProvider(array($provider1, $provider2));
$provider->loadUser($this->getAccount()); $provider->refreshUser($this->getAccount());
} }
public function testSupportsClass() public function testSupportsClass()