1 | <?php |
||
28 | class FieldContainer extends JsonObject |
||
29 | { |
||
30 | 47 | public function fieldDefinition($field) |
|
58 | |||
59 | /** |
||
60 | * @param string $field |
||
61 | * @param mixed $value |
||
62 | * @return $this |
||
63 | */ |
||
64 | 6 | public function set($field, $value) |
|
68 | |||
69 | 20 | protected function isValidField($field) |
|
73 | |||
74 | /** |
||
75 | * @return bool |
||
76 | */ |
||
77 | 1 | public function getFieldAsBool($name) |
|
81 | |||
82 | /** |
||
83 | * @return float |
||
84 | */ |
||
85 | 1 | public function getFieldAsNumber($name) |
|
90 | |||
91 | /** |
||
92 | * @return int |
||
93 | */ |
||
94 | 1 | public function getFieldAsInteger($name) |
|
99 | |||
100 | /** |
||
101 | * @return string |
||
102 | */ |
||
103 | 1 | public function getFieldAsString($name) |
|
107 | |||
108 | /** |
||
109 | * @return LocalizedString |
||
110 | */ |
||
111 | 1 | public function getFieldAsLocalizedString($name) |
|
115 | |||
116 | /** |
||
117 | * @return LocalizedEnum |
||
118 | */ |
||
119 | 1 | public function getFieldAsLocalizedEnum($name) |
|
120 | { |
||
121 | 1 | return $this->getFieldAsType($name, LocalizedEnum::class); |
|
122 | } |
||
123 | |||
124 | /** |
||
125 | * @return Enum |
||
126 | */ |
||
127 | 1 | public function getFieldAsEnum($name) |
|
128 | { |
||
129 | 1 | return $this->getFieldAsType($name, Enum::class); |
|
130 | } |
||
131 | |||
132 | /** |
||
133 | * @return Money |
||
134 | */ |
||
135 | 1 | public function getFieldAsMoney($name) |
|
136 | { |
||
137 | 1 | return $this->getFieldAsType($name, Money::class); |
|
138 | } |
||
139 | |||
140 | /** |
||
141 | * @return DateDecorator |
||
142 | */ |
||
143 | 1 | public function getFieldAsDate($name) |
|
144 | { |
||
145 | 1 | return $this->getFieldAsType($name, DateDecorator::class); |
|
146 | } |
||
147 | |||
148 | /** |
||
149 | * @return TimeDecorator |
||
150 | */ |
||
151 | 1 | public function getFieldAsTime($name) |
|
152 | { |
||
153 | 1 | return $this->getFieldAsType($name, TimeDecorator::class); |
|
154 | } |
||
155 | |||
156 | /** |
||
157 | * @return DateTimeDecorator |
||
158 | */ |
||
159 | 1 | public function getFieldAsDateTime($name) |
|
160 | { |
||
161 | 1 | return $this->getFieldAsType($name, DateTimeDecorator::class); |
|
162 | } |
||
163 | |||
164 | /** |
||
165 | * @return Reference |
||
166 | */ |
||
167 | 1 | public function getFieldAsReference($name) |
|
168 | { |
||
169 | 1 | return $this->getFieldAsType($name, Reference::class); |
|
170 | } |
||
171 | |||
172 | /** |
||
173 | * @return Set |
||
174 | */ |
||
175 | 1 | public function getFieldAsBoolSet($name) |
|
176 | { |
||
177 | 1 | return $this->getFieldAsSetType($name, 'bool'); |
|
178 | } |
||
179 | |||
180 | /** |
||
181 | * @return Set |
||
182 | */ |
||
183 | 1 | public function getFieldAsNumberSet($name) |
|
187 | |||
188 | /** |
||
189 | * @return Set |
||
190 | */ |
||
191 | 1 | public function getFieldAsIntegerSet($name) |
|
192 | { |
||
193 | 1 | return $this->getFieldAsSetType($name, 'int'); |
|
194 | } |
||
195 | |||
196 | /** |
||
197 | * @return Set |
||
198 | */ |
||
199 | 1 | public function getFieldAsStringSet($name) |
|
200 | { |
||
201 | 1 | return $this->getFieldAsSetType($name, 'string'); |
|
202 | } |
||
203 | |||
204 | /** |
||
205 | * @return Set |
||
206 | */ |
||
207 | 1 | public function getFieldAsLocalizedStringSet($name) |
|
208 | { |
||
209 | 1 | return $this->getFieldAsSetType($name, LocalizedString::class); |
|
210 | } |
||
211 | |||
212 | /** |
||
213 | * @return Set |
||
214 | */ |
||
215 | 1 | public function getFieldAsLocalizedEnumSet($name) |
|
219 | |||
220 | /** |
||
221 | * @return Set |
||
222 | */ |
||
223 | 1 | public function getFieldAsEnumSet($name) |
|
224 | { |
||
225 | 1 | return $this->getFieldAsSetType($name, Enum::class); |
|
226 | } |
||
227 | |||
228 | /** |
||
229 | * @return Set |
||
230 | */ |
||
231 | 1 | public function getFieldAsMoneySet($name) |
|
235 | |||
236 | /** |
||
237 | * @return Set |
||
238 | */ |
||
239 | 1 | public function getFieldAsDateSet($name) |
|
243 | |||
244 | /** |
||
245 | * @return Set |
||
246 | */ |
||
247 | 1 | public function getFieldAsTimeSet($name) |
|
251 | |||
252 | /** |
||
253 | * @return Set |
||
254 | */ |
||
255 | 1 | public function getFieldAsDateTimeSet($name) |
|
259 | |||
260 | /** |
||
261 | * @return Set |
||
262 | */ |
||
263 | 1 | public function getFieldAsReferenceSet($name) |
|
267 | |||
268 | 12 | private function getFieldAsSetType($name, $type) |
|
277 | |||
278 | 8 | private function getFieldAsType($name, $type) |
|
291 | } |
||
292 |