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

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

Introduction

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

Prototype

public Object getRawMetadataValue(String key) 

Source Link

Document

Returns the raw value of the metadata/headers for the specified key.

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   ww  w.  j a  v a  2s .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();
    }

}