1: <?php
2: /**
3: * PHP version 5
4: *
5: * @package generalDriver
6: * @author Christian Schiffler <c.schiffler@cyberspectrum.de>
7: * @author Stefan Heimes <stefan_heimes@hotmail.com>
8: * @author Tristan Lins <tristan.lins@bit3.de>
9: * @copyright The MetaModels team.
10: * @license LGPL.
11: * @filesource
12: */
13:
14: namespace DcGeneral\DataDefinition\Definition\View;
15:
16: /**
17: * Interface CommandInterface.
18: *
19: * This interface describes a command that can be applied to a model.
20: *
21: * @package DcGeneral\DataDefinition\Definition\View
22: */
23: interface CommandInterface
24: {
25: /**
26: * Set the name of the command.
27: *
28: * @param string $name The name of the command.
29: *
30: * @return CommandInterface
31: */
32: public function setName($name);
33:
34: /**
35: * Return the name of the command.
36: *
37: * @return string
38: */
39: public function getName();
40:
41: /**
42: * Set the action properties of the command.
43: *
44: * @param \ArrayObject $parameters The parameters.
45: *
46: * @return CommandInterface
47: */
48: public function setParameters(\ArrayObject $parameters);
49:
50: /**
51: * Return the action properties of the command.
52: *
53: * @return \ArrayObject
54: */
55: public function getParameters();
56:
57: /**
58: * Set the label of the command.
59: *
60: * @param string $label The label text.
61: *
62: * @return CommandInterface
63: */
64: public function setLabel($label);
65:
66: /**
67: * Return the label of the command.
68: *
69: * @return array
70: */
71: public function getLabel();
72:
73: /**
74: * Set the description of the command.
75: *
76: * @param string $description The description text.
77: *
78: * @return CommandInterface
79: */
80: public function setDescription($description);
81:
82: /**
83: * Return the description of the command.
84: *
85: * @return array
86: */
87: public function getDescription();
88:
89: /**
90: * Set extra information.
91: *
92: * @param \ArrayObject $extra The extra data.
93: *
94: * @return CommandInterface
95: */
96: public function setExtra(\ArrayObject $extra);
97:
98: /**
99: * Fetch extra information.
100: *
101: * @return \ArrayObject
102: */
103: public function getExtra();
104:
105: /**
106: * Set the command enabled or disabled (true means disabled).
107: *
108: * @param boolean $disabled The flag.
109: *
110: * @return $this
111: */
112: public function setDisabled($disabled = true);
113:
114: /**
115: * Determine if the command is disabled.
116: *
117: * @return boolean
118: */
119: public function isDisabled();
120: }
121: