Skip to content

Commit 47a9b54

Browse files
committed
Added QuotaSet model for StorageV2
1 parent 705e6da commit 47a9b54

File tree

1 file changed

+85
-0
lines changed

1 file changed

+85
-0
lines changed
Lines changed: 85 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,85 @@
1+
<?php declare(strict_types=1);
2+
3+
namespace OpenStack\BlockStorage\v2\Models;
4+
5+
use OpenStack\Common\Resource\Deletable;
6+
use OpenStack\Common\Resource\OperatorResource;
7+
use OpenStack\Common\Resource\Retrievable;
8+
use OpenStack\Common\Resource\Updateable;
9+
10+
/**
11+
* Represents a BlockStorage v2 Quota Set
12+
*
13+
* @property \OpenStack\BlockStorage\v2\Api $api
14+
*/
15+
class QuotaSet extends OperatorResource implements Retrievable, Updateable, Deletable
16+
{
17+
/** @var string */
18+
public $tenantId;
19+
20+
/** @var int */
21+
public $backupGigabytes;
22+
23+
/** @var int */
24+
public $backups;
25+
26+
/** @var int */
27+
public $gigabytes;
28+
29+
/** @var int */
30+
public $gigabytesIscsi;
31+
32+
/** @var int */
33+
public $perVolumeGigabytes;
34+
35+
/** @var int */
36+
public $snapshots;
37+
38+
/** @var int */
39+
public $snapshotsIscsi;
40+
41+
/** @var int */
42+
public $volumes;
43+
44+
/** @var int */
45+
public $volumesIscsi;
46+
47+
protected $aliases = [
48+
'backup_gigabytes' => 'backupGigabytes',
49+
'gigabytes' => 'gigabytes',
50+
'gigabytes_iscsi' => 'gigabytesIscsi',
51+
'per_volume_gigabytes' => 'perVolumeGigabytes',
52+
'snapshots_iscsi' => 'snapshotsIscsi',
53+
'volumes_iscsi' => 'volumesIscsi',
54+
'id' => 'tenantId'
55+
];
56+
57+
protected $resourceKey = 'quota_set';
58+
59+
/**
60+
* @inheritdoc
61+
*/
62+
public function retrieve()
63+
{
64+
$response = $this->execute($this->api->getQuotaSet(), ['tenantId' => (string)$this->tenantId]);
65+
$this->populateFromResponse($response);
66+
}
67+
68+
/**
69+
* @inheritdoc
70+
*/
71+
public function update()
72+
{
73+
$response = $this->executeWithState($this->api->putQuotaSet());
74+
$this->populateFromResponse($response);
75+
}
76+
77+
/**
78+
* @inheritdoc
79+
*/
80+
public function delete()
81+
{
82+
$response = $this->executeWithState($this->api->deleteQuotaSet());
83+
$this->populateFromResponse($response);
84+
}
85+
}

0 commit comments

Comments
 (0)