glpi / Vigilo / VigiloArg.php @ b204adb9
History | View | Annotate | Download (1.3 KB)
1 | bef4271a | Thibault Louet | <?php
|
---|---|---|---|
2 | |||
3 | class VigiloArg extends VigiloXml |
||
4 | { |
||
5 | protected $name; |
||
6 | protected $values; |
||
7 | |||
8 | public function __construct($name, $values) |
||
9 | { |
||
10 | if (is_array($values)) { |
||
11 | $new_values = array(); |
||
12 | foreach ($values as $value) { |
||
13 | a5c9df40 | Thibault Louet | if (is_string($value)) { |
14 | bef4271a | Thibault Louet | $new_values[] = new VigiloItem($value); |
15 | a5c9df40 | Thibault Louet | } elseif (!is_a($value, 'VigiloItem')) { |
16 | bef4271a | Thibault Louet | throw new \RuntimeException(); |
17 | a5c9df40 | Thibault Louet | } else {
|
18 | bef4271a | Thibault Louet | $new_values[] = $value; |
19 | a5c9df40 | Thibault Louet | } |
20 | bef4271a | Thibault Louet | } |
21 | $values = $new_values; |
||
22 | a5c9df40 | Thibault Louet | } elseif (!is_string($values) && !is_int($values) |
23 | && !is_bool($values) && !is_float($values) |
||
24 | ) { |
||
25 | bef4271a | Thibault Louet | throw new \RuntimeException(); |
26 | a5c9df40 | Thibault Louet | } else {
|
27 | bef4271a | Thibault Louet | $values = (string) $values; |
28 | } |
||
29 | |||
30 | $this->name = $name; |
||
31 | $this->values = $values; |
||
32 | } |
||
33 | |||
34 | public function getName() |
||
35 | { |
||
36 | return $this->name; |
||
37 | } |
||
38 | |||
39 | public function getValue() |
||
40 | { |
||
41 | a5c9df40 | Thibault Louet | if (is_string($this->values)) { |
42 | bef4271a | Thibault Louet | return $this->values; |
43 | a5c9df40 | Thibault Louet | } |
44 | bef4271a | Thibault Louet | return array_map('getValue', $this->values); |
45 | } |
||
46 | |||
47 | public function __toString() |
||
48 | { |
||
49 | return self::sprintf( |
||
50 | '<arg name="%s">%s</arg>',
|
||
51 | $this->name,
|
||
52 | $this->values
|
||
53 | ); |
||
54 | } |
||
55 | a5c9df40 | Thibault Louet | } |