org.dasein.cloud.aws.compute
Class EBSVolumeCapabilities

java.lang.Object
  extended by org.dasein.cloud.AbstractCapabilities<AWSCloud>
      extended by org.dasein.cloud.aws.compute.EBSVolumeCapabilities
All Implemented Interfaces:
org.dasein.cloud.Capabilities, org.dasein.cloud.compute.VolumeCapabilities

public class EBSVolumeCapabilities
extends org.dasein.cloud.AbstractCapabilities<AWSCloud>
implements org.dasein.cloud.compute.VolumeCapabilities

Describes the capabilities of AWS with respect to Dasein volume operations.

Created by Stas Maksimov: 10/03/2014 00:53

Since:
2014.03
Version:
2014.03 initial version
Author:
Stas Maksimov

Field Summary
 
Fields inherited from interface org.dasein.cloud.Capabilities
LIMIT_UNKNOWN, LIMIT_UNLIMITED
 
Constructor Summary
EBSVolumeCapabilities(AWSCloud provider)
           
 
Method Summary
 boolean canAttach(org.dasein.cloud.compute.VmState vmState)
           
 boolean canDetach(org.dasein.cloud.compute.VmState vmState)
           
 int getMaximumVolumeCount()
           
 org.dasein.util.uom.storage.Storage<org.dasein.util.uom.storage.Gigabyte> getMaximumVolumeSize()
           
 org.dasein.util.uom.storage.Storage<org.dasein.util.uom.storage.Gigabyte> getMinimumVolumeSize()
           
 String getProviderTermForVolume(Locale locale)
           
 org.dasein.cloud.Requirement getVolumeProductRequirement()
           
 boolean isVolumeSizeDeterminedByProduct()
           
 Iterable<String> listPossibleDeviceIds(org.dasein.cloud.compute.Platform platform)
           
 Iterable<org.dasein.cloud.compute.VolumeFormat> listSupportedFormats()
           
 org.dasein.cloud.Requirement requiresVMOnCreate()
           
 
Methods inherited from class org.dasein.cloud.AbstractCapabilities
getAccountNumber, getContext, getProvider, getRegionId
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.dasein.cloud.Capabilities
getAccountNumber, getRegionId
 

Constructor Detail

EBSVolumeCapabilities

public EBSVolumeCapabilities(AWSCloud provider)
Method Detail

canAttach

public boolean canAttach(org.dasein.cloud.compute.VmState vmState)
                  throws org.dasein.cloud.InternalException,
                         org.dasein.cloud.CloudException
Specified by:
canAttach in interface org.dasein.cloud.compute.VolumeCapabilities
Throws:
org.dasein.cloud.InternalException
org.dasein.cloud.CloudException

canDetach

public boolean canDetach(org.dasein.cloud.compute.VmState vmState)
                  throws org.dasein.cloud.InternalException,
                         org.dasein.cloud.CloudException
Specified by:
canDetach in interface org.dasein.cloud.compute.VolumeCapabilities
Throws:
org.dasein.cloud.InternalException
org.dasein.cloud.CloudException

getMaximumVolumeCount

public int getMaximumVolumeCount()
                          throws org.dasein.cloud.InternalException,
                                 org.dasein.cloud.CloudException
Specified by:
getMaximumVolumeCount in interface org.dasein.cloud.compute.VolumeCapabilities
Throws:
org.dasein.cloud.InternalException
org.dasein.cloud.CloudException

getMaximumVolumeSize

@Nullable
public org.dasein.util.uom.storage.Storage<org.dasein.util.uom.storage.Gigabyte> getMaximumVolumeSize()
                                                                                               throws org.dasein.cloud.InternalException,
                                                                                                      org.dasein.cloud.CloudException
Specified by:
getMaximumVolumeSize in interface org.dasein.cloud.compute.VolumeCapabilities
Throws:
org.dasein.cloud.InternalException
org.dasein.cloud.CloudException

getMinimumVolumeSize

@Nonnull
public org.dasein.util.uom.storage.Storage<org.dasein.util.uom.storage.Gigabyte> getMinimumVolumeSize()
                                                                                               throws org.dasein.cloud.InternalException,
                                                                                                      org.dasein.cloud.CloudException
Specified by:
getMinimumVolumeSize in interface org.dasein.cloud.compute.VolumeCapabilities
Throws:
org.dasein.cloud.InternalException
org.dasein.cloud.CloudException

getProviderTermForVolume

@Nonnull
public String getProviderTermForVolume(@Nonnull
                                               Locale locale)
Specified by:
getProviderTermForVolume in interface org.dasein.cloud.compute.VolumeCapabilities

getVolumeProductRequirement

@Nonnull
public org.dasein.cloud.Requirement getVolumeProductRequirement()
                                                         throws org.dasein.cloud.InternalException,
                                                                org.dasein.cloud.CloudException
Specified by:
getVolumeProductRequirement in interface org.dasein.cloud.compute.VolumeCapabilities
Throws:
org.dasein.cloud.InternalException
org.dasein.cloud.CloudException

isVolumeSizeDeterminedByProduct

public boolean isVolumeSizeDeterminedByProduct()
                                        throws org.dasein.cloud.InternalException,
                                               org.dasein.cloud.CloudException
Specified by:
isVolumeSizeDeterminedByProduct in interface org.dasein.cloud.compute.VolumeCapabilities
Throws:
org.dasein.cloud.InternalException
org.dasein.cloud.CloudException

listPossibleDeviceIds

@Nonnull
public Iterable<String> listPossibleDeviceIds(@Nonnull
                                                      org.dasein.cloud.compute.Platform platform)
                                       throws org.dasein.cloud.InternalException,
                                              org.dasein.cloud.CloudException
Specified by:
listPossibleDeviceIds in interface org.dasein.cloud.compute.VolumeCapabilities
Throws:
org.dasein.cloud.InternalException
org.dasein.cloud.CloudException

listSupportedFormats

@Nonnull
public Iterable<org.dasein.cloud.compute.VolumeFormat> listSupportedFormats()
                                                                     throws org.dasein.cloud.InternalException,
                                                                            org.dasein.cloud.CloudException
Specified by:
listSupportedFormats in interface org.dasein.cloud.compute.VolumeCapabilities
Throws:
org.dasein.cloud.InternalException
org.dasein.cloud.CloudException

requiresVMOnCreate

@Nonnull
public org.dasein.cloud.Requirement requiresVMOnCreate()
                                                throws org.dasein.cloud.InternalException,
                                                       org.dasein.cloud.CloudException
Specified by:
requiresVMOnCreate in interface org.dasein.cloud.compute.VolumeCapabilities
Throws:
org.dasein.cloud.InternalException
org.dasein.cloud.CloudException


Copyright © 2009-2014 Dell, Inc.. All Rights Reserved.