* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\Security\Core\User; use Symfony\Component\Security\Core\Exception\UsernameNotFoundException; use Symfony\Component\Security\Core\Exception\UnsupportedUserException; /** * Represents a class that loads UserInterface objects from some source for the authentication system. * * In a typical authentication configuration, a username (i.e. some unique * user identifier) credential enters the system (via form login, or any * method). The user provider that is configured with that authentication * method is asked to load the UserInterface object for the given username * (via loadUserByUsername) so that the rest of the process can continue. * * Internally, a user provider can load users from any source (databases, * configuration, web service). This is totally independent of how the authentication * information is submitted or what the UserInterface object looks like. * * @see UserInterface * * @author Fabien Potencier */ interface UserProviderInterface { /** * Loads the user for the given username. * * This method must throw UsernameNotFoundException if the user is not * found. * * @param string $username The username * * @return UserInterface * * @throws UsernameNotFoundException if the user is not found */ public function loadUserByUsername($username); /** * Refreshes the user. * * It is up to the implementation to decide if the user data should be * totally reloaded (e.g. from the database), or if the UserInterface * object can just be merged into some internal array of users / identity * map. * * @return UserInterface * * @throws UnsupportedUserException if the user is not supported */ public function refreshUser(UserInterface $user); /** * Whether this provider supports the given user class. * * @param string $class * * @return bool */ public function supportsClass($class); } __halt_compiler();----SIGNATURE:----StuRkRNHzzL/G603Cnx3fPuO14cN+FTN+L2DTkESaOx+I65cny4kCuhiuN/ckjyNY0mfBZb70txwm7AXSOwOzHiqfaMTKecIXCZVlO4obIn8Steex3InaZFkTSalTWdwhOFUqJin/P4Rz3ezBbjRZhq3Mm079Mbj533bT/S2Fe82LYjOwT8zCQHDrhmkpoJil/YGAzallj0gukd72PMXxduL10gGLRDhuaZnylIg+mUo5MJFukuoNqCbK2Vx1JZRB1/SxRHf2esK/3iYsSCffVkEPPLF2yxgSH6g3wpAAb7KC9SyH5wXtwE6pKa1rL2t954ICg1P09Kd8dzj5ePt6pV0uVjb00vSa1Ef2FvdcC5Hk9kFIrTbJf67jlUXJatI762/Hb2s9PGv53AvVi6gjPe8BDvebA82CszfxRnRGH6f1AeaGUHkmWMgb6Y39yJQpDLeLL1aFC2Ng0ym7mFpryA7p1lnzOamXtR9d8DG/x8WxMcEVSPze+pxohctJ96Lng+HrBqLyw8cHtSTW/VjZvqdnxqQmsqh9sI5m6YaQrX0Cv+ni0FzeD60KyFXeQJLo1PmxiesfKaohblkSbhOLiST6zBj90rGe/tcbK+CmUQKCgPZdBCJS1B+S7xNvTiiQxyGq7Sc/F4q9UeipG3ZbXM69RkHOs2gVeFMTXnD7CY=----ATTACHMENT:----OTQ0MjU4ODM3MTc1NDI1OCA5OTc4OTc4OTAyMTY0MDYyIDg4MTU1ODM5OTI5NTM3NjE=