jclouds-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Rishika (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (JCLOUDS-1279) Extending AWSS3BlobStore is not possible because of default access specifier
Date Wed, 26 Apr 2017 01:24:04 GMT

    [ https://issues.apache.org/jira/browse/JCLOUDS-1279?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15983964#comment-15983964

Rishika commented on JCLOUDS-1279:

I basically want to override putMultiPartBlob (in BaseBlobStore) to use custom min, max and
default MPU part sizes that we agree upon with our customers. Currently the class MultipartUploadSlicingAlgorithm
has been declared final, blocking us from setting custom values. I do agree we have recommendations
from various cloud providers to be adhered to, but we give flexibility to our customers to
decide value they want to within these limits.

> Extending AWSS3BlobStore is not possible because of default access specifier 
> -----------------------------------------------------------------------------
>                 Key: JCLOUDS-1279
>                 URL: https://issues.apache.org/jira/browse/JCLOUDS-1279
>             Project: jclouds
>          Issue Type: Bug
>          Components: jclouds-blobstore
>    Affects Versions: 2.0.0, 2.0.1
>         Environment: RHEL 7.2, Java 1.7
>            Reporter: Rishika
>             Fix For: 2.1.0, 2.0.2
> methods (constructor) in  AWSS3BlobStore are all package protected with default access
specifier and cannot be easily extended. This hinders us to create Custom blobstore outside
> {code:java}
>    @Inject
>    AWSS3BlobStore(BlobStoreContext context, BlobUtils blobUtils, Supplier<Location>
>             @Memoized Supplier<Set<? extends Location>> locations, PayloadSlicer
slicer, AWSS3Client sync,
>             Function<Set<BucketMetadata>, PageSet<? extends StorageMetadata>>
>             ContainerToBucketListOptions container2BucketListOptions, BucketToResourceList
>             ObjectToBlob object2Blob, BlobToHttpGetOptions blob2ObjectGetOptions, BlobToObject
>             BlobToObjectMetadata blob2ObjectMetadata,
>             ObjectToBlobMetadata object2BlobMd, Provider<FetchBlobMetadata> fetchBlobMetadataProvider)
>       super(context, blobUtils, defaultLocation, locations, slicer, sync, convertBucketsToStorageMetadata,
>                container2BucketListOptions, bucket2ResourceList, object2Blob, blob2ObjectGetOptions,
>                blob2ObjectMetadata, object2BlobMd, fetchBlobMetadataProvider);
>       this.blob2Object = blob2Object;
>    }
> {code}

This message was sent by Atlassian JIRA

View raw message