Example usage for com.amazonaws.services.s3.model GetObjectRequest setUnmodifiedSinceConstraint

List of usage examples for com.amazonaws.services.s3.model GetObjectRequest setUnmodifiedSinceConstraint

Introduction

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

Prototype

public void setUnmodifiedSinceConstraint(Date date) 

Source Link

Document

Sets the optional unmodified constraint that restricts this request to executing only if the object has not been modified after the specified date.

Usage

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

License:Open Source License

@Override
public GetObjectExtendedResponseType getObjectExtended(final GetObjectExtendedType request) throws S3Exception {
    User requestUser = getRequestUser(request);
    OsgInternalS3Client internalS3Client = null;

    Boolean getMetaData = request.getGetMetaData();
    Long byteRangeStart = request.getByteRangeStart();
    Long byteRangeEnd = request.getByteRangeEnd();
    Date ifModifiedSince = request.getIfModifiedSince();
    Date ifUnmodifiedSince = request.getIfUnmodifiedSince();
    String ifMatch = request.getIfMatch();
    String ifNoneMatch = request.getIfNoneMatch();

    GetObjectRequest getRequest = new GetObjectRequest(request.getBucket(), request.getKey());
    if (byteRangeStart == null) {
        byteRangeStart = 0L;/*w ww . j  av  a  2s  . co m*/
    }
    if (byteRangeEnd != null) {
        getRequest.setRange(byteRangeStart, byteRangeEnd);
    }
    if (getMetaData != null) {
        //Get object metadata
    }
    if (ifModifiedSince != null) {
        getRequest.setModifiedSinceConstraint(ifModifiedSince);
    }
    if (ifUnmodifiedSince != null) {
        getRequest.setUnmodifiedSinceConstraint(ifUnmodifiedSince);
    }
    if (ifMatch != null) {
        List matchList = new ArrayList();
        matchList.add(ifMatch);
        getRequest.setMatchingETagConstraints(matchList);
    }
    if (ifNoneMatch != null) {
        List nonMatchList = new ArrayList();
        nonMatchList.add(ifNoneMatch);
        getRequest.setNonmatchingETagConstraints(nonMatchList);
    }
    try {
        internalS3Client = getS3Client(requestUser);
        AmazonS3Client s3Client = internalS3Client.getS3Client();
        S3Object response = s3Client.getObject(getRequest);

        GetObjectExtendedResponseType reply = request.getReply();
        populateResponseMetadata(reply, response.getObjectMetadata());
        reply.setDataInputStream(response.getObjectContent());
        reply.setByteRangeStart(request.getByteRangeStart());
        reply.setByteRangeEnd(request.getByteRangeEnd());
        return reply;
    } catch (AmazonServiceException e) {
        LOG.debug("Error from backend", e);
        throw S3ExceptionMapper.fromAWSJavaSDK(e);
    }
}

From source file:org.mule.module.s3.simpleapi.ConditionalConstraints.java

License:Open Source License

public void populate(@NotNull GetObjectRequest request) {
    request.setModifiedSinceConstraint(modifiedSince);
    request.setUnmodifiedSinceConstraint(unmodifiedSince);
}