Example usage for com.amazonaws.services.s3.model ListPartsRequest setMaxParts

List of usage examples for com.amazonaws.services.s3.model ListPartsRequest setMaxParts

Introduction

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

Prototype

public void setMaxParts(int maxParts) 

Source Link

Document

Sets the optional maximum number of parts to be returned in the part listing.

Usage

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

License:Open Source License

@Override
public ListPartsResponseType listParts(ListPartsType request) throws S3Exception {
    ListPartsResponseType reply = request.getReply();
    User requestUser = getRequestUser(request);
    OsgInternalS3Client internalS3Client = null;

    String bucketName = request.getBucket();
    String key = request.getKey();
    String uploadId = request.getUploadId();
    ListPartsRequest listPartsRequest = new ListPartsRequest(bucketName, key, uploadId);
    if (request.getMaxParts() != null) {
        listPartsRequest.setMaxParts(request.getMaxParts());
    }/*from  w w  w. j a  va 2s .c  o  m*/
    if (request.getPartNumberMarker() != null) {
        listPartsRequest.setPartNumberMarker(request.getPartNumberMarker());
    }
    try {
        internalS3Client = getS3Client(requestUser);
        AmazonS3Client s3Client = internalS3Client.getS3Client();

        PartListing listing = s3Client.listParts(listPartsRequest);
        reply.setBucket(bucketName);
        reply.setKey(key);
        reply.setUploadId(uploadId);
        Initiator initiator = new Initiator(listing.getInitiator().getId(),
                listing.getInitiator().getDisplayName());
        reply.setInitiator(initiator);
        CanonicalUser owner = new CanonicalUser(listing.getOwner().getId(),
                listing.getOwner().getDisplayName());
        reply.setOwner(owner);
        reply.setStorageClass(listing.getStorageClass());
        reply.setPartNumberMarker(listing.getPartNumberMarker());
        reply.setNextPartNumberMarker(listing.getNextPartNumberMarker());
        reply.setMaxParts(listing.getMaxParts());
        reply.setIsTruncated(listing.isTruncated());
        List<PartSummary> parts = listing.getParts();
        List<Part> replyParts = reply.getParts();
        for (PartSummary part : parts) {
            replyParts.add(
                    new Part(part.getPartNumber(), part.getETag(), part.getLastModified(), part.getSize()));
        }
    } catch (AmazonServiceException ex) {
        LOG.debug("Got service error from backend: " + ex.getMessage(), ex);
        throw S3ExceptionMapper.fromAWSJavaSDK(ex);
    }
    return reply;
}