org.exoplatform.services.jcr.aws.storage.value.s3
Class S3ValueIOUtil

java.lang.Object
  extended by org.exoplatform.services.jcr.aws.storage.value.s3.S3ValueIOUtil

public class S3ValueIOUtil
extends java.lang.Object

S3 Value I/O Util.

Version:
$Id: S3ValueIOUtil.java 29441 2009-03-11 16:16:03Z pnedonosko $
Author:
Andrey Parfonov

Constructor Summary
S3ValueIOUtil()
           
 
Method Summary
static void createBucket(java.lang.String bucket, java.lang.String awsAccessKey, java.lang.String awsSecretAccessKey)
          Create S3 bucket.
static void deleteBucket(java.lang.String bucket, java.lang.String awsAccessKey, java.lang.String awsSecretAccessKey)
          Delete S3 bucket.
static boolean deleteValue(java.lang.String bucket, java.lang.String awsAccessKey, java.lang.String awsSecretAccessKey, java.lang.String key)
           
static java.lang.String[] getBucketList(java.lang.String bucket, java.lang.String awsAccessKey, java.lang.String awsSecretAccessKey, java.lang.String prefix)
           
static boolean isValueExists(java.lang.String bucket, java.lang.String awsAccessKey, java.lang.String awsSecretAccessKey, java.lang.String s3fielName)
          Check if S3 Value exists.
static ValueData readValue(java.lang.String bucket, java.lang.String awsAccessKey, java.lang.String awsSecretAccessKey, java.lang.String s3fielName, int orderNum, int maxBufferSize, java.io.File swapDir, FileCleaner cleaner)
          Read S3 Value into ValueData.
static void writeValue(java.lang.String bucket, java.lang.String awsAccessKey, java.lang.String awsSecretAccessKey, java.lang.String key, ValueData value)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

S3ValueIOUtil

public S3ValueIOUtil()
Method Detail

readValue

public static ValueData readValue(java.lang.String bucket,
                                  java.lang.String awsAccessKey,
                                  java.lang.String awsSecretAccessKey,
                                  java.lang.String s3fielName,
                                  int orderNum,
                                  int maxBufferSize,
                                  java.io.File swapDir,
                                  FileCleaner cleaner)
                           throws java.io.IOException
Read S3 Value into ValueData. Spool data large of max-buffer-size (maxBufferSize) into SwapFile.

Parameters:
bucket - S3 bucket name
awsAccessKey - AWS access key
awsSecretAccessKey - AWS secret key
s3fielName - S3 object name
orderNum - JCR Value order number
maxBufferSize - max-buffer-size, see configuration
swapDir - swap directory, see configuration
cleaner - Files cleaner
Returns:
ValueData
Throws:
java.io.IOException - read error

isValueExists

public static boolean isValueExists(java.lang.String bucket,
                                    java.lang.String awsAccessKey,
                                    java.lang.String awsSecretAccessKey,
                                    java.lang.String s3fielName)
                             throws java.io.IOException
Check if S3 Value exists.

Parameters:
bucket - S3 bucket name
awsAccessKey - AWS access key
awsSecretAccessKey - AWS secret key
s3fielName - S3 object name (JCR Value id + order number)
Returns:
boolean flag, true if exist
Throws:
java.io.IOException - operation error

createBucket

public static void createBucket(java.lang.String bucket,
                                java.lang.String awsAccessKey,
                                java.lang.String awsSecretAccessKey)
                         throws java.io.IOException
Create S3 bucket.

Parameters:
bucket - S3 bucket name
awsAccessKey - AWS access key
awsSecretAccessKey - AWS secret key
Throws:
java.io.IOException - operation error

deleteBucket

public static void deleteBucket(java.lang.String bucket,
                                java.lang.String awsAccessKey,
                                java.lang.String awsSecretAccessKey)
                         throws java.io.IOException
Delete S3 bucket.

Parameters:
bucket - S3 bucket name
awsAccessKey - AWS access key
awsSecretAccessKey - AWS secret key
Throws:
java.io.IOException - operation error

writeValue

public static void writeValue(java.lang.String bucket,
                              java.lang.String awsAccessKey,
                              java.lang.String awsSecretAccessKey,
                              java.lang.String key,
                              ValueData value)
                       throws java.io.IOException
Throws:
java.io.IOException

deleteValue

public static boolean deleteValue(java.lang.String bucket,
                                  java.lang.String awsAccessKey,
                                  java.lang.String awsSecretAccessKey,
                                  java.lang.String key)
                           throws java.io.IOException
Throws:
java.io.IOException

getBucketList

public static java.lang.String[] getBucketList(java.lang.String bucket,
                                               java.lang.String awsAccessKey,
                                               java.lang.String awsSecretAccessKey,
                                               java.lang.String prefix)
                                        throws java.io.IOException
Throws:
java.io.IOException


Copyright © 2012 eXo Platform SAS. All Rights Reserved.