Service/Amazon/Ec2/Ebs.php
Zend Framework
LICENSE
This source file is subject to the new BSD license that is bundled with this package in the file LICENSE.txt. It is also available through the world-wide-web at this URL: http://framework.zend.com/license/new-bsd If you did not receive a copy of the license and are unable to obtain it through the world-wide-web, please send an email to [email protected] so we can send you a copy immediately.
- Category
- Zend
- Copyright
- Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
- License
- New BSD License
- Package
- Zend_Service_Amazon
- Subpackage
- Ec2
- Version
- $Id: Ebs.php 24593 2012-01-05 20:35:02Z matthew $
\Zend_Service_Amazon_Ec2_Ebs
An Amazon EC2 interface to create, describe, attach, detach and delete Elastic Block Storage Volumes and Snaphsots.
- Parent(s)
- \Zend_Service_Amazon_Ec2_Abstract < \Zend_Service_Amazon_Abstract < \Zend_Service_Abstract
- Category
- Zend
- Copyright
- Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
- License
- New BSD License
Properties

string $_accessKey = - Type
- string
- Inherited_from
- \Zend_Service_Amazon_Abstract::$$_accessKey
- Inherited_from
- \Zend_Service_Amazon_Ec2_Abstract::$$_accessKey

string $_defaultAccessKey = nullnullDetails- Type
- string
- Inherited_from
- \Zend_Service_Amazon_Abstract::$$_defaultAccessKey
- Inherited_from
- \Zend_Service_Amazon_Ec2_Abstract::$$_defaultAccessKey

string $_defaultRegion = nullnullDetails- Type
- string
- Inherited_from
- \Zend_Service_Amazon_Ec2_Abstract::$$_defaultRegion

string $_defaultSecretKey = nullnullDetails- Type
- string
- Inherited_from
- \Zend_Service_Amazon_Abstract::$$_defaultSecretKey
- Inherited_from
- \Zend_Service_Amazon_Ec2_Abstract::$$_defaultSecretKey

$_ec2ApiVersion = '2009-04-04'
'2009-04-04'Details- Type
- n/a
- Inherited_from
- \Zend_Service_Amazon_Ec2_Abstract::$$_ec2ApiVersion

$_ec2Endpoint = 'ec2.amazonaws.com'
'ec2.amazonaws.com'Details- Type
- n/a
- Inherited_from
- \Zend_Service_Amazon_Ec2_Abstract::$$_ec2Endpoint

$_ec2SignatureMethod = 'HmacSHA256'Signature Encoding Method
Inherited from: \Zend_Service_Amazon_Ec2_Abstract::$$_ec2SignatureMethod'HmacSHA256'Details- Type
- n/a
- Inherited_from
- \Zend_Service_Amazon_Ec2_Abstract::$$_ec2SignatureMethod

$_ec2SignatureVersion = '2'Signature Version
Inherited from: \Zend_Service_Amazon_Ec2_Abstract::$$_ec2SignatureVersion'2'Details- Type
- n/a
- Inherited_from
- \Zend_Service_Amazon_Ec2_Abstract::$$_ec2SignatureVersion

\Zend_Http_Client $_httpClient = nullHTTP Client used to query all web services
Inherited from: \Zend_Service_Abstract::$$_httpClient\Zend_Service_Amazon_Abstract::$$_httpClient\Zend_Service_Amazon_Ec2_Abstract::$$_httpClientnullDetails- Type
- \Zend_Http_Client
- Inherited_from
- \Zend_Service_Abstract::$$_httpClient
- Inherited_from
- \Zend_Service_Amazon_Abstract::$$_httpClient
- Inherited_from
- \Zend_Service_Amazon_Ec2_Abstract::$$_httpClient

$_httpTimeout = 10Period after which HTTP request will timeout in seconds
Inherited from: \Zend_Service_Amazon_Ec2_Abstract::$$_httpTimeout10Details- Type
- n/a
- Inherited_from
- \Zend_Service_Amazon_Ec2_Abstract::$$_httpTimeout

string $_region = - Type
- string
- Inherited_from
- \Zend_Service_Amazon_Ec2_Abstract::$$_region

string $_secretKey = - Type
- string
- Inherited_from
- \Zend_Service_Amazon_Abstract::$$_secretKey
- Inherited_from
- \Zend_Service_Amazon_Ec2_Abstract::$$_secretKey

array $_validEc2Regions = array('eu-west-1', 'us-east-1')An array that contains all the valid Amazon Ec2 Regions.
Inherited from: \Zend_Service_Amazon_Ec2_Abstract::$$_validEc2Regionsarray('eu-west-1', 'us-east-1')Details- Type
- array
- Inherited_from
- \Zend_Service_Amazon_Ec2_Abstract::$$_validEc2Regions
Methods

__construct( $accessKey = null, $secretKey = null, string $region = null) : void
| Name | Type | Description |
|---|---|---|
| $accessKey | ||
| $secretKey | ||
| $region | string | Sets the AWS Region |

_getAccessKey() : stringMethod to fetch the Access Key
Inherited from: \Zend_Service_Amazon_Abstract::_getAccessKey()\Zend_Service_Amazon_Ec2_Abstract::_getAccessKey()| Type | Description |
|---|---|
| string |

_getRegion() : stringMethod to fetch the AWS Region
Inherited from: \Zend_Service_Amazon_Ec2_Abstract::_getRegion()| Type | Description |
|---|---|
| string |

_getSecretKey() : stringMethod to fetch the Secret AWS Key
Inherited from: \Zend_Service_Amazon_Abstract::_getSecretKey()\Zend_Service_Amazon_Ec2_Abstract::_getSecretKey()| Type | Description |
|---|---|
| string |

addRequiredParameters(array $parameters) : arrayAdds required authentication and version parameters to an array of parameters
Inherited from: \Zend_Service_Amazon_Ec2_Abstract::addRequiredParameters()The required parameters are: - AWSAccessKey - SignatureVersion - Timestamp - Version and - Signature
If a required parameter is already set in the $parameters array, it is overwritten.
| Name | Type | Description |
|---|---|---|
| $parameters | array | the array to which to add the required parameters. |
| Type | Description |
|---|---|
| array |

attachVolume(string $volumeId, string $instanceId, string $device) : arrayAttaches an Amazon EBS volume to an instance
| Name | Type | Description |
|---|---|---|
| $volumeId | string | The ID of the Amazon EBS volume |
| $instanceId | string | The ID of the instance to which the volume attaches |
| $device | string | Specifies how the device is exposed to the instance (e.g., /dev/sdh). |
| Type | Description |
|---|---|
| array |

checkForErrors(\Zend_Service_Amazon_Ec2_Response $response) : voidChecks for errors responses from Amazon
Inherited from: \Zend_Service_Amazon_Ec2_Abstract::checkForErrors()| Name | Type | Description |
|---|---|---|
| $response | \Zend_Service_Amazon_Ec2_Response | the response object to check. |
| Exception | Description |
|---|---|
| \Zend_Service_Amazon_Ec2_Exception | if one or more errors are returned from Amazon. |

createNewVolume(string $size, string $availabilityZone) : arrayCreates a new Amazon EBS volume that you can mount from any Amazon EC2 instance.
You must specify an availability zone when creating a volume. The volume and any instance to which it attaches must be in the same availability zone.
| Name | Type | Description |
|---|---|---|
| $size | string | The size of the volume, in GiB. |
| $availabilityZone | string | The availability zone in which to create the new volume. |
| Type | Description |
|---|---|
| array |

createSnapshot(string $volumeId) : arrayCreates a snapshot of an Amazon EBS volume and stores it in Amazon S3.
You can use snapshots for backups, to launch instances from identical snapshots, and to save data before shutting down an instance
| Name | Type | Description |
|---|---|---|
| $volumeId | string | The ID of the Amazon EBS volume to snapshot |
| Type | Description |
|---|---|
| array |

createVolumeFromSnapshot(string $snapshotId, string $availabilityZone) : arrayCreates a new Amazon EBS volume that you can mount from any Amazon EC2 instance.
You must specify an availability zone when creating a volume. The volume and any instance to which it attaches must be in the same availability zone.
| Name | Type | Description |
|---|---|---|
| $snapshotId | string | The snapshot from which to create the new volume. |
| $availabilityZone | string | The availability zone in which to create the new volume. |
| Type | Description |
|---|---|
| array |

deleteSnapshot(string $snapshotId) : booleanDeletes a snapshot of an Amazon EBS volume that is stored in Amazon S3
| Name | Type | Description |
|---|---|---|
| $snapshotId | string | The ID of the Amazon EBS snapshot to delete |
| Type | Description |
|---|---|
| boolean |

deleteVolume(string $volumeId) : booleanDeletes an Amazon EBS volume
| Name | Type | Description |
|---|---|---|
| $volumeId | string | The ID of the volume to delete |
| Type | Description |
|---|---|
| boolean |

describeSnapshot(string | array $snapshotId = null) : arrayDescribes the status of Amazon EBS snapshots
| Name | Type | Description |
|---|---|---|
| $snapshotId | string | array | The ID or arry of ID's of the Amazon EBS snapshot |
| Type | Description |
|---|---|
| array |

describeVolume(string | array $volumeId = null) : arrayLists one or more Amazon EBS volumes that you own, If you do not specify any volumes, Amazon EBS returns all volumes that you own.
| Name | Type | Description |
|---|---|---|
| $volumeId | string | array | The ID or array of ID's of the volume(s) to list |
| Type | Description |
|---|---|
| array |

detachVolume(string $volumeId, string $instanceId = null, string $device = null, boolean $force = false) : arrayDetaches an Amazon EBS volume from an instance
| Name | Type | Description |
|---|---|---|
| $volumeId | string | The ID of the Amazon EBS volume |
| $instanceId | string | The ID of the instance from which the volume will detach |
| $device | string | The device name |
| $force | boolean | Forces detachment if the previous detachment attempt did not occur cleanly (logging into an instance, unmounting the volume, and detaching normally). This option can lead to data loss or a corrupted file system. Use this option only as a last resort to detach an instance from a failed instance. The instance will not have an opportunity to flush file system caches nor file system meta data. |
| Type | Description |
|---|---|
| array |

getHttpClient() : \Zend_Http_ClientGets the HTTP client object.
Inherited from: \Zend_Service_Abstract::getHttpClient()\Zend_Service_Amazon_Abstract::getHttpClient()\Zend_Service_Amazon_Ec2_Abstract::getHttpClient()| Type | Description |
|---|---|
| \Zend_Http_Client |

sendRequest(array $params = array()) : \Zend_Service_Amazon_Ec2_ResponseSends a HTTP request to the queue service using Zend_Http_Client
Inherited from: \Zend_Service_Amazon_Ec2_Abstract::sendRequest()| Name | Type | Description |
|---|---|---|
| $params | array | List of parameters to send with the request |
| Type | Description |
|---|---|
| \Zend_Service_Amazon_Ec2_Response |
| Exception | Description |
|---|---|
| \Zend_Service_Amazon_Ec2_Exception |

setHttpClient(\Zend_Http_Client $httpClient) : voidSets the HTTP client object to use for retrieving the feeds.
Inherited from: \Zend_Service_Abstract::setHttpClient()\Zend_Service_Amazon_Abstract::setHttpClient()\Zend_Service_Amazon_Ec2_Abstract::setHttpClient()If none is set, the default Zend_Http_Client will be used.
| Name | Type | Description |
|---|---|---|
| $httpClient | \Zend_Http_Client |

setKeys( $accessKey, $secretKey) : voidSet the keys to use when accessing SQS.
Inherited from: \Zend_Service_Amazon_Abstract::setKeys()\Zend_Service_Amazon_Ec2_Abstract::setKeys()| Name | Type | Description |
|---|---|---|
| $accessKey | ||
| $secretKey |

setRegion(string $region) : voidSet which region you are working in.
Inherited from: \Zend_Service_Amazon_Ec2_Abstract::setRegion()It will append the end point automaticly
| Name | Type | Description |
|---|---|---|
| $region | string |

signParameters( $paramaters) : stringComputes the RFC 2104-compliant HMAC signature for request parameters
Inherited from: \Zend_Service_Amazon_Ec2_Abstract::signParameters()This implements the Amazon Web Services signature, as per the following specification:
Sort all request parameters (including SignatureVersion and excluding Signature, the value of which is being created), ignoring case.
Iterate over the sorted list and append the parameter name (in its original case) and then its value. Do not URL-encode the parameter values before constructing this string. Do not use any separator characters when appending strings.
| Name | Type | Description |
|---|---|---|
| $paramaters |
| Type | Description |
|---|---|
| string | the signed data. |