443 lines
19 KiB
PHP
443 lines
19 KiB
PHP
|
|
<?php
|
||
|
|
/**
|
||
|
|
* ScalewayBlockV1alpha1ListSnapshotsResponse
|
||
|
|
*
|
||
|
|
* PHP version 7.4
|
||
|
|
*
|
||
|
|
* @category Class
|
||
|
|
* @package OpenAPI\Client
|
||
|
|
* @author OpenAPI Generator team
|
||
|
|
* @link https://openapi-generator.tech
|
||
|
|
*/
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Block Storage API
|
||
|
|
*
|
||
|
|
* Scaleway Block Storage provides network-attached storage that can be plugged in and out of cloud products such as Instances like a virtual hard-drive. Block Storage devices are independent from the local storage of Instances, and the fact that they are accessed over a network connection makes it easy to move them between Instances in the same Availability Zone. (switchcolumn) <Message type=\"important\"> This page includes the API reference documentation for all Block Storage Low Latency offers. If you wish to use the Basic Block Storage offers, refer to the [Instances API documentation page](/api/instance/#path-volume-types-list-volume-types). </Message> (switchcolumn) ## Quickstart 1. Configure your environment variables. <Message type=\"note\"> This is an optional step that seeks to simplify your usage of the Block Storage API. See [Availability Zones](#availability-zones) below for help choosing an Availability Zone. You can find your Project ID in the [Scaleway console](https://console.scaleway.com/project/settings). </Message> ```bash export SCW_SECRET_KEY=\"<API secret key>\" export SCW_DEFAULT_ZONE=\"<Scaleway Availability Zone>\" export SCW_PROJECT_ID=\"<Scaleway Project ID>\" ``` <Message type=\"important\"> Make sure that the Availability Zone (AZ) is the same as the one of your Instance. Block volumes can only be attached to Instances in the same AZ. </Message> 2. Edit the POST request payload you will use to create your Block volume. Replace the parameters in the following example: ```json '{ \"project_id\": \"d8e65f2b-cce9-40b7-80fc-6a2902db6826\", \"name\": \"my-volume\", \"perf_iops\": \"5000\", \"tags\": [\"donnerstag\"], \"from_empty\": { \"size\": \"30000000000\"} }' ``` | Parameter | Description | | :----------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `project_id` | **REQUIRED** The ID of the Project you want to create your Block volume in. To find your Project ID you can **[list the projects](/api/account#path-projects-list-all-projects-of-an-organization)** or consult the **[Scaleway console](https://console.scaleway.com/project/settings)**. | | `name` | **REQUIRED** Name of the volume | | `perf_iops` | **REQUIRED** The maximum IO/s expected. This amount is a shared limit between write and read operations, it will be determined by your usage. You must specify either `5000`, or `15000`. | | `tags` | The list of tags `[\"tag1\", \"tag2\", ...]` that will be associated with the Database Instance. Tags can be appended to the query of the [List Database Instances](#path-database-instances-list-database-instances) call to show results for only th
|
||
|
|
*
|
||
|
|
* The version of the OpenAPI document: v1alpha1
|
||
|
|
* Generated by: https://openapi-generator.tech
|
||
|
|
* Generator version: 7.11.0
|
||
|
|
*/
|
||
|
|
|
||
|
|
/**
|
||
|
|
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||
|
|
* https://openapi-generator.tech
|
||
|
|
* Do not edit the class manually.
|
||
|
|
*/
|
||
|
|
|
||
|
|
namespace OpenAPI\Client\Model;
|
||
|
|
|
||
|
|
use \ArrayAccess;
|
||
|
|
use \OpenAPI\Client\ObjectSerializer;
|
||
|
|
|
||
|
|
/**
|
||
|
|
* ScalewayBlockV1alpha1ListSnapshotsResponse Class Doc Comment
|
||
|
|
*
|
||
|
|
* @category Class
|
||
|
|
* @package OpenAPI\Client
|
||
|
|
* @author OpenAPI Generator team
|
||
|
|
* @link https://openapi-generator.tech
|
||
|
|
* @implements \ArrayAccess<string, mixed>
|
||
|
|
*/
|
||
|
|
class ScalewayBlockV1alpha1ListSnapshotsResponse implements ModelInterface, ArrayAccess, \JsonSerializable
|
||
|
|
{
|
||
|
|
public const DISCRIMINATOR = null;
|
||
|
|
|
||
|
|
/**
|
||
|
|
* The original name of the model.
|
||
|
|
*
|
||
|
|
* @var string
|
||
|
|
*/
|
||
|
|
protected static $openAPIModelName = 'scaleway.block.v1alpha1.ListSnapshotsResponse';
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Array of property to type mappings. Used for (de)serialization
|
||
|
|
*
|
||
|
|
* @var string[]
|
||
|
|
*/
|
||
|
|
protected static $openAPITypes = [
|
||
|
|
'snapshots' => '\OpenAPI\Client\Model\ScalewayBlockV1alpha1Snapshot[]',
|
||
|
|
'total_count' => 'int'
|
||
|
|
];
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Array of property to format mappings. Used for (de)serialization
|
||
|
|
*
|
||
|
|
* @var string[]
|
||
|
|
* @phpstan-var array<string, string|null>
|
||
|
|
* @psalm-var array<string, string|null>
|
||
|
|
*/
|
||
|
|
protected static $openAPIFormats = [
|
||
|
|
'snapshots' => null,
|
||
|
|
'total_count' => 'uint64'
|
||
|
|
];
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Array of nullable properties. Used for (de)serialization
|
||
|
|
*
|
||
|
|
* @var boolean[]
|
||
|
|
*/
|
||
|
|
protected static array $openAPINullables = [
|
||
|
|
'snapshots' => false,
|
||
|
|
'total_count' => false
|
||
|
|
];
|
||
|
|
|
||
|
|
/**
|
||
|
|
* If a nullable field gets set to null, insert it here
|
||
|
|
*
|
||
|
|
* @var boolean[]
|
||
|
|
*/
|
||
|
|
protected array $openAPINullablesSetToNull = [];
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Array of property to type mappings. Used for (de)serialization
|
||
|
|
*
|
||
|
|
* @return array
|
||
|
|
*/
|
||
|
|
public static function openAPITypes()
|
||
|
|
{
|
||
|
|
return self::$openAPITypes;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Array of property to format mappings. Used for (de)serialization
|
||
|
|
*
|
||
|
|
* @return array
|
||
|
|
*/
|
||
|
|
public static function openAPIFormats()
|
||
|
|
{
|
||
|
|
return self::$openAPIFormats;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Array of nullable properties
|
||
|
|
*
|
||
|
|
* @return array
|
||
|
|
*/
|
||
|
|
protected static function openAPINullables(): array
|
||
|
|
{
|
||
|
|
return self::$openAPINullables;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Array of nullable field names deliberately set to null
|
||
|
|
*
|
||
|
|
* @return boolean[]
|
||
|
|
*/
|
||
|
|
private function getOpenAPINullablesSetToNull(): array
|
||
|
|
{
|
||
|
|
return $this->openAPINullablesSetToNull;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Setter - Array of nullable field names deliberately set to null
|
||
|
|
*
|
||
|
|
* @param boolean[] $openAPINullablesSetToNull
|
||
|
|
*/
|
||
|
|
private function setOpenAPINullablesSetToNull(array $openAPINullablesSetToNull): void
|
||
|
|
{
|
||
|
|
$this->openAPINullablesSetToNull = $openAPINullablesSetToNull;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Checks if a property is nullable
|
||
|
|
*
|
||
|
|
* @param string $property
|
||
|
|
* @return bool
|
||
|
|
*/
|
||
|
|
public static function isNullable(string $property): bool
|
||
|
|
{
|
||
|
|
return self::openAPINullables()[$property] ?? false;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Checks if a nullable property is set to null.
|
||
|
|
*
|
||
|
|
* @param string $property
|
||
|
|
* @return bool
|
||
|
|
*/
|
||
|
|
public function isNullableSetToNull(string $property): bool
|
||
|
|
{
|
||
|
|
return in_array($property, $this->getOpenAPINullablesSetToNull(), true);
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Array of attributes where the key is the local name,
|
||
|
|
* and the value is the original name
|
||
|
|
*
|
||
|
|
* @var string[]
|
||
|
|
*/
|
||
|
|
protected static $attributeMap = [
|
||
|
|
'snapshots' => 'snapshots',
|
||
|
|
'total_count' => 'total_count'
|
||
|
|
];
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Array of attributes to setter functions (for deserialization of responses)
|
||
|
|
*
|
||
|
|
* @var string[]
|
||
|
|
*/
|
||
|
|
protected static $setters = [
|
||
|
|
'snapshots' => 'setSnapshots',
|
||
|
|
'total_count' => 'setTotalCount'
|
||
|
|
];
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Array of attributes to getter functions (for serialization of requests)
|
||
|
|
*
|
||
|
|
* @var string[]
|
||
|
|
*/
|
||
|
|
protected static $getters = [
|
||
|
|
'snapshots' => 'getSnapshots',
|
||
|
|
'total_count' => 'getTotalCount'
|
||
|
|
];
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Array of attributes where the key is the local name,
|
||
|
|
* and the value is the original name
|
||
|
|
*
|
||
|
|
* @return array
|
||
|
|
*/
|
||
|
|
public static function attributeMap()
|
||
|
|
{
|
||
|
|
return self::$attributeMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Array of attributes to setter functions (for deserialization of responses)
|
||
|
|
*
|
||
|
|
* @return array
|
||
|
|
*/
|
||
|
|
public static function setters()
|
||
|
|
{
|
||
|
|
return self::$setters;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Array of attributes to getter functions (for serialization of requests)
|
||
|
|
*
|
||
|
|
* @return array
|
||
|
|
*/
|
||
|
|
public static function getters()
|
||
|
|
{
|
||
|
|
return self::$getters;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* The original name of the model.
|
||
|
|
*
|
||
|
|
* @return string
|
||
|
|
*/
|
||
|
|
public function getModelName()
|
||
|
|
{
|
||
|
|
return self::$openAPIModelName;
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Associative array for storing property values
|
||
|
|
*
|
||
|
|
* @var mixed[]
|
||
|
|
*/
|
||
|
|
protected $container = [];
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Constructor
|
||
|
|
*
|
||
|
|
* @param mixed[]|null $data Associated array of property values
|
||
|
|
* initializing the model
|
||
|
|
*/
|
||
|
|
public function __construct(?array $data = null)
|
||
|
|
{
|
||
|
|
$this->setIfExists('snapshots', $data ?? [], null);
|
||
|
|
$this->setIfExists('total_count', $data ?? [], null);
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Sets $this->container[$variableName] to the given data or to the given default Value; if $variableName
|
||
|
|
* is nullable and its value is set to null in the $fields array, then mark it as "set to null" in the
|
||
|
|
* $this->openAPINullablesSetToNull array
|
||
|
|
*
|
||
|
|
* @param string $variableName
|
||
|
|
* @param array $fields
|
||
|
|
* @param mixed $defaultValue
|
||
|
|
*/
|
||
|
|
private function setIfExists(string $variableName, array $fields, $defaultValue): void
|
||
|
|
{
|
||
|
|
if (self::isNullable($variableName) && array_key_exists($variableName, $fields) && is_null($fields[$variableName])) {
|
||
|
|
$this->openAPINullablesSetToNull[] = $variableName;
|
||
|
|
}
|
||
|
|
|
||
|
|
$this->container[$variableName] = $fields[$variableName] ?? $defaultValue;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Show all the invalid properties with reasons.
|
||
|
|
*
|
||
|
|
* @return array invalid properties with reasons
|
||
|
|
*/
|
||
|
|
public function listInvalidProperties()
|
||
|
|
{
|
||
|
|
$invalidProperties = [];
|
||
|
|
|
||
|
|
return $invalidProperties;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Validate all the properties in the model
|
||
|
|
* return true if all passed
|
||
|
|
*
|
||
|
|
* @return bool True if all properties are valid
|
||
|
|
*/
|
||
|
|
public function valid()
|
||
|
|
{
|
||
|
|
return count($this->listInvalidProperties()) === 0;
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Gets snapshots
|
||
|
|
*
|
||
|
|
* @return \OpenAPI\Client\Model\ScalewayBlockV1alpha1Snapshot[]|null
|
||
|
|
*/
|
||
|
|
public function getSnapshots()
|
||
|
|
{
|
||
|
|
return $this->container['snapshots'];
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Sets snapshots
|
||
|
|
*
|
||
|
|
* @param \OpenAPI\Client\Model\ScalewayBlockV1alpha1Snapshot[]|null $snapshots Paginated returned list of snapshots.
|
||
|
|
*
|
||
|
|
* @return self
|
||
|
|
*/
|
||
|
|
public function setSnapshots($snapshots)
|
||
|
|
{
|
||
|
|
if (is_null($snapshots)) {
|
||
|
|
throw new \InvalidArgumentException('non-nullable snapshots cannot be null');
|
||
|
|
}
|
||
|
|
$this->container['snapshots'] = $snapshots;
|
||
|
|
|
||
|
|
return $this;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Gets total_count
|
||
|
|
*
|
||
|
|
* @return int|null
|
||
|
|
*/
|
||
|
|
public function getTotalCount()
|
||
|
|
{
|
||
|
|
return $this->container['total_count'];
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Sets total_count
|
||
|
|
*
|
||
|
|
* @param int|null $total_count Total number of snpashots in the project.
|
||
|
|
*
|
||
|
|
* @return self
|
||
|
|
*/
|
||
|
|
public function setTotalCount($total_count)
|
||
|
|
{
|
||
|
|
if (is_null($total_count)) {
|
||
|
|
throw new \InvalidArgumentException('non-nullable total_count cannot be null');
|
||
|
|
}
|
||
|
|
$this->container['total_count'] = $total_count;
|
||
|
|
|
||
|
|
return $this;
|
||
|
|
}
|
||
|
|
/**
|
||
|
|
* Returns true if offset exists. False otherwise.
|
||
|
|
*
|
||
|
|
* @param integer $offset Offset
|
||
|
|
*
|
||
|
|
* @return boolean
|
||
|
|
*/
|
||
|
|
public function offsetExists($offset): bool
|
||
|
|
{
|
||
|
|
return isset($this->container[$offset]);
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Gets offset.
|
||
|
|
*
|
||
|
|
* @param integer $offset Offset
|
||
|
|
*
|
||
|
|
* @return mixed|null
|
||
|
|
*/
|
||
|
|
#[\ReturnTypeWillChange]
|
||
|
|
public function offsetGet($offset)
|
||
|
|
{
|
||
|
|
return $this->container[$offset] ?? null;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Sets value based on offset.
|
||
|
|
*
|
||
|
|
* @param int|null $offset Offset
|
||
|
|
* @param mixed $value Value to be set
|
||
|
|
*
|
||
|
|
* @return void
|
||
|
|
*/
|
||
|
|
public function offsetSet($offset, $value): void
|
||
|
|
{
|
||
|
|
if (is_null($offset)) {
|
||
|
|
$this->container[] = $value;
|
||
|
|
} else {
|
||
|
|
$this->container[$offset] = $value;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Unsets offset.
|
||
|
|
*
|
||
|
|
* @param integer $offset Offset
|
||
|
|
*
|
||
|
|
* @return void
|
||
|
|
*/
|
||
|
|
public function offsetUnset($offset): void
|
||
|
|
{
|
||
|
|
unset($this->container[$offset]);
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Serializes the object to a value that can be serialized natively by json_encode().
|
||
|
|
* @link https://www.php.net/manual/en/jsonserializable.jsonserialize.php
|
||
|
|
*
|
||
|
|
* @return mixed Returns data which can be serialized by json_encode(), which is a value
|
||
|
|
* of any type other than a resource.
|
||
|
|
*/
|
||
|
|
#[\ReturnTypeWillChange]
|
||
|
|
public function jsonSerialize()
|
||
|
|
{
|
||
|
|
return ObjectSerializer::sanitizeForSerialization($this);
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Gets the string presentation of the object
|
||
|
|
*
|
||
|
|
* @return string
|
||
|
|
*/
|
||
|
|
public function __toString()
|
||
|
|
{
|
||
|
|
return json_encode(
|
||
|
|
ObjectSerializer::sanitizeForSerialization($this),
|
||
|
|
JSON_PRETTY_PRINT
|
||
|
|
);
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Gets a header-safe presentation of the object
|
||
|
|
*
|
||
|
|
* @return string
|
||
|
|
*/
|
||
|
|
public function toHeaderValue()
|
||
|
|
{
|
||
|
|
return json_encode(ObjectSerializer::sanitizeForSerialization($this));
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
|