0d8d17991be704f5f64d41b13bfacc6a70944393
[yaffs-website] / vendor / symfony / http-foundation / Session / Attribute / AttributeBagInterface.php
1 <?php
2
3 /*
4  * This file is part of the Symfony package.
5  *
6  * (c) Fabien Potencier <fabien@symfony.com>
7  *
8  * For the full copyright and license information, please view the LICENSE
9  * file that was distributed with this source code.
10  */
11
12 namespace Symfony\Component\HttpFoundation\Session\Attribute;
13
14 use Symfony\Component\HttpFoundation\Session\SessionBagInterface;
15
16 /**
17  * Attributes store.
18  *
19  * @author Drak <drak@zikula.org>
20  */
21 interface AttributeBagInterface extends SessionBagInterface
22 {
23     /**
24      * Checks if an attribute is defined.
25      *
26      * @param string $name The attribute name
27      *
28      * @return bool true if the attribute is defined, false otherwise
29      */
30     public function has($name);
31
32     /**
33      * Returns an attribute.
34      *
35      * @param string $name    The attribute name
36      * @param mixed  $default The default value if not found
37      *
38      * @return mixed
39      */
40     public function get($name, $default = null);
41
42     /**
43      * Sets an attribute.
44      *
45      * @param string $name
46      * @param mixed  $value
47      */
48     public function set($name, $value);
49
50     /**
51      * Returns attributes.
52      *
53      * @return array Attributes
54      */
55     public function all();
56
57     /**
58      * Sets attributes.
59      *
60      * @param array $attributes Attributes
61      */
62     public function replace(array $attributes);
63
64     /**
65      * Removes an attribute.
66      *
67      * @param string $name
68      *
69      * @return mixed The removed value or null when it does not exist
70      */
71     public function remove($name);
72 }