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

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

Introduction

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

Prototype

String ETAG

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

Click Source Link

Usage

From source file:org.duracloud.s3storage.S3StorageProvider.java

License:Apache License

@Override
protected Map<String, String> removeCalculatedProperties(Map<String, String> contentProperties) {
    contentProperties = super.removeCalculatedProperties(contentProperties);
    if (contentProperties != null) {
        contentProperties.remove(Headers.CONTENT_LENGTH);
        contentProperties.remove(Headers.CONTENT_TYPE); // Content-Type is set on ObjectMetadata object
        contentProperties.remove(Headers.LAST_MODIFIED);
        contentProperties.remove(Headers.DATE);
        contentProperties.remove(Headers.ETAG);
        contentProperties.remove(Headers.CONTENT_LENGTH.toLowerCase());
        contentProperties.remove(Headers.CONTENT_TYPE.toLowerCase());
        contentProperties.remove(Headers.LAST_MODIFIED.toLowerCase());
        contentProperties.remove(Headers.DATE.toLowerCase());
        contentProperties.remove(Headers.ETAG.toLowerCase());
    }//from w ww  .j a  v a2  s.c  o m

    return contentProperties;
}

From source file:org.duracloud.s3storage.S3StorageProvider.java

License:Apache License

private Map<String, String> prepContentProperties(ObjectMetadata objMetadata) {
    Map<String, String> contentProperties = new HashMap<>();

    // Set the user properties
    Map<String, String> userProperties = objMetadata.getUserMetadata();
    for (String metaName : userProperties.keySet()) {
        String metaValue = userProperties.get(metaName);
        contentProperties.put(getWithSpace(decodeHeaderKey(metaName)), decodeHeaderValue(metaValue));
    }/*from   w w w .  ja v  a  2s .  co m*/

    // Set the response metadata
    Map<String, Object> responseMeta = objMetadata.getRawMetadata();
    for (String metaName : responseMeta.keySet()) {
        Object metaValue = responseMeta.get(metaName);
        if (metaValue instanceof String) {
            contentProperties.put(metaName, (String) metaValue);
        }
    }

    // Set MIMETYPE
    String contentType = objMetadata.getContentType();
    if (contentType != null) {
        contentProperties.put(PROPERTIES_CONTENT_MIMETYPE, contentType);
        contentProperties.put(Headers.CONTENT_TYPE, contentType);
    }

    // Set CONTENT_ENCODING
    String encoding = objMetadata.getContentEncoding();
    if (encoding != null) {
        contentProperties.put(Headers.CONTENT_ENCODING, encoding);
    }

    // Set SIZE
    long contentLength = objMetadata.getContentLength();
    if (contentLength >= 0) {
        String size = String.valueOf(contentLength);
        contentProperties.put(PROPERTIES_CONTENT_SIZE, size);
        contentProperties.put(Headers.CONTENT_LENGTH, size);
    }

    // Set CHECKSUM
    String checksum = objMetadata.getETag();
    if (checksum != null) {
        String eTagValue = getETagValue(checksum);
        contentProperties.put(PROPERTIES_CONTENT_CHECKSUM, eTagValue);
        contentProperties.put(PROPERTIES_CONTENT_MD5, eTagValue);
        contentProperties.put(Headers.ETAG, eTagValue);
    }

    // Set MODIFIED
    Date modified = objMetadata.getLastModified();
    if (modified != null) {
        String modDate = formattedDate(modified);
        contentProperties.put(PROPERTIES_CONTENT_MODIFIED, modDate);
        contentProperties.put(Headers.LAST_MODIFIED, modDate);
    }

    return contentProperties;
}