org.dasein.cloud.azure.compute.disk
Class AzureDisk

java.lang.Object
  extended by org.dasein.cloud.compute.AbstractVolumeSupport
      extended by org.dasein.cloud.azure.compute.disk.AzureDisk
All Implemented Interfaces:
AccessControlledService, VolumeSupport

public class AzureDisk
extends AbstractVolumeSupport

Support for Azure block storage disks via the Dasein Cloud volume API.

Created by George Reese: 6/19/12 9:25 AM

Since:
2012-06
Version:
2012-06
Author:
George Reese (george.reese@imaginary.com)

Field Summary
 
Fields inherited from interface org.dasein.cloud.compute.VolumeSupport
ANY, ATTACH, CREATE_VOLUME, DETACH, GET_VOLUME, LIST_VOLUME, REMOVE_VOLUME
 
Constructor Summary
AzureDisk(Azure provider)
           
 
Method Summary
 void attach(String volumeId, String toServer, String device)
           
 String createVolume(VolumeCreateOptions options)
           
 void detach(String volumeId, boolean force)
           
 int getMaximumVolumeCount()
           
 Storage<Gigabyte> getMaximumVolumeSize()
           
 Storage<Gigabyte> getMinimumVolumeSize()
           
 String getProviderTermForVolume(Locale locale)
           
 Volume getVolume(String volumeId)
           
 Requirement getVolumeProductRequirement()
           
 boolean isSubscribed()
           
 boolean isVolumeSizeDeterminedByProduct()
           
 Iterable<String> listPossibleDeviceIds(Platform platform)
           
 Iterable<VolumeFormat> listSupportedFormats()
           
 Iterable<VolumeProduct> listVolumeProducts()
           
 Iterable<Volume> listVolumes()
           
 Iterable<Volume> listVolumes(VolumeFilterOptions volumeFilterOptions)
           
 Iterable<ResourceStatus> listVolumeStatus()
           
 String[] mapServiceAction(ServiceAction action)
           
 void remove(String volumeId)
           
 void removeTags(String[] strings, Tag... tags)
           
 void removeTags(String s, Tag... tags)
           
 void updateTags(String[] strings, Tag... tags)
           
 void updateTags(String s, Tag... tags)
           
 
Methods inherited from class org.dasein.cloud.compute.AbstractVolumeSupport
create, detach, getContext, getProvider, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

AzureDisk

public AzureDisk(Azure provider)
Method Detail

attach

public void attach(@Nonnull
                   String volumeId,
                   @Nonnull
                   String toServer,
                   @Nonnull
                   String device)
            throws InternalException,
                   CloudException
Specified by:
attach in interface VolumeSupport
Overrides:
attach in class AbstractVolumeSupport
Throws:
InternalException
CloudException

createVolume

@Nonnull
public String createVolume(@Nonnull
                                   VolumeCreateOptions options)
                    throws InternalException,
                           CloudException
Specified by:
createVolume in interface VolumeSupport
Overrides:
createVolume in class AbstractVolumeSupport
Throws:
InternalException
CloudException

detach

public void detach(@Nonnull
                   String volumeId,
                   boolean force)
            throws InternalException,
                   CloudException
Specified by:
detach in interface VolumeSupport
Overrides:
detach in class AbstractVolumeSupport
Throws:
InternalException
CloudException

getMaximumVolumeCount

public int getMaximumVolumeCount()
                          throws InternalException,
                                 CloudException
Specified by:
getMaximumVolumeCount in interface VolumeSupport
Overrides:
getMaximumVolumeCount in class AbstractVolumeSupport
Throws:
InternalException
CloudException

getMaximumVolumeSize

@Nullable
public Storage<Gigabyte> getMaximumVolumeSize()
                                       throws InternalException,
                                              CloudException
Specified by:
getMaximumVolumeSize in interface VolumeSupport
Overrides:
getMaximumVolumeSize in class AbstractVolumeSupport
Throws:
InternalException
CloudException

getMinimumVolumeSize

@Nonnull
public Storage<Gigabyte> getMinimumVolumeSize()
                                       throws InternalException,
                                              CloudException
Throws:
InternalException
CloudException

getProviderTermForVolume

@Nonnull
public String getProviderTermForVolume(@Nonnull
                                               Locale locale)

getVolume

@Nullable
public Volume getVolume(@Nonnull
                                 String volumeId)
                 throws InternalException,
                        CloudException
Specified by:
getVolume in interface VolumeSupport
Overrides:
getVolume in class AbstractVolumeSupport
Throws:
InternalException
CloudException

getVolumeProductRequirement

@Nonnull
public Requirement getVolumeProductRequirement()
                                        throws InternalException,
                                               CloudException
Specified by:
getVolumeProductRequirement in interface VolumeSupport
Overrides:
getVolumeProductRequirement in class AbstractVolumeSupport
Throws:
InternalException
CloudException

isVolumeSizeDeterminedByProduct

public boolean isVolumeSizeDeterminedByProduct()
                                        throws InternalException,
                                               CloudException
Specified by:
isVolumeSizeDeterminedByProduct in interface VolumeSupport
Overrides:
isVolumeSizeDeterminedByProduct in class AbstractVolumeSupport
Throws:
InternalException
CloudException

listPossibleDeviceIds

@Nonnull
public Iterable<String> listPossibleDeviceIds(@Nonnull
                                                      Platform platform)
                                       throws InternalException,
                                              CloudException
Throws:
InternalException
CloudException

listSupportedFormats

@Nonnull
public Iterable<VolumeFormat> listSupportedFormats()
                                            throws InternalException,
                                                   CloudException
Specified by:
listSupportedFormats in interface VolumeSupport
Overrides:
listSupportedFormats in class AbstractVolumeSupport
Throws:
InternalException
CloudException

listVolumeProducts

@Nonnull
public Iterable<VolumeProduct> listVolumeProducts()
                                           throws InternalException,
                                                  CloudException
Specified by:
listVolumeProducts in interface VolumeSupport
Overrides:
listVolumeProducts in class AbstractVolumeSupport
Throws:
InternalException
CloudException

listVolumeStatus

@Nonnull
public Iterable<ResourceStatus> listVolumeStatus()
                                          throws InternalException,
                                                 CloudException
Specified by:
listVolumeStatus in interface VolumeSupport
Overrides:
listVolumeStatus in class AbstractVolumeSupport
Throws:
InternalException
CloudException

listVolumes

@Nonnull
public Iterable<Volume> listVolumes()
                             throws InternalException,
                                    CloudException
Throws:
InternalException
CloudException

listVolumes

@Nonnull
public Iterable<Volume> listVolumes(@Nullable
                                            VolumeFilterOptions volumeFilterOptions)
                             throws InternalException,
                                    CloudException
Specified by:
listVolumes in interface VolumeSupport
Overrides:
listVolumes in class AbstractVolumeSupport
Throws:
InternalException
CloudException

isSubscribed

public boolean isSubscribed()
                     throws CloudException,
                            InternalException
Throws:
CloudException
InternalException

remove

public void remove(@Nonnull
                   String volumeId)
            throws InternalException,
                   CloudException
Throws:
InternalException
CloudException

removeTags

public void removeTags(@Nonnull
                       String s,
                       @Nonnull
                       Tag... tags)
                throws CloudException,
                       InternalException
Specified by:
removeTags in interface VolumeSupport
Overrides:
removeTags in class AbstractVolumeSupport
Throws:
CloudException
InternalException

removeTags

public void removeTags(@Nonnull
                       String[] strings,
                       @Nonnull
                       Tag... tags)
                throws CloudException,
                       InternalException
Specified by:
removeTags in interface VolumeSupport
Overrides:
removeTags in class AbstractVolumeSupport
Throws:
CloudException
InternalException

updateTags

public void updateTags(@Nonnull
                       String s,
                       @Nonnull
                       Tag... tags)
                throws CloudException,
                       InternalException
Specified by:
updateTags in interface VolumeSupport
Overrides:
updateTags in class AbstractVolumeSupport
Throws:
CloudException
InternalException

updateTags

public void updateTags(@Nonnull
                       String[] strings,
                       @Nonnull
                       Tag... tags)
                throws CloudException,
                       InternalException
Specified by:
updateTags in interface VolumeSupport
Overrides:
updateTags in class AbstractVolumeSupport
Throws:
CloudException
InternalException

mapServiceAction

@Nonnull
public String[] mapServiceAction(@Nonnull
                                         ServiceAction action)
Specified by:
mapServiceAction in interface AccessControlledService
Overrides:
mapServiceAction in class AbstractVolumeSupport


Copyright © 2013 enStratus Networks Inc. All Rights Reserved.