* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\HttpFoundation\Session\Attribute; use Symfony\Component\HttpFoundation\Session\SessionBagInterface; /** * Attributes store. * * @author Drak */ interface AttributeBagInterface extends SessionBagInterface { /** * Checks if an attribute is defined. * * @param string $name The attribute name * * @return Boolean true if the attribute is defined, false otherwise */ function has($name); /** * Returns an attribute. * * @param string $name The attribute name * @param mixed $default The default value if not found. * * @return mixed */ function get($name, $default = null); /** * Sets an attribute. * * @param string $name * @param mixed $value */ function set($name, $value); /** * Returns attributes. * * @return array Attributes */ function all(); /** * Sets attributes. * * @param array $attributes Attributes */ function replace(array $attributes); /** * Removes an attribute. * * @param string $name * * @return mixed The removed value */ function remove($name); }