Example usage for com.amazonaws.services.s3 Headers S3_USER_METADATA_PREFIX

List of usage examples for com.amazonaws.services.s3 Headers S3_USER_METADATA_PREFIX

Introduction

In this page you can find the example usage for com.amazonaws.services.s3 Headers S3_USER_METADATA_PREFIX.

Prototype

String S3_USER_METADATA_PREFIX

To view the source code for com.amazonaws.services.s3 Headers S3_USER_METADATA_PREFIX.

Click Source Link

Document

Prefix for S3 user metadata: x-amz-meta-

Usage

From source file:org.opendedup.sdfs.filestore.cloud.BatchAwsS3ChunkStore.java

License:Open Source License

private Map<String, String> getUserMetaData(ObjectMetadata obj) {
    this.s3clientLock.readLock().lock();
    try {/*from w w  w  .jav a2  s .  c  o  m*/
        if (simpleS3) {
            HashMap<String, String> omd = new HashMap<String, String>();
            Set<String> mdk = obj.getRawMetadata().keySet();
            SDFSLogger.getLog().debug("md sz=" + mdk.size());
            for (String k : mdk) {
                if (k.toLowerCase().startsWith(Headers.S3_USER_METADATA_PREFIX)) {
                    String key = k.substring(Headers.S3_USER_METADATA_PREFIX.length()).toLowerCase();
                    omd.put(key, (String) obj.getRawMetadataValue(k));
                }
                SDFSLogger.getLog().debug("key=" + k + " value=" + obj.getRawMetadataValue(k));
            }
            Map<String, String> zd = obj.getUserMetadata();
            mdk = zd.keySet();
            SDFSLogger.getLog().debug("md sz=" + mdk.size());
            for (String k : mdk) {
                omd.put(k.toLowerCase(), zd.get(k));
                SDFSLogger.getLog().debug("key=" + k.toLowerCase() + " value=" + zd.get(k));
            }
            return omd;
        } else {
            return obj.getUserMetadata();
        }
    } finally {
        this.s3clientLock.readLock().unlock();
    }

}