forked from virtuozzo/OnApp-PHP-Wrapper-External
-
Notifications
You must be signed in to change notification settings - Fork 0
/
DNSZone.php
103 lines (98 loc) · 3.19 KB
/
DNSZone.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
<?php
/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
/**
* Managing DNS Zones
*
* @category API wrapper
* @package OnApp
* @author Andrew Yatskovets
* @copyright © 2013 OnApp
* @link http://www.onapp.com/
* @see OnApp
*/
/**
* DNS Zone
*
* The DNS Zone class represents the DNS Zone of the OnAPP installation.
*
* The OnApp_DNS_Zone class uses the following basic methods:
* {@link load}, {@link save}, {@link delete}, and {@link getList}.
*
* For full fields reference and curl request details visit: ( http://help.onapp.com/manual.php?m=2 )
*/
class OnApp_DNSZone extends OnApp {
/**
* root tag used in the API request
*
* @var string
*/
var $_tagRoot = 'dns_zone';
/**
* alias processing the object data
*
* @var string
*/
var $_resource = 'dns_zones';
/**
* API Fields description
*
* @param string|float $version OnApp API version
* @param string $className current class' name
*
* @return array
*/
/**
* 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 3.0:
case 3.1:
case 3.2:
case 3.3:
$this->fields = array(
'id' => array(
ONAPP_FIELD_MAP => '_id',
ONAPP_FIELD_TYPE => 'integer',
ONAPP_FIELD_READ_ONLY => true
),
'name' => array(
ONAPP_FIELD_MAP => '_name',
ONAPP_FIELD_REQUIRED => true,
ONAPP_FIELD_TYPE => 'string',
ONAPP_FIELD_DEFAULT_VALUE => ''
),
'created_at' => array(
ONAPP_FIELD_MAP => '_created_at',
ONAPP_FIELD_TYPE => 'datetime',
ONAPP_FIELD_READ_ONLY => true,
),
'updated_at' => array(
ONAPP_FIELD_MAP => '_updated_at',
ONAPP_FIELD_TYPE => 'datetime',
ONAPP_FIELD_READ_ONLY => true,
),
'user_id' => array(
ONAPP_FIELD_MAP => '_user_id',
ONAPP_FIELD_TYPE => 'integer',
ONAPP_FIELD_READ_ONLY => true,
),
'auto_populate' => array(
ONAPP_FIELD_MAP => '_auto_populate',
ONAPP_FIELD_TYPE => 'integer',
ONAPP_FIELD_REQUIRED => true,
ONAPP_FIELD_DEFAULT_VALUE => 0
)
);
break;
default:
$this->fields = $this->initFields( '3.0' );
break;
}
}
}