1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- <?php
-
- /*
- * This file is part of the FOSUserBundle package.
- *
- * (c) FriendsOfSymfony <http://friendsofsymfony.github.com/>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
- namespace FOS\UserBundle\Model;
-
- /**
- * @author Thibault Duplessis <thibault.duplessis@gmail.com>
- * @author Johannes M. Schmitt <schmittjoh@gmail.com>
- * @author Christophe Coevoet <stof@notk.org>
- */
- interface GroupableInterface
- {
- /**
- * Gets the groups granted to the user.
- *
- * @return \Traversable
- */
- public function getGroups();
-
- /**
- * Gets the name of the groups which includes the user.
- *
- * @return array
- */
- public function getGroupNames();
-
- /**
- * Indicates whether the user belongs to the specified group or not.
- *
- * @param string $name Name of the group
- *
- * @return Boolean
- */
- public function hasGroup($name);
-
- /**
- * Add a group to the user groups.
- *
- * @param GroupInterface $group
- *
- * @return self
- */
- public function addGroup(GroupInterface $group);
-
- /**
- * Remove a group from the user groups.
- *
- * @param GroupInterface $group
- *
- * @return self
- */
- public function removeGroup(GroupInterface $group);
- }
|