forked from virtuozzo/OnApp-PHP-Wrapper-External
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Catalogs.php
129 lines (122 loc) · 3.99 KB
/
Catalogs.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
<?php
/**
* Catalogs
**
* @category API wrapper
* @package OnApp
* @author
* @copyright © 2017 OnApp
* @link http://www.onapp.com/
* @see OnApp
*/
/**
* Catalogs
*
* This class represents the media library.
*
* The OnApp_Catalogs class uses the following basic methods:
* {@link load}, {@link delete}, and {@link getList}.
*
*/
class OnApp_Catalogs extends OnApp {
/**
* root tag used in the API request
*
* @var string
*/
var $_tagRoot = 'vcloud_catalog';
/**
* alias processing the object data
*
* @var string
*/
var $_resource = 'catalogs';
/**
* API Fields description
*
* @param string|float $version OnApp API version
* @param string $className current class' name
*
* @return array
*/
public function initFields( $version = null, $className = '' ) {
switch ( $version ) {
case 5.0:
case 5.1:
case 5.2:
case 5.3:
$this->fields = array();
$this->fields['user_id'] = array(
ONAPP_FIELD_MAP => '_user_id',
ONAPP_FIELD_TYPE => 'integer',
);
$this->fields['hypervisor_id'] = array(
ONAPP_FIELD_MAP => '_hypervisor_id',
ONAPP_FIELD_TYPE => 'integer',
);
$this->fields['created_at'] = array(
ONAPP_FIELD_MAP => '_created_at',
ONAPP_FIELD_TYPE => 'datetime',
);
$this->fields['updated_at'] = array(
ONAPP_FIELD_MAP => '_updated_at',
ONAPP_FIELD_TYPE => 'datetime',
);
$this->fields['label'] = array(
ONAPP_FIELD_MAP => '_label',
ONAPP_FIELD_TYPE => 'string',
);
$this->fields['published'] = array(
ONAPP_FIELD_MAP => '_published',
ONAPP_FIELD_TYPE => 'string',
);
$this->fields['user_group_id'] = array(
ONAPP_FIELD_MAP => '_user_group_id',
ONAPP_FIELD_TYPE => 'integer',
);
$this->fields['identifier'] = array(
ONAPP_FIELD_MAP => '_identifier',
ONAPP_FIELD_TYPE => 'string',
);
$this->fields['id'] = array(
ONAPP_FIELD_MAP => '_id',
ONAPP_FIELD_TYPE => 'integer',
);
$this->fields['data_store_id'] = array(
ONAPP_FIELD_MAP => '_data_store_id',
ONAPP_FIELD_TYPE => 'integer',
);
$this->fields['vdc_id'] = array(
ONAPP_FIELD_MAP => '_vdc_id',
ONAPP_FIELD_TYPE => 'integer',
);
break;
case 5.4:
$this->fields = $this->initFields( 5.3 );
break;
case 5.5:
$this->fields = $this->initFields( 5.4 );
$this->fields['description'] = array(
ONAPP_FIELD_MAP => '_description',
ONAPP_FIELD_TYPE => 'string',
);
break;
case 6.0:
$this->fields = $this->initFields( 5.5 );
$this->fields['organization_id'] = array(
ONAPP_FIELD_MAP => '_organization_id',
ONAPP_FIELD_TYPE => 'integer',
);
break;
}
parent::initFields( $version, __CLASS__ );
return $this->fields;
}
function getResource( $action = ONAPP_GETRESOURCE_DEFAULT ) {
switch ( $action ) {
default:
$resource = parent::getResource( $action );
}
return $resource;
}
}