Esempio n. 1
0
    /// <summary>Add SimpleS3 services to a service collection.</summary>
    /// <param name="collection">The service collection</param>
    public static IClientBuilder AddAmazonS3(this IServiceCollection collection)
    {
        ICoreBuilder coreBuilder = SimpleS3CoreServices.AddSimpleS3Core(collection);

        coreBuilder.UseAmazonS3();

        IHttpClientBuilder httpBuilder = coreBuilder.UseHttpClientFactory();

        httpBuilder.UseDefaultHttpPolicy();

        coreBuilder.Services.AddSingleton(x =>
        {
            //We have to call a specific constructor for dependency injection
            IObjectClient objectClient           = x.GetRequiredService <IObjectClient>();
            IBucketClient bucketClient           = x.GetRequiredService <IBucketClient>();
            IMultipartClient multipartClient     = x.GetRequiredService <IMultipartClient>();
            IMultipartTransfer multipartTransfer = x.GetRequiredService <IMultipartTransfer>();
            ITransfer transfer = x.GetRequiredService <ITransfer>();
            ISignedObjectClient?signedObjectClient = x.GetRequiredService <ISignedObjectClient>();
            return(new AmazonS3Client(objectClient, bucketClient, multipartClient, multipartTransfer, transfer, signedObjectClient));
        });

        //Add the client as the interface too
        coreBuilder.Services.AddSingleton <ISimpleClient>(x => x.GetRequiredService <AmazonS3Client>());

        return(new ClientBuilder(collection, httpBuilder, coreBuilder));
    }
Esempio n. 2
0
        internal Upload(IObjectOperations objectOperations, IMultipartTransfer multipartTransfer, string bucket, string objectKey)
        {
            _objectOperations  = objectOperations;
            _multipartTransfer = multipartTransfer;

            _request = new PutObjectRequest(bucket, objectKey, null);
        }
Esempio n. 3
0
 protected void Initialize(IObjectClient objectClient, IBucketClient bucketClient, IMultipartClient multipartClient, IMultipartTransfer multipartTransfer, ITransfer transfer, ISignedObjectClient signedObjectClient)
 {
     _objectClient       = objectClient;
     _bucketClient       = bucketClient;
     _multipartClient    = multipartClient;
     _multipartTransfer  = multipartTransfer;
     _transfer           = transfer;
     _signedObjectClient = signedObjectClient;
 }
Esempio n. 4
0
    private void Build(IServiceCollection services)
    {
        _serviceProvider = services.BuildServiceProvider();

        IObjectClient       objectClient       = _serviceProvider.GetRequiredService <IObjectClient>();
        IBucketClient       bucketClient       = _serviceProvider.GetRequiredService <IBucketClient>();
        IMultipartClient    multipartClient    = _serviceProvider.GetRequiredService <IMultipartClient>();
        IMultipartTransfer  multipartTransfer  = _serviceProvider.GetRequiredService <IMultipartTransfer>();
        ITransfer           transfer           = _serviceProvider.GetRequiredService <ITransfer>();
        ISignedObjectClient signedObjectClient = _serviceProvider.GetRequiredService <ISignedObjectClient>();

        Client = new SimpleClient(objectClient, bucketClient, multipartClient, multipartTransfer, transfer, signedObjectClient);
    }
Esempio n. 5
0
 internal AmazonS3Client(IObjectClient objectClient, IBucketClient bucketClient, IMultipartClient multipartClient, IMultipartTransfer multipartTransfer, ITransfer transfer, ISignedObjectClient signedObjectClient) : base(objectClient, bucketClient, multipartClient, multipartTransfer, transfer, signedObjectClient)
 {
 }
Esempio n. 6
0
 public Transfer(IObjectOperations objectOperations, IMultipartTransfer multipartTransfer)
 {
     _objectOperations  = objectOperations;
     _multipartTransfer = multipartTransfer;
 }
 internal GoogleCloudStorageClient(IObjectClient objectClient, IBucketClient bucketClient, IMultipartClient multipartClient, IMultipartTransfer multipartTransfer, ITransfer transfer, ISignedObjectClient signedObjectClient)
     : base(objectClient, bucketClient, multipartClient, multipartTransfer, transfer, signedObjectClient)
 {
 }
Esempio n. 8
0
 internal Download(IObjectOperations operations, IMultipartTransfer multipartTransfer, string bucket, string objectKey)
 {
     _request           = new GetObjectRequest(bucket, objectKey);
     _operations        = operations;
     _multipartTransfer = multipartTransfer;
 }
Esempio n. 9
0
 protected internal ClientBase(IObjectClient objectClient, IBucketClient bucketClient, IMultipartClient multipartClient, IMultipartTransfer multipartTransfer, ITransfer transfer, ISignedObjectClient signedObjectClient)
 {
     Client = new SimpleClient(objectClient, bucketClient, multipartClient, multipartTransfer, transfer, signedObjectClient);
 }
Esempio n. 10
0
 public SimpleClient(IObjectClient objectClient, IBucketClient bucketClient, IMultipartClient multipartClient, IMultipartTransfer multipartTransfer, ITransfer transfer, ISignedObjectClient signedObject)
 {
     Initialize(objectClient, bucketClient, multipartClient, multipartTransfer, transfer, signedObject);
 }