Example usage for com.amazonaws.services.s3.model PartSummary getPartNumber

List of usage examples for com.amazonaws.services.s3.model PartSummary getPartNumber

Introduction

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

Prototype

public int getPartNumber() 

Source Link

Document

Returns the part number describing this part's position relative to the other parts in the multipart upload.

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());
    }// w  w w . ja va2s  . 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;
}