Example usage for com.amazonaws.services.s3.transfer TransferManagerBuilder standard

List of usage examples for com.amazonaws.services.s3.transfer TransferManagerBuilder standard

Introduction

In this page you can find the example usage for com.amazonaws.services.s3.transfer TransferManagerBuilder standard.

Prototype

public static TransferManagerBuilder standard() 

Source Link

Usage

From source file:org.ow2.proactive.scheduler.examples.S3ConnectorDownloader.java

License:Open Source License

/**
 * Download a list of files from S3. <br>
 * Requires a bucket name. <br>/*from  ww w .j  av a 2  s. c  o m*/
 * Requires a key prefix. <br>
 *
 * @param bucketName
 * @param keyPrefix
 * @param dirPath
 * @param pause
 * @param s3Client
 */
private void downloadDir(String bucketName, String keyPrefix, String dirPath, boolean pause,
        AmazonS3 s3Client) {
    getOut().println("downloading to directory: " + dirPath + (pause ? " (pause)" : ""));
    TransferManager transferManager = TransferManagerBuilder.standard().withS3Client(s3Client).build();

    try {
        MultipleFileDownload xfer = transferManager.downloadDirectory(bucketName, keyPrefix, new File(dirPath));
        // loop with Transfer.isDone()
        SchedulerExamplesUtils.showTransferProgress(xfer);
        // or block with Transfer.waitForCompletion()
        SchedulerExamplesUtils.waitForCompletion(xfer);
    } catch (AmazonServiceException e) {
        getErr().println(e.getMessage());
        System.exit(1);
    } finally {
        transferManager.shutdownNow();
    }
}

From source file:org.ow2.proactive.scheduler.examples.S3ConnectorDownloader.java

License:Open Source License

/**
 * Download a file from S3. <br>/*ww w.  ja  v a 2  s .co  m*/
 * Requires a bucket name. <br>
 * Requires a key prefix. <br>
 *
 * @param bucketName
 * @param keyName
 * @param filePath
 * @param pause
 * @param s3Client
 */
private void downloadFile(String bucketName, String keyName, String filePath, boolean pause,
        AmazonS3 s3Client) {
    getOut().println("Downloading to file: " + filePath + (pause ? " (pause)" : ""));

    File f = new File(filePath);
    TransferManager xferMgr = TransferManagerBuilder.standard().withS3Client(s3Client).build();
    try {
        Download xfer = xferMgr.download(bucketName, keyName, f);
        // loop with Transfer.isDone()
        SchedulerExamplesUtils.showTransferProgress(xfer);
        // or block with Transfer.waitForCompletion()
        SchedulerExamplesUtils.waitForCompletion(xfer);
    } catch (AmazonServiceException e) {
        getErr().println(e.getMessage());
        System.exit(1);
    } finally {
        xferMgr.shutdownNow();
    }
}

From source file:org.ow2.proactive.scheduler.examples.S3ConnectorUploader.java

License:Open Source License

/**
 * Upload a local directory to S3. <br>
 * Requires a bucket name. <br>// w  ww . j a  v a  2 s.c om
 * If recursive is set to true, upload all subdirectories recursively.
 *
 * @param dirPath local directory to upload
 * @param bucketName
 * @param keyPrefix
 * @param recursive
 * @param pause
 * @param s3Client
 */
private void uploadDir(String dirPath, String bucketName, String keyPrefix, boolean recursive, boolean pause,
        AmazonS3 s3Client) {
    getOut().println(
            "directory: " + dirPath + (recursive ? " (recursive)" : "") + (pause ? " (" + PAUSE + ")" : ""));

    File folder = new File(dirPath);
    String keyName = (keyPrefix != null) ? Paths.get(keyPrefix, folder.getName()).toString() : folder.getName();

    TransferManager transferManager = TransferManagerBuilder.standard().withS3Client(s3Client).build();
    try {
        MultipleFileUpload uploader = transferManager.uploadDirectory(bucketName, keyName, folder, recursive);
        // loop with Transfer.isDone()
        SchedulerExamplesUtils.showTransferProgress(uploader);
        // or block with Transfer.waitForCompletion()
        SchedulerExamplesUtils.waitForCompletion(uploader);
    } catch (AmazonServiceException e) {
        getErr().println(e.getErrorMessage());
        System.exit(1);
    }
    transferManager.shutdownNow();
}

From source file:org.ow2.proactive.scheduler.examples.S3ConnectorUploader.java

License:Open Source License

/**
 * Upload a local file to S3. <br>
 * Requires a bucket name. <br>//from w  ww .j a  v  a  2 s.  c o  m
 *
 * @param filePath
 * @param bucketName
 * @param keyPrefix
 * @param pause
 * @param s3Client
 */
private void uploadFile(String filePath, String bucketName, String keyPrefix, boolean pause,
        AmazonS3 s3Client) {
    getOut().println("file: " + filePath + (pause ? " (" + PAUSE + ")" : ""));

    File file = new File(filePath);

    String keyName = (keyPrefix != null) ? Paths.get(keyPrefix, file.getName()).toString() : file.getName();

    TransferManager transferManager = TransferManagerBuilder.standard().withS3Client(s3Client).build();
    try {
        Upload uploader = transferManager.upload(bucketName, keyName, file);
        // loop with Transfer.isDone()
        SchedulerExamplesUtils.showTransferProgress(uploader);
        //  or block with Transfer.waitForCompletion()
        SchedulerExamplesUtils.waitForCompletion(uploader);
    } catch (AmazonServiceException e) {
        getErr().println(e.getErrorMessage());
        System.exit(1);
    }
    transferManager.shutdownNow();
}