Class S3HttpApiModule<S extends S3Client>

  • All Implemented Interfaces:
    com.google.inject.Module

    public class S3HttpApiModule<S extends S3Client>
    extends AWSHttpApiModule<S>
    Configures the S3 connection, including logging and http transport.
    • Constructor Detail

      • S3HttpApiModule

        public S3HttpApiModule()
      • S3HttpApiModule

        protected S3HttpApiModule​(Class<S> syncClientType)
    • Method Detail

      • provideBucketToRegion

        @Provides
        @Singleton
        protected final com.google.common.cache.CacheLoader<String,​com.google.common.base.Optional<String>> provideBucketToRegion​(com.google.common.base.Supplier<Set<String>> regionSupplier,
                                                                                                                                        S3Client client)
      • bucketToRegion

        protected com.google.common.cache.CacheLoader<String,​com.google.common.base.Optional<String>> bucketToRegion​(com.google.common.base.Supplier<Set<String>> regionSupplier,
                                                                                                                           S3Client client)
      • bucketToRegion

        @Provides
        @Singleton
        protected final com.google.common.cache.LoadingCache<String,​com.google.common.base.Optional<String>> bucketToRegion​(com.google.common.cache.CacheLoader<String,​com.google.common.base.Optional<String>> loader)
      • provideDefaultRegionForBucket

        @Provides
        @Singleton
        protected final com.google.common.base.Supplier<String> provideDefaultRegionForBucket​(com.google.common.base.Supplier<String> defaultRegion)
      • defaultRegionForBucket

        protected com.google.common.base.Supplier<String> defaultRegionForBucket​(com.google.common.base.Supplier<String> defaultRegion)
      • provideBucketURI

        @Provides
        @Singleton
        protected final com.google.common.base.Supplier<URI> provideBucketURI​(com.google.common.base.Supplier<String> defaultRegion,
                                                                              org.jclouds.location.functions.RegionToEndpointOrProviderIfNull regionToEndpoint)
      • configure

        protected void configure()
        Overrides:
        configure in class org.jclouds.rest.config.HttpApiModule<S extends S3Client>
      • provideRequestAuthorizeSignature

        @Provides
        @Singleton
        protected final RequestAuthorizeSignature provideRequestAuthorizeSignature​(com.google.inject.Injector i,
                                                                                   @Named("jclouds.s3.signer-version")
                                                                                   int version)
      • providesRequestAuthorizeSignature

        protected RequestAuthorizeSignature providesRequestAuthorizeSignature​(com.google.inject.Injector i,
                                                                              int version)
      • provideRequestSigner

        @Provides
        @Singleton
        protected final org.jclouds.rest.RequestSigner provideRequestSigner​(RequestAuthorizeSignature in)
      • guiceProvideTimeStamp

        @Provides
        protected final String guiceProvideTimeStamp​(com.google.common.base.Supplier<String> cache)
      • provideTimeStamp

        protected String provideTimeStamp​(com.google.common.base.Supplier<String> cache)
      • provideTimeStampCache

        @Provides
        @Singleton
        protected final com.google.common.base.Supplier<String> provideTimeStampCache​(@Named("jclouds.session-interval")
                                                                                      long seconds,
                                                                                      org.jclouds.date.DateService dateService)
        borrowing concurrency code to ensure that caching takes place properly
      • provideTimeStampDate

        @Provides
        protected Date provideTimeStampDate​(com.google.common.base.Supplier<Date> cache)
      • guiceProvideTimeStampCacheDate

        @Provides
        @Singleton
        protected final com.google.common.base.Supplier<Date> guiceProvideTimeStampCacheDate​(@Named("jclouds.session-interval")
                                                                                             long seconds,
                                                                                             com.google.common.base.Supplier<String> timestamp,
                                                                                             org.jclouds.date.DateService dateService)
        borrowing concurrency code to ensure that caching takes place properly
      • provideTimeStampCacheDate

        protected com.google.common.base.Supplier<Date> provideTimeStampCacheDate​(@Named("jclouds.session-interval")
                                                                                  long seconds,
                                                                                  com.google.common.base.Supplier<String> timestamp,
                                                                                  org.jclouds.date.DateService dateService)