Example usage for com.amazonaws.services.s3.model ObjectMetadata addUserMetadata

List of usage examples for com.amazonaws.services.s3.model ObjectMetadata addUserMetadata

Introduction

In this page you can find the example usage for com.amazonaws.services.s3.model ObjectMetadata addUserMetadata.

Prototype

public void addUserMetadata(String key, String value) 

Source Link

Document

Adds the key value pair of custom user-metadata for the associated object.

Usage

From source file:com.clicktravel.infrastructure.persistence.aws.s3.S3FileStore.java

License:Apache License

@Override
public void write(final FilePath filePath, final FileItem fileItem) {
    checkInitialization();/*from  w w  w  .j av a 2s . c  om*/

    final ObjectMetadata metadata = new ObjectMetadata();
    metadata.addUserMetadata(USER_METADATA_FILENAME, fileItem.filename());
    metadata.addUserMetadata(USER_METADATA_LAST_UPDATED_TIME, formatter.print(fileItem.lastUpdatedTime()));
    metadata.setContentLength(fileItem.getBytes().length);
    final InputStream is = new ByteArrayInputStream(fileItem.getBytes());
    final String bucketName = bucketNameForFilePath(filePath);
    if (!amazonS3Client.doesBucketExist(bucketName)) {
        createBucket(bucketName);
    }
    final PutObjectRequest putObjectRequest = new PutObjectRequest(bucketName, filePath.filename(), is,
            metadata);
    amazonS3Client.putObject(putObjectRequest);
}

From source file:com.emc.vipr.s3.s3api.java

License:Open Source License

/********************************* Object Operations ******************************/
public static void CreateObjectWithMeta(String S3_ACCESS_KEY_ID, String S3_SECRET_KEY, String S3_ENDPOINT,
        String S3_ViPR_NAMESPACE, String S3_BUCKET, String key, InputStream content, String metaKey,
        String metaValue) throws Exception {

    System.out.println("Access ID:" + S3_ACCESS_KEY_ID);
    System.out.println("Access secret:" + S3_SECRET_KEY);
    System.out.println("Access URL:" + S3_ENDPOINT);
    System.out.println("Access namespace:" + S3_ViPR_NAMESPACE);
    System.out.println("Access bucket:" + S3_BUCKET);
    System.out.println("Access key:" + key);

    ViPRS3Client s3 = getS3Client(S3_ACCESS_KEY_ID, S3_SECRET_KEY, S3_ENDPOINT, S3_ViPR_NAMESPACE);
    // create the object in the demo bucket
    if (metaKey.equals("") && metaValue.equals("")) {

        s3.putObject(S3_BUCKET, key, content, null);
    } else {/*from w ww. ja v  a2 s . co m*/
        ObjectMetadata obj = new ObjectMetadata();
        obj.addUserMetadata(metaKey, metaValue);
        s3.putObject(S3_BUCKET, key, content, obj);
    }

}

From source file:com.emc.vipr.s3.s3api.java

License:Open Source License

public static void CreateLargeObject(String S3_ACCESS_KEY_ID, String S3_SECRET_KEY, String S3_ENDPOINT,
        String S3_ViPR_NAMESPACE, String S3_BUCKET, String key, File file, String metaKey, String metaValue)
        throws Exception {

    System.out.println("Access ID:" + S3_ACCESS_KEY_ID);
    System.out.println("Access secret:" + S3_SECRET_KEY);
    System.out.println("Access URL:" + S3_ENDPOINT);
    System.out.println("Access namespace:" + S3_ViPR_NAMESPACE);
    System.out.println("Access bucket:" + S3_BUCKET);
    System.out.println("Access key:" + key);

    ViPRS3Client s3 = getS3Client(S3_ACCESS_KEY_ID, S3_SECRET_KEY, S3_ENDPOINT, S3_ViPR_NAMESPACE);

    ObjectMetadata objmeta = new ObjectMetadata();
    if (!(metaKey.equals("") && metaValue.equals(""))) {

        objmeta.addUserMetadata(metaKey, metaValue);
    }//from   ww  w. j  av a2 s  . c o  m
    InitiateMultipartUploadRequest initRequest = new InitiateMultipartUploadRequest(S3_BUCKET, key)
            .withObjectMetadata(objmeta);
    InitiateMultipartUploadResult initResponse = s3.initiateMultipartUpload(initRequest);
    long partSize = 1 * 1024 * 1024; // Set part size to 1 MB.
    // list of UploadPartResponse objects for each part that is uploaded
    List<PartETag> partETags = new ArrayList<PartETag>();
    long filePosition = 0;
    for (int i = 1; filePosition < file.length(); i++) {
        // get the size of the chunk.  Note - the last part can be less than the chunk size
        partSize = Math.min(partSize, (file.length() - filePosition));

        System.out.println(String.format("Sending chunk [%d] starting at position [%d]", i, filePosition));

        // Create request to upload a part.
        UploadPartRequest uploadRequest = new UploadPartRequest().withBucketName(S3_BUCKET).withKey(key)
                .withUploadId(initResponse.getUploadId()).withPartNumber(i).withFileOffset(filePosition)
                .withFile(file).withPartSize(partSize);

        // Upload part and add response to our list.
        PartETag eTagPart = s3.uploadPart(uploadRequest).getPartETag();
        partETags.add(eTagPart);

        // set file position to the next part in the file
        filePosition += partSize;
    }
    System.out.println("Waiting for completion of multi-part upload");
    CompleteMultipartUploadRequest compRequest = new CompleteMultipartUploadRequest(S3_BUCKET, key,
            initResponse.getUploadId(), partETags);

    s3.completeMultipartUpload(compRequest);

}

From source file:com.emc.vipr.s3.sample._05_CreateObjectWithMetadata.java

License:Open Source License

public static void main(String[] args) throws Exception {
    // create the ViPR S3 Client
    ViPRS3Client s3 = ViPRS3Factory.getS3Client();

    // retrieve the object key and value from user
    System.out.println("Enter the object key:");
    String key = new BufferedReader(new InputStreamReader(System.in)).readLine();
    System.out.println("Enter the object content:");
    String content = new BufferedReader(new InputStreamReader(System.in)).readLine();

    //retrieve the object metadata key and value from user
    System.out.println("Enter the metadata key:");
    String metaKey = new BufferedReader(new InputStreamReader(System.in)).readLine();
    System.out.println("Enter the metadata content:");
    String metaValue = new BufferedReader(new InputStreamReader(System.in)).readLine();

    // create the metadata
    ObjectMetadata metadata = new ObjectMetadata();
    metadata.addUserMetadata(metaKey, metaValue);

    // create the object with the metadata in the demo bucket
    s3.putObject(ViPRS3Factory.S3_BUCKET, key, new StringInputStream(content), metadata);

    // print out object key/value and metadata key/value for validation
    System.out.println(String.format("created object [%s/%s] with metadata [%s=%s] and content: [%s]",
            ViPRS3Factory.S3_BUCKET, key, metaKey, metaValue, content));
}

From source file:com.eucalyptus.objectstorage.providers.s3.S3ProviderClient.java

License:Open Source License

protected ObjectMetadata getS3ObjectMetadata(PutObjectType request) {
    ObjectMetadata meta = new ObjectMetadata();
    if (request.getMetaData() != null) {
        for (MetaDataEntry m : request.getMetaData()) {
            meta.addUserMetadata(m.getName(), m.getValue());
        }//  w w  w  . j a va  2 s.  c  om
    }

    if (!Strings.isNullOrEmpty(request.getContentLength())) {
        meta.setContentLength(Long.parseLong(request.getContentLength()));
    }

    if (!Strings.isNullOrEmpty(request.getContentMD5())) {
        meta.setContentMD5(request.getContentMD5());
    }

    if (!Strings.isNullOrEmpty(request.getContentType())) {
        meta.setContentType(request.getContentType());
    }

    return meta;
}

From source file:com.eucalyptus.objectstorage.providers.s3.S3ProviderClient.java

License:Open Source License

@Override
public InitiateMultipartUploadResponseType initiateMultipartUpload(InitiateMultipartUploadType request)
        throws S3Exception {
    InitiateMultipartUploadResponseType reply = request.getReply();
    User requestUser = getRequestUser(request);
    OsgInternalS3Client internalS3Client = null;

    String bucketName = request.getBucket();
    String key = request.getKey();
    InitiateMultipartUploadRequest initiateMultipartUploadRequest = new InitiateMultipartUploadRequest(
            bucketName, key);//  www  . j a  v a  2 s . co m
    ObjectMetadata metadata = new ObjectMetadata();
    for (MetaDataEntry meta : request.getMetaData()) {
        metadata.addUserMetadata(meta.getName(), meta.getValue());
    }

    initiateMultipartUploadRequest.setObjectMetadata(metadata);
    try {
        internalS3Client = getS3Client(requestUser);
        AmazonS3Client s3Client = internalS3Client.getS3Client();
        InitiateMultipartUploadResult result = s3Client.initiateMultipartUpload(initiateMultipartUploadRequest);
        reply.setUploadId(result.getUploadId());
        reply.setBucket(bucketName);
        reply.setKey(key);
        return reply;
    } catch (AmazonServiceException e) {
        LOG.debug("Error from backend", e);
        throw S3ExceptionMapper.fromAWSJavaSDK(e);
    }
}

From source file:com.intuit.s3encrypt.S3Encrypt.java

License:Open Source License

private static void putS3Object(CommandLine cmd, AmazonS3EncryptionClient s3, String bucket, String filename,
        String keyname, String key) {
    String[] searchArgs = cmd.getOptionValues("put");
    System.out.println("Uploading a new object to S3 BUCKET = " + bucket + " FILENAME = " + filename);
    File file = new File(filename);
    PutObjectRequest request = new PutObjectRequest(bucket, filename, file);
    ObjectMetadata metadata = new ObjectMetadata();
    metadata.addUserMetadata(keyname, key);
    request.setMetadata(metadata);/*ww  w .ja v a2s . c om*/
    s3.putObject(request);
    System.out.println();
}

From source file:com.intuit.tank.vmManager.environment.amazon.AmazonS3.java

License:Open Source License

/**
 * /*from   w w  w .  j  a v a 2  s  . c o  m*/
 * @param key
 * @param scriptFile
 * @return
 */
public void storeFile(String bucketName, String path, Map<String, String> metaMap, InputStream in) {
    ObjectMetadata metaData = new ObjectMetadata();
    if (metaMap != null) {
        for (Entry<String, String> entry : metaMap.entrySet()) {
            metaData.addUserMetadata(entry.getKey(), entry.getValue());
        }
    }
    s3Client.putObject(bucketName, path, in, metaData);
}

From source file:com.netflix.hollow.example.producer.infrastructure.S3Publisher.java

License:Apache License

@Override
public void publishSnapshot(File snapshotFile, long stateVersion) {
    String objectName = getS3ObjectName(blobNamespace, "snapshot", stateVersion);

    ObjectMetadata metadata = new ObjectMetadata();
    metadata.addUserMetadata("to_state", String.valueOf(stateVersion));
    metadata.setHeader("Content-Length", snapshotFile.length());

    uploadFile(snapshotFile, objectName, metadata);

    /// now we update the snapshot index
    updateSnapshotIndex(stateVersion);/*from w w  w  . ja  v a 2s  . c  o  m*/
}

From source file:com.netflix.hollow.example.producer.infrastructure.S3Publisher.java

License:Apache License

@Override
public void publishDelta(File deltaFile, long previousVersion, long currentVersion) {
    String objectName = getS3ObjectName(blobNamespace, "delta", previousVersion);

    ObjectMetadata metadata = new ObjectMetadata();
    metadata.addUserMetadata("from_state", String.valueOf(previousVersion));
    metadata.addUserMetadata("to_state", String.valueOf(currentVersion));
    metadata.setHeader("Content-Length", deltaFile.length());

    uploadFile(deltaFile, objectName, metadata);
}