# Class Volume

The Volume class represents a single block storage volume

  OpenCloud\Common\Base
  OpenCloud\Common\Resource\BaseResource
  OpenCloud\Common\Resource\PersistentResource
  OpenCloud\Volume\Resource\Volume

Namespace: OpenCloud\Volume\Resource
Located at OpenCloud/Volume/Resource/Volume.php

Methods summary
`public Guzzle\Http\Message\Response` | # `update( array $params = array() )` Update a resource Update a resource #### Parameters $params `array` $params #### Returns `Guzzle\Http\Message\Response` #### Overrides `OpenCloud\Common\Resource\PersistentResource::update()`
`public Guzzle\Http\Message\Response` | # `rename( array $params = array() )` Rename either the `display_description` or the `display_name` properties Rename either the `display_description` or the `display_name` properties #### Parameters $params `array` $params #### Returns `Guzzle\Http\Message\Response` #### Throws ``InvalidArgumentException``
`protected object` | # `createJson( )` Provides JSON for create request body Provides JSON for create request body #### Returns `object` #### Throws ``RuntimeException`` #### Overrides `OpenCloud\Common\Resource\PersistentResource::createJson()`

Methods inherited from OpenCloud\Common\Resource\PersistentResource
`checkExtension(), create(), delete(), getAlias(), noCreate(), noDelete(), noUpdate(), refresh(), refreshFromLocationUrl(), updateJson(), waitFor()`

Methods inherited from OpenCloud\Common\Resource\BaseResource
`__construct(), findLink(), getClient(), getMetadata(), getParent(), getService(), getUrl(), jsonCollectionElement(), jsonCollectionName(), jsonName(), parseResponse(), primaryKeyField(), resourceName(), setMetadata(), setParent(), setService()`

Methods inherited from OpenCloud\Common\Base
`__call(), checkJsonError(), generateUuid(), getInstance(), getJsonHeader(), getLogger(), getProperty(), makeResourceIteratorOptions(), populate(), propertyExists(), setLogger(), setProperty(), stripNamespace(), toCamel(), toUnderscores()`

Properties summary
`public mixed` | $id | `` | #
`public mixed` | $status | `` | #
`public mixed` | $display_name | `` | #
`public mixed` | $display_description | `` | #
`public mixed` | $size | `` | #
`public mixed` | $volume_type | `` | #
`public `OpenCloud\Common\Metadata`` | $metadata | `array()` | #
`public mixed` | $availability_zone | `` | #
`public mixed` | $snapshot_id | `` | #
`public array` | $attachments | `array()` | #
`public mixed` | $created_at | `` | #
`public mixed` | $source_volid | `` | #
`public mixed` | $imageRef | `` | # OpenStack only OpenStack only
`public mixed` | $bootable | `` | #
`protected static string` | $json_name | `'volume'` | #
`protected static string` | $url_resource | `'volumes'` | #
`protected array` | $createKeys | `array( 'snapshot_id', 'display_name', 'display_description', 'size', 'volume_type', 'availability_zone', 'metadata', 'source_volid', 'bootable', 'imageRef' )` | #
`protected array` | $associatedResources | `array()` | #

Properties inherited from OpenCloud\Common\Resource\BaseResource
`$parent, $service`

Properties inherited from OpenCloud\Common\Base
`$aliases`