public static IServiceCollection AddAmazonWebServiceModule(this IServiceCollection services, IConfiguration configuration)
        {
            services.Configure <ColidTripleStoreOptions>(configuration.GetSection(nameof(ColidTripleStoreOptions)));
            services.Configure <AmazonWebServicesOptions>(configuration.GetSection(nameof(AmazonWebServicesOptions)));

            services.AddTransient <IEc2InstanceMetadataConnector, Ec2InstanceMetadataConnector>();
            services.AddTransient <INeptuneLoaderConnector, NeptuneLoaderConnector>();

            var awsOptions = new AmazonWebServicesOptions();

            configuration.Bind(nameof(AmazonWebServicesOptions), awsOptions);
            if (!awsOptions.S3UseMinIo)
            {
                services.AddTransient <IAmazonS3Service, AmazonS3Service>();
            }
            else
            {
                services.AddTransient <IAmazonS3Service, MinIoService>();
            }

            services.AddTransient <IAmazonDynamoDB, AmazonDynamoDbService>();


            return(services);
        }
示例#2
0
        public AmazonS3ServiceTests()
        {
            _mockEc2Connector = new Mock <IEc2InstanceMetadataConnector>();
            _awsConfig        = new AmazonWebServicesOptions {
                S3Region = "eu-cologne-1"
            };
            var awsOptionsMonitor = Mock.Of <IOptionsMonitor <AmazonWebServicesOptions> >(_ => _.CurrentValue == _awsConfig);

            _service = new AmazonS3Service(_mockEc2Connector.Object, awsOptionsMonitor, _logger);
        }
 public GraphManagementService(IGraphManagementRepository graphManagementRepository, IGraphRepository graphRepository,
                               IMetadataGraphConfigurationService graphConfiguration, IAuditTrailLogService auditTrailLogService, IAmazonS3Service awsS3Service,
                               INeptuneLoaderConnector neptuneLoader, IOptionsMonitor <AmazonWebServicesOptions> awsConfig)
 {
     _graphManagementRepo       = graphManagementRepository;
     _graphConfigurationService = graphConfiguration;
     _auditTrailLogService      = auditTrailLogService;
     _graphRepo     = graphRepository;
     _awsS3Service  = awsS3Service;
     _neptuneLoader = neptuneLoader;
     _awsConfig     = awsConfig.CurrentValue;
 }
 public AttachmentService(
     IOptionsMonitor <AmazonWebServicesOptions> awsOptionsMonitor,
     ILogger <AttachmentService> logger,
     IMapper mapper,
     IConfiguration configuration,
     IMetadataService metadataService,
     IAttachmentRepository attachmentRepository,
     IAmazonS3Service awsS3Service) : base(mapper, metadataService, null, attachmentRepository, logger)
 {
     _configuration        = configuration;
     _attachmentRepository = attachmentRepository;
     _awsS3Service         = awsS3Service;
     _awsConfig            = awsOptionsMonitor.CurrentValue;
     _logger             = logger;
     _s3AccessLinkPrefix = _configuration.GetConnectionString("s3AccessLinkPrefix");
 }
        public GraphManagementServiceTests()
        {
            _mockGraphMgmtRepo              = new Mock <IGraphManagementRepository>();
            _mockGraphRepository            = new Mock <IGraphRepository>();
            _mockMetadataGraphConfigService = new Mock <IMetadataGraphConfigurationService>();
            _mockAuditTrailLogService       = new Mock <IAuditTrailLogService>();
            _mockAwsS3Service           = new Mock <IAmazonS3Service>();
            _mockNeptuneLoaderConnector = new Mock <INeptuneLoaderConnector>();
            SetupMockGraphMgmt();

            AmazonWebServicesOptions awsOptions = new AmazonWebServicesOptions();
            var awsOptionsMonitor = Mock.Of <IOptionsMonitor <AmazonWebServicesOptions> >(_ => _.CurrentValue == awsOptions);

            _service = new GraphManagementService(_mockGraphMgmtRepo.Object, _mockGraphRepository.Object,
                                                  _mockMetadataGraphConfigService.Object, _mockAuditTrailLogService.Object, _mockAwsS3Service.Object,
                                                  _mockNeptuneLoaderConnector.Object, awsOptionsMonitor);
        }
        public AttachmentServiceTests(ITestOutputHelper output)
        {
            _mockAttachmentRepository = new Mock <IAttachmentRepository>();
            _mockAwsS3Service         = new Mock <IAmazonS3Service>();
            _mockMetadataService      = new Mock <IMetadataService>();
            _mockLogger    = new Mock <ILogger <AttachmentService> >();
            _mockMapper    = new Mock <IMapper>();
            _configuration = new Mock <IConfiguration>();

            _output = output;

            AmazonWebServicesOptions awsOptions = new AmazonWebServicesOptions();
            var awsOptionsMonitor = Mock.Of <IOptionsMonitor <AmazonWebServicesOptions> >(_ => _.CurrentValue == awsOptions);

            _service = new AttachmentService(awsOptionsMonitor, _mockLogger.Object, _mockMapper.Object, _configuration.Object,
                                             _mockMetadataService.Object, _mockAttachmentRepository.Object, _mockAwsS3Service.Object);
        }
示例#7
0
 public MinIoService(IOptionsMonitor <AmazonWebServicesOptions> awsConfig, ILogger <MinIoService> logger)
     : base(null, awsConfig, logger)
 {
     _awsConfig = awsConfig.CurrentValue;
 }
示例#8
0
 public AmazonS3Service(IEc2InstanceMetadataConnector ec2Connector, IOptionsMonitor <AmazonWebServicesOptions> awsConfig, ILogger <AmazonS3Service> logger)
 {
     _ec2Connector = ec2Connector;
     _awsConfig    = awsConfig.CurrentValue;
     _logger       = logger;
 }
示例#9
0
 public AmazonDynamoDbService(IOptionsMonitor <AmazonWebServicesOptions> awsConfig, ILogger <AmazonS3Service> logger)
 {
     _awsConfig = awsConfig.CurrentValue;
     _logger    = logger;
 }