1 | <?php |
||
36 | class FormDefinition extends AbstractFormDefinition implements ConfigurationObjectInterface, DataPreProcessorInterface |
||
37 | { |
||
38 | use DefaultConfigurationObjectTrait; |
||
39 | use ArrayConversionTrait; |
||
40 | |||
41 | /** |
||
42 | * @var \Romm\Formz\Form\Definition\Field\Field[] |
||
43 | * @validate NotEmpty |
||
44 | */ |
||
45 | protected $fields = []; |
||
46 | |||
47 | /** |
||
48 | * @var \Romm\Formz\Condition\Items\ConditionItemInterface[] |
||
49 | * @mixedTypesResolver \Romm\Formz\Form\Definition\Condition\ConditionItemResolver |
||
50 | */ |
||
51 | protected $conditionList = []; |
||
52 | |||
53 | /** |
||
54 | * @var \Romm\Formz\Form\Definition\Settings\FormSettings |
||
55 | */ |
||
56 | protected $settings; |
||
57 | |||
58 | /** |
||
59 | * @var \Romm\Formz\Form\Definition\Middleware\PresetMiddlewares |
||
60 | */ |
||
61 | protected $presetMiddlewares; |
||
62 | |||
63 | /** |
||
64 | * @var \Romm\Formz\Middleware\MiddlewareInterface[] |
||
65 | * @mixedTypesResolver \Romm\Formz\Form\Definition\Middleware\MiddlewareResolver |
||
66 | */ |
||
67 | protected $middlewares = []; |
||
68 | |||
69 | /** |
||
70 | * @var \Romm\Formz\Persistence\PersistenceInterface[] |
||
71 | * @mixedTypesResolver \Romm\Formz\Form\Definition\Persistence\PersistenceResolver |
||
72 | */ |
||
73 | protected $persistence; |
||
74 | |||
75 | /** |
||
76 | * @var \Romm\Formz\Form\Definition\Step\Steps |
||
77 | */ |
||
78 | protected $steps; |
||
79 | |||
80 | /** |
||
81 | * @var FormDefinitionState |
||
82 | */ |
||
83 | private $state; |
||
84 | |||
85 | /** |
||
86 | * Constructor. |
||
87 | */ |
||
88 | public function __construct() |
||
93 | |||
94 | /** |
||
95 | * Will initialize correctly the configuration object settings. |
||
96 | * |
||
97 | * @return ServiceFactory |
||
98 | */ |
||
99 | public static function getConfigurationObjectServices() |
||
103 | |||
104 | /** |
||
105 | * Returns FormZ root configuration object. |
||
106 | * |
||
107 | * @return Configuration |
||
108 | */ |
||
109 | public function getRootConfiguration() |
||
116 | |||
117 | /** |
||
118 | * @return Field[] |
||
119 | */ |
||
120 | public function getFields() |
||
124 | |||
125 | /** |
||
126 | * @param string $name |
||
127 | * @return bool |
||
128 | */ |
||
129 | public function hasField($name) |
||
133 | |||
134 | /** |
||
135 | * @param string $name |
||
136 | * @return Field |
||
137 | * @throws EntryNotFoundException |
||
138 | */ |
||
139 | public function getField($name) |
||
147 | |||
148 | /** |
||
149 | * @param string $name |
||
150 | * @return Field |
||
151 | * @throws DuplicateEntryException |
||
152 | */ |
||
153 | public function addField($name) |
||
169 | |||
170 | /** |
||
171 | * @return ConditionItemInterface[] |
||
172 | */ |
||
173 | public function getConditionList() |
||
177 | |||
178 | /** |
||
179 | * @param string $name |
||
180 | * @return bool |
||
181 | */ |
||
182 | public function hasCondition($name) |
||
186 | |||
187 | /** |
||
188 | * @param string $name |
||
189 | * @return ConditionItemInterface |
||
190 | * @throws EntryNotFoundException |
||
191 | */ |
||
192 | public function getCondition($name) |
||
200 | |||
201 | /** |
||
202 | * @param string $name |
||
203 | * @param string $identifier |
||
204 | * @param array $arguments |
||
205 | * @return ConditionItemInterface |
||
206 | * @throws DuplicateEntryException |
||
207 | * @throws EntryNotFoundException |
||
208 | */ |
||
209 | public function addCondition($name, $identifier, $arguments = []) |
||
229 | |||
230 | /** |
||
231 | * @return FormSettings |
||
232 | */ |
||
233 | public function getSettings() |
||
237 | |||
238 | /** |
||
239 | * @return PresetMiddlewares |
||
240 | */ |
||
241 | public function getPresetMiddlewares() |
||
245 | |||
246 | /** |
||
247 | * @return MiddlewareInterface[] |
||
248 | */ |
||
249 | public function getMiddlewares() |
||
253 | |||
254 | /** |
||
255 | * @param string $name |
||
256 | * @return MiddlewareInterface |
||
257 | * @throws EntryNotFoundException |
||
258 | */ |
||
259 | public function getMiddleware($name) |
||
267 | |||
268 | /** |
||
269 | * @param string $name |
||
270 | * @return bool |
||
271 | */ |
||
272 | public function hasMiddleware($name) |
||
276 | |||
277 | /** |
||
278 | * Returns the merged list of preset middlewares and custom registered |
||
279 | * middlewares. |
||
280 | * |
||
281 | * @return MiddlewareInterface[] |
||
282 | */ |
||
283 | public function getAllMiddlewares() |
||
293 | |||
294 | /** |
||
295 | * @return bool |
||
296 | */ |
||
297 | public function hasPersistence() |
||
301 | |||
302 | /** |
||
303 | * @return PersistenceInterface[] |
||
304 | */ |
||
305 | public function getPersistence() |
||
309 | |||
310 | /** |
||
311 | * @return Steps |
||
312 | */ |
||
313 | public function getSteps() |
||
317 | |||
318 | /** |
||
319 | * @return bool |
||
320 | */ |
||
321 | public function hasSteps() |
||
325 | |||
326 | /** |
||
327 | * @return FormDefinitionState |
||
328 | */ |
||
329 | public function getState() |
||
333 | |||
334 | /** |
||
335 | * @param DataPreProcessor $processor |
||
336 | */ |
||
337 | public static function dataPreProcessor(DataPreProcessor $processor) |
||
363 | } |
||
364 |