org.jclouds.atmos.blobstore
Class AtmosBlobStore

java.lang.Object
  extended by org.jclouds.blobstore.internal.BaseBlobStore
      extended by org.jclouds.atmos.blobstore.AtmosBlobStore
All Implemented Interfaces:
org.jclouds.blobstore.BlobStore

@Singleton
public class AtmosBlobStore
extends org.jclouds.blobstore.internal.BaseBlobStore

Author:
Adrian Cole

Field Summary
 
Fields inherited from class org.jclouds.blobstore.internal.BaseBlobStore
blobUtils, context, defaultLocation, locations
 
Method Summary
 boolean blobExists(String container, String key)
          This implementation invokes AtmosClient.pathExists(java.lang.String)
 org.jclouds.blobstore.domain.BlobMetadata blobMetadata(String container, String key)
          This implementation invokes AtmosClient.headFile(java.lang.String)
 boolean containerExists(String container)
          This implementation invokes AtmosClient.pathExists(java.lang.String)
 boolean createContainerInLocation(org.jclouds.domain.Location location, String container)
          This implementation invokes AtmosClient.createDirectory(java.lang.String, org.jclouds.atmos.options.PutOptions...)
 boolean createContainerInLocation(org.jclouds.domain.Location location, String container, org.jclouds.blobstore.options.CreateContainerOptions options)
           
 void createDirectory(String container, String directory)
          This implementation invokes AtmosClient.createDirectory(java.lang.String, org.jclouds.atmos.options.PutOptions...)
protected  boolean deleteAndVerifyContainerGone(String container)
          This implementation invokes AtmosAsyncClient.deletePath(java.lang.String) followed by AtmosAsyncClient.pathExists(java.lang.String) until it is true.
 void deleteDirectory(String containerName, String directory)
          This implementation invokes removeBlob(java.lang.String, java.lang.String)
 boolean directoryExists(String container, String directory)
          This implementation invokes AtmosClient.pathExists(java.lang.String)
 org.jclouds.blobstore.domain.Blob getBlob(String container, String key, org.jclouds.blobstore.options.GetOptions options)
          This implementation invokes AtmosClient.readFile(java.lang.String, org.jclouds.http.options.GetOptions...)
 org.jclouds.blobstore.domain.PageSet<? extends org.jclouds.blobstore.domain.StorageMetadata> list()
          This implementation invokes AtmosClient.listDirectories(org.jclouds.atmos.options.ListOptions...)
 org.jclouds.blobstore.domain.PageSet<? extends org.jclouds.blobstore.domain.StorageMetadata> list(String container, org.jclouds.blobstore.options.ListContainerOptions options)
          This implementation invokes AtmosClient.listDirectory(java.lang.String, org.jclouds.atmos.options.ListOptions...)
 String putBlob(String container, org.jclouds.blobstore.domain.Blob blob)
          This implementation invokes AtmosClient.createFile(java.lang.String, org.jclouds.atmos.domain.AtmosObject, org.jclouds.atmos.options.PutOptions...)

Since there is no etag support in atmos, we just return the path.

 String putBlob(String container, org.jclouds.blobstore.domain.Blob blob, org.jclouds.blobstore.options.PutOptions options)
          This implementation invokes AtmosClient.createFile(java.lang.String, org.jclouds.atmos.domain.AtmosObject, org.jclouds.atmos.options.PutOptions...)

Since there is no etag support in atmos, we just return the path.

 void removeBlob(String container, String key)
          This implementation invokes AtmosClient.deletePath(java.lang.String)
 
Methods inherited from class org.jclouds.blobstore.internal.BaseBlobStore
blobBuilder, clearAndDeleteContainer, clearContainer, clearContainer, countBlobs, countBlobs, deleteContainer, getBlob, getContext, list, listAssignableLocations
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

blobMetadata

public org.jclouds.blobstore.domain.BlobMetadata blobMetadata(String container,
                                                              String key)
This implementation invokes AtmosClient.headFile(java.lang.String)


deleteAndVerifyContainerGone

protected boolean deleteAndVerifyContainerGone(String container)
This implementation invokes AtmosAsyncClient.deletePath(java.lang.String) followed by AtmosAsyncClient.pathExists(java.lang.String) until it is true.

Specified by:
deleteAndVerifyContainerGone in class org.jclouds.blobstore.internal.BaseBlobStore

createContainerInLocation

public boolean createContainerInLocation(org.jclouds.domain.Location location,
                                         String container)
This implementation invokes AtmosClient.createDirectory(java.lang.String, org.jclouds.atmos.options.PutOptions...)

Parameters:
location - currently ignored
container - directory name

createDirectory

public void createDirectory(String container,
                            String directory)
This implementation invokes AtmosClient.createDirectory(java.lang.String, org.jclouds.atmos.options.PutOptions...)

Specified by:
createDirectory in interface org.jclouds.blobstore.BlobStore
Overrides:
createDirectory in class org.jclouds.blobstore.internal.BaseBlobStore
Parameters:
container - directory name

deleteDirectory

public void deleteDirectory(String containerName,
                            String directory)
This implementation invokes removeBlob(java.lang.String, java.lang.String)

Specified by:
deleteDirectory in interface org.jclouds.blobstore.BlobStore
Overrides:
deleteDirectory in class org.jclouds.blobstore.internal.BaseBlobStore

containerExists

public boolean containerExists(String container)
This implementation invokes AtmosClient.pathExists(java.lang.String)


directoryExists

public boolean directoryExists(String container,
                               String directory)
This implementation invokes AtmosClient.pathExists(java.lang.String)

Specified by:
directoryExists in interface org.jclouds.blobstore.BlobStore
Overrides:
directoryExists in class org.jclouds.blobstore.internal.BaseBlobStore

blobExists

public boolean blobExists(String container,
                          String key)
This implementation invokes AtmosClient.pathExists(java.lang.String)

Parameters:
container - container
key - file name

getBlob

public org.jclouds.blobstore.domain.Blob getBlob(String container,
                                                 String key,
                                                 org.jclouds.blobstore.options.GetOptions options)
This implementation invokes AtmosClient.readFile(java.lang.String, org.jclouds.http.options.GetOptions...)


list

public org.jclouds.blobstore.domain.PageSet<? extends org.jclouds.blobstore.domain.StorageMetadata> list()
This implementation invokes AtmosClient.listDirectories(org.jclouds.atmos.options.ListOptions...)


list

public org.jclouds.blobstore.domain.PageSet<? extends org.jclouds.blobstore.domain.StorageMetadata> list(String container,
                                                                                                         org.jclouds.blobstore.options.ListContainerOptions options)
This implementation invokes AtmosClient.listDirectory(java.lang.String, org.jclouds.atmos.options.ListOptions...)


putBlob

public String putBlob(String container,
                      org.jclouds.blobstore.domain.Blob blob)
This implementation invokes AtmosClient.createFile(java.lang.String, org.jclouds.atmos.domain.AtmosObject, org.jclouds.atmos.options.PutOptions...)

Since there is no etag support in atmos, we just return the path.


putBlob

public String putBlob(String container,
                      org.jclouds.blobstore.domain.Blob blob,
                      org.jclouds.blobstore.options.PutOptions options)
This implementation invokes AtmosClient.createFile(java.lang.String, org.jclouds.atmos.domain.AtmosObject, org.jclouds.atmos.options.PutOptions...)

Since there is no etag support in atmos, we just return the path.


removeBlob

public void removeBlob(String container,
                       String key)
This implementation invokes AtmosClient.deletePath(java.lang.String)


createContainerInLocation

public boolean createContainerInLocation(org.jclouds.domain.Location location,
                                         String container,
                                         org.jclouds.blobstore.options.CreateContainerOptions options)


Copyright © 2009-2012 jclouds. All Rights Reserved.