org.dasein.cloud.aws.compute
Class AMI

java.lang.Object
  extended by org.dasein.cloud.compute.AbstractImageSupport
      extended by org.dasein.cloud.aws.compute.AMI
All Implemented Interfaces:
org.dasein.cloud.AccessControlledService, org.dasein.cloud.compute.MachineImageSupport

public class AMI
extends org.dasein.cloud.compute.AbstractImageSupport

Version:
2013.01.1 Fixed a data consistency issue with AWS (issue #21)

Field Summary
 
Fields inherited from interface org.dasein.cloud.compute.MachineImageSupport
ANY, DOWNLOAD_IMAGE, GET_IMAGE, IMAGE_VM, LIST_IMAGE, MAKE_PUBLIC, REGISTER_IMAGE, REMOVE_IMAGE, SHARE_IMAGE, UPLOAD_IMAGE
 
Method Summary
 void addImageShare(String providerImageId, String accountNumber)
           
 void addPublicShare(String providerImageId)
           
protected  org.dasein.cloud.compute.MachineImage capture(org.dasein.cloud.compute.ImageCreateOptions options, org.dasein.cloud.AsynchronousTask<org.dasein.cloud.compute.MachineImage> task)
           
 org.dasein.cloud.compute.ImageCapabilities getCapabilities()
           
 org.dasein.cloud.compute.MachineImage getImage(String providerImageId)
           
 String getProviderTermForCustomImage(Locale locale, org.dasein.cloud.compute.ImageClass cls)
          Deprecated. 
 String getProviderTermForImage(Locale locale)
           
 String getProviderTermForImage(Locale locale, org.dasein.cloud.compute.ImageClass cls)
          Deprecated. 
 boolean hasPublicLibrary()
           
 org.dasein.cloud.Requirement identifyLocalBundlingRequirement()
           
 boolean isImageSharedWithPublic(String machineImageId)
           
 boolean isSubscribed()
           
 Iterable<org.dasein.cloud.compute.MachineImage> listImages(org.dasein.cloud.compute.ImageFilterOptions options)
           
 Iterable<org.dasein.cloud.ResourceStatus> listImageStatus(org.dasein.cloud.compute.ImageClass cls)
           
 Iterable<String> listShares(String forMachineImageId)
           
 Iterable<org.dasein.cloud.compute.MachineImageFormat> listSupportedFormats()
           
 Iterable<org.dasein.cloud.compute.MachineImageFormat> listSupportedFormatsForBundling()
           
 Iterable<org.dasein.cloud.compute.ImageClass> listSupportedImageClasses()
           
 Iterable<org.dasein.cloud.compute.MachineImageType> listSupportedImageTypes()
           
 String[] mapServiceAction(org.dasein.cloud.identity.ServiceAction action)
           
 org.dasein.cloud.compute.MachineImage registerImageBundle(org.dasein.cloud.compute.ImageCreateOptions options)
           
 void remove(String providerImageId, boolean checkState)
           
 void removeAllImageShares(String providerImageId)
           
 void removeImageShare(String providerImageId, String accountNumber)
           
 void removePublicShare(String providerImageId)
           
 void removeTags(String[] imageIds, org.dasein.cloud.Tag... tags)
           
 void removeTags(String imageId, org.dasein.cloud.Tag... tags)
           
 Iterable<org.dasein.cloud.compute.MachineImage> searchPublicImages(org.dasein.cloud.compute.ImageFilterOptions options)
           
 boolean supportsCustomImages()
           
 boolean supportsImageCapture(org.dasein.cloud.compute.MachineImageType type)
           
 boolean supportsImageSharing()
           
 boolean supportsImageSharingWithPublic()
           
 boolean supportsPublicLibrary(org.dasein.cloud.compute.ImageClass cls)
           
 void updateTags(String[] imageIds, org.dasein.cloud.Tag... tags)
           
 void updateTags(String imageId, org.dasein.cloud.Tag... tags)
           
 
Methods inherited from class org.dasein.cloud.compute.AbstractImageSupport
bundleVirtualMachine, bundleVirtualMachineAsync, captureImage, captureImageAsync, getContext, getMachineImage, getProvider, imageVirtualMachine, listImages, listImages, listMachineImages, listMachineImagesOwnedBy, matches, remove, searchImages, searchMachineImages, searchPublicImages, shareMachineImage, supportsDirectImageUpload
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

addImageShare

public void addImageShare(@Nonnull
                          String providerImageId,
                          @Nonnull
                          String accountNumber)
                   throws org.dasein.cloud.CloudException,
                          org.dasein.cloud.InternalException
Specified by:
addImageShare in interface org.dasein.cloud.compute.MachineImageSupport
Overrides:
addImageShare in class org.dasein.cloud.compute.AbstractImageSupport
Throws:
org.dasein.cloud.CloudException
org.dasein.cloud.InternalException

addPublicShare

public void addPublicShare(@Nonnull
                           String providerImageId)
                    throws org.dasein.cloud.CloudException,
                           org.dasein.cloud.InternalException
Specified by:
addPublicShare in interface org.dasein.cloud.compute.MachineImageSupport
Overrides:
addPublicShare in class org.dasein.cloud.compute.AbstractImageSupport
Throws:
org.dasein.cloud.CloudException
org.dasein.cloud.InternalException

getCapabilities

public org.dasein.cloud.compute.ImageCapabilities getCapabilities()

capture

protected org.dasein.cloud.compute.MachineImage capture(@Nonnull
                                                        org.dasein.cloud.compute.ImageCreateOptions options,
                                                        @Nullable
                                                        org.dasein.cloud.AsynchronousTask<org.dasein.cloud.compute.MachineImage> task)
                                                 throws org.dasein.cloud.CloudException,
                                                        org.dasein.cloud.InternalException
Overrides:
capture in class org.dasein.cloud.compute.AbstractImageSupport
Throws:
org.dasein.cloud.CloudException
org.dasein.cloud.InternalException

getImage

@Nullable
public org.dasein.cloud.compute.MachineImage getImage(@Nonnull
                                                               String providerImageId)
                                               throws org.dasein.cloud.CloudException,
                                                      org.dasein.cloud.InternalException
Throws:
org.dasein.cloud.CloudException
org.dasein.cloud.InternalException

getProviderTermForImage

@Nonnull
public String getProviderTermForImage(@Nonnull
                                              Locale locale)
Specified by:
getProviderTermForImage in interface org.dasein.cloud.compute.MachineImageSupport
Overrides:
getProviderTermForImage in class org.dasein.cloud.compute.AbstractImageSupport

getProviderTermForImage

@Deprecated
@Nonnull
public String getProviderTermForImage(@Nonnull
                                                         Locale locale,
                                                         @Nonnull
                                                         org.dasein.cloud.compute.ImageClass cls)
Deprecated. 


getProviderTermForCustomImage

@Deprecated
@Nonnull
public String getProviderTermForCustomImage(@Nonnull
                                                               Locale locale,
                                                               @Nonnull
                                                               org.dasein.cloud.compute.ImageClass cls)
Deprecated. 

Specified by:
getProviderTermForCustomImage in interface org.dasein.cloud.compute.MachineImageSupport
Overrides:
getProviderTermForCustomImage in class org.dasein.cloud.compute.AbstractImageSupport

hasPublicLibrary

public boolean hasPublicLibrary()
Specified by:
hasPublicLibrary in interface org.dasein.cloud.compute.MachineImageSupport
Overrides:
hasPublicLibrary in class org.dasein.cloud.compute.AbstractImageSupport

identifyLocalBundlingRequirement

@Nonnull
public org.dasein.cloud.Requirement identifyLocalBundlingRequirement()
                                                              throws org.dasein.cloud.CloudException,
                                                                     org.dasein.cloud.InternalException
Specified by:
identifyLocalBundlingRequirement in interface org.dasein.cloud.compute.MachineImageSupport
Overrides:
identifyLocalBundlingRequirement in class org.dasein.cloud.compute.AbstractImageSupport
Throws:
org.dasein.cloud.CloudException
org.dasein.cloud.InternalException

isImageSharedWithPublic

public boolean isImageSharedWithPublic(@Nonnull
                                       String machineImageId)
                                throws org.dasein.cloud.CloudException,
                                       org.dasein.cloud.InternalException
Specified by:
isImageSharedWithPublic in interface org.dasein.cloud.compute.MachineImageSupport
Overrides:
isImageSharedWithPublic in class org.dasein.cloud.compute.AbstractImageSupport
Throws:
org.dasein.cloud.CloudException
org.dasein.cloud.InternalException

isSubscribed

public boolean isSubscribed()
                     throws org.dasein.cloud.CloudException,
                            org.dasein.cloud.InternalException
Throws:
org.dasein.cloud.CloudException
org.dasein.cloud.InternalException

listImageStatus

@Nonnull
public Iterable<org.dasein.cloud.ResourceStatus> listImageStatus(@Nonnull
                                                                         org.dasein.cloud.compute.ImageClass cls)
                                                          throws org.dasein.cloud.CloudException,
                                                                 org.dasein.cloud.InternalException
Specified by:
listImageStatus in interface org.dasein.cloud.compute.MachineImageSupport
Overrides:
listImageStatus in class org.dasein.cloud.compute.AbstractImageSupport
Throws:
org.dasein.cloud.CloudException
org.dasein.cloud.InternalException

listShares

@Nonnull
public Iterable<String> listShares(@Nonnull
                                           String forMachineImageId)
                            throws org.dasein.cloud.CloudException,
                                   org.dasein.cloud.InternalException
Specified by:
listShares in interface org.dasein.cloud.compute.MachineImageSupport
Overrides:
listShares in class org.dasein.cloud.compute.AbstractImageSupport
Throws:
org.dasein.cloud.CloudException
org.dasein.cloud.InternalException

listSupportedImageClasses

@Nonnull
public Iterable<org.dasein.cloud.compute.ImageClass> listSupportedImageClasses()
                                                                        throws org.dasein.cloud.CloudException,
                                                                               org.dasein.cloud.InternalException
Specified by:
listSupportedImageClasses in interface org.dasein.cloud.compute.MachineImageSupport
Overrides:
listSupportedImageClasses in class org.dasein.cloud.compute.AbstractImageSupport
Throws:
org.dasein.cloud.CloudException
org.dasein.cloud.InternalException

listSupportedImageTypes

@Nonnull
public Iterable<org.dasein.cloud.compute.MachineImageType> listSupportedImageTypes()
                                                                            throws org.dasein.cloud.CloudException,
                                                                                   org.dasein.cloud.InternalException
Specified by:
listSupportedImageTypes in interface org.dasein.cloud.compute.MachineImageSupport
Overrides:
listSupportedImageTypes in class org.dasein.cloud.compute.AbstractImageSupport
Throws:
org.dasein.cloud.CloudException
org.dasein.cloud.InternalException

listSupportedFormats

@Nonnull
public Iterable<org.dasein.cloud.compute.MachineImageFormat> listSupportedFormats()
                                                                           throws org.dasein.cloud.CloudException,
                                                                                  org.dasein.cloud.InternalException
Specified by:
listSupportedFormats in interface org.dasein.cloud.compute.MachineImageSupport
Overrides:
listSupportedFormats in class org.dasein.cloud.compute.AbstractImageSupport
Throws:
org.dasein.cloud.CloudException
org.dasein.cloud.InternalException

listSupportedFormatsForBundling

@Nonnull
public Iterable<org.dasein.cloud.compute.MachineImageFormat> listSupportedFormatsForBundling()
                                                                                      throws org.dasein.cloud.CloudException,
                                                                                             org.dasein.cloud.InternalException
Specified by:
listSupportedFormatsForBundling in interface org.dasein.cloud.compute.MachineImageSupport
Overrides:
listSupportedFormatsForBundling in class org.dasein.cloud.compute.AbstractImageSupport
Throws:
org.dasein.cloud.CloudException
org.dasein.cloud.InternalException

mapServiceAction

@Nonnull
public String[] mapServiceAction(@Nonnull
                                         org.dasein.cloud.identity.ServiceAction action)
Specified by:
mapServiceAction in interface org.dasein.cloud.AccessControlledService
Overrides:
mapServiceAction in class org.dasein.cloud.compute.AbstractImageSupport

registerImageBundle

@Nonnull
public org.dasein.cloud.compute.MachineImage registerImageBundle(@Nonnull
                                                                         org.dasein.cloud.compute.ImageCreateOptions options)
                                                          throws org.dasein.cloud.CloudException,
                                                                 org.dasein.cloud.InternalException
Specified by:
registerImageBundle in interface org.dasein.cloud.compute.MachineImageSupport
Overrides:
registerImageBundle in class org.dasein.cloud.compute.AbstractImageSupport
Throws:
org.dasein.cloud.CloudException
org.dasein.cloud.InternalException

remove

public void remove(@Nonnull
                   String providerImageId,
                   boolean checkState)
            throws org.dasein.cloud.CloudException,
                   org.dasein.cloud.InternalException
Throws:
org.dasein.cloud.CloudException
org.dasein.cloud.InternalException

removeAllImageShares

public void removeAllImageShares(@Nonnull
                                 String providerImageId)
                          throws org.dasein.cloud.CloudException,
                                 org.dasein.cloud.InternalException
Specified by:
removeAllImageShares in interface org.dasein.cloud.compute.MachineImageSupport
Overrides:
removeAllImageShares in class org.dasein.cloud.compute.AbstractImageSupport
Throws:
org.dasein.cloud.CloudException
org.dasein.cloud.InternalException

removeImageShare

public void removeImageShare(@Nonnull
                             String providerImageId,
                             @Nonnull
                             String accountNumber)
                      throws org.dasein.cloud.CloudException,
                             org.dasein.cloud.InternalException
Specified by:
removeImageShare in interface org.dasein.cloud.compute.MachineImageSupport
Overrides:
removeImageShare in class org.dasein.cloud.compute.AbstractImageSupport
Throws:
org.dasein.cloud.CloudException
org.dasein.cloud.InternalException

removePublicShare

public void removePublicShare(@Nonnull
                              String providerImageId)
                       throws org.dasein.cloud.CloudException,
                              org.dasein.cloud.InternalException
Specified by:
removePublicShare in interface org.dasein.cloud.compute.MachineImageSupport
Overrides:
removePublicShare in class org.dasein.cloud.compute.AbstractImageSupport
Throws:
org.dasein.cloud.CloudException
org.dasein.cloud.InternalException

listImages

@Nonnull
public Iterable<org.dasein.cloud.compute.MachineImage> listImages(@Nullable
                                                                          org.dasein.cloud.compute.ImageFilterOptions options)
                                                           throws org.dasein.cloud.CloudException,
                                                                  org.dasein.cloud.InternalException
Throws:
org.dasein.cloud.CloudException
org.dasein.cloud.InternalException

searchPublicImages

@Nonnull
public Iterable<org.dasein.cloud.compute.MachineImage> searchPublicImages(@Nonnull
                                                                                  org.dasein.cloud.compute.ImageFilterOptions options)
                                                                   throws org.dasein.cloud.CloudException,
                                                                          org.dasein.cloud.InternalException
Specified by:
searchPublicImages in interface org.dasein.cloud.compute.MachineImageSupport
Overrides:
searchPublicImages in class org.dasein.cloud.compute.AbstractImageSupport
Throws:
org.dasein.cloud.CloudException
org.dasein.cloud.InternalException

supportsCustomImages

public boolean supportsCustomImages()
Specified by:
supportsCustomImages in interface org.dasein.cloud.compute.MachineImageSupport
Overrides:
supportsCustomImages in class org.dasein.cloud.compute.AbstractImageSupport

supportsImageCapture

public boolean supportsImageCapture(@Nonnull
                                    org.dasein.cloud.compute.MachineImageType type)
                             throws org.dasein.cloud.CloudException,
                                    org.dasein.cloud.InternalException
Specified by:
supportsImageCapture in interface org.dasein.cloud.compute.MachineImageSupport
Overrides:
supportsImageCapture in class org.dasein.cloud.compute.AbstractImageSupport
Throws:
org.dasein.cloud.CloudException
org.dasein.cloud.InternalException

supportsImageSharing

public boolean supportsImageSharing()
                             throws org.dasein.cloud.CloudException,
                                    org.dasein.cloud.InternalException
Specified by:
supportsImageSharing in interface org.dasein.cloud.compute.MachineImageSupport
Overrides:
supportsImageSharing in class org.dasein.cloud.compute.AbstractImageSupport
Throws:
org.dasein.cloud.CloudException
org.dasein.cloud.InternalException

supportsImageSharingWithPublic

public boolean supportsImageSharingWithPublic()
                                       throws org.dasein.cloud.CloudException,
                                              org.dasein.cloud.InternalException
Specified by:
supportsImageSharingWithPublic in interface org.dasein.cloud.compute.MachineImageSupport
Overrides:
supportsImageSharingWithPublic in class org.dasein.cloud.compute.AbstractImageSupport
Throws:
org.dasein.cloud.CloudException
org.dasein.cloud.InternalException

supportsPublicLibrary

public boolean supportsPublicLibrary(@Nonnull
                                     org.dasein.cloud.compute.ImageClass cls)
                              throws org.dasein.cloud.CloudException,
                                     org.dasein.cloud.InternalException
Specified by:
supportsPublicLibrary in interface org.dasein.cloud.compute.MachineImageSupport
Overrides:
supportsPublicLibrary in class org.dasein.cloud.compute.AbstractImageSupport
Throws:
org.dasein.cloud.CloudException
org.dasein.cloud.InternalException

updateTags

public void updateTags(@Nonnull
                       String imageId,
                       @Nonnull
                       org.dasein.cloud.Tag... tags)
                throws org.dasein.cloud.CloudException,
                       org.dasein.cloud.InternalException
Specified by:
updateTags in interface org.dasein.cloud.compute.MachineImageSupport
Overrides:
updateTags in class org.dasein.cloud.compute.AbstractImageSupport
Throws:
org.dasein.cloud.CloudException
org.dasein.cloud.InternalException

updateTags

public void updateTags(@Nonnull
                       String[] imageIds,
                       @Nonnull
                       org.dasein.cloud.Tag... tags)
                throws org.dasein.cloud.CloudException,
                       org.dasein.cloud.InternalException
Specified by:
updateTags in interface org.dasein.cloud.compute.MachineImageSupport
Overrides:
updateTags in class org.dasein.cloud.compute.AbstractImageSupport
Throws:
org.dasein.cloud.CloudException
org.dasein.cloud.InternalException

removeTags

public void removeTags(@Nonnull
                       String imageId,
                       @Nonnull
                       org.dasein.cloud.Tag... tags)
                throws org.dasein.cloud.CloudException,
                       org.dasein.cloud.InternalException
Specified by:
removeTags in interface org.dasein.cloud.compute.MachineImageSupport
Overrides:
removeTags in class org.dasein.cloud.compute.AbstractImageSupport
Throws:
org.dasein.cloud.CloudException
org.dasein.cloud.InternalException

removeTags

public void removeTags(@Nonnull
                       String[] imageIds,
                       @Nonnull
                       org.dasein.cloud.Tag... tags)
                throws org.dasein.cloud.CloudException,
                       org.dasein.cloud.InternalException
Specified by:
removeTags in interface org.dasein.cloud.compute.MachineImageSupport
Overrides:
removeTags in class org.dasein.cloud.compute.AbstractImageSupport
Throws:
org.dasein.cloud.CloudException
org.dasein.cloud.InternalException


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