示例#1
0
 public ServiceBus(
     IBusControl massTransitBus,
     IContractValidatorService contractValidatorService,
     IBigMessageService bigMessageService = null,
     ObjectStorageConfiguration config    = null)
 {
     _massTransitBus           = massTransitBus;
     _contractValidatorService = contractValidatorService;
     _bigMessageService        = bigMessageService;
     _config = config;
 }
        /// <summary>
        /// Adds services required for using big messages.
        /// </summary>
        /// <param name="services">The <see cref="IServiceCollection"/> to add the services to.</param>
        /// <param name="configuration">The AWS object storage configuration.</param>
        /// <returns>The <see cref="IServiceCollection"/> so that additional calls can be chained.</returns>
        public static IServiceCollection AddBigMessages(this IServiceCollection services, ObjectStorageConfiguration configuration)
        {
            services.AddSingleton(configuration);
            services.AddScoped <IObjectStorage, AwsObjectStorage>();
            services.AddScoped <IObjectSerializer, JsonObjectSerializer>();
            services.AddScoped <IBigMessageService, BigMessageService>();

            return(services);
        }
示例#3
0
 public AwsObjectStorage(ObjectStorageConfiguration configuration)
 {
     _configuration = configuration;
     _client        = new Lazy <IAmazonS3>(AmazonS3ClientFactory);
 }