예제 #1
0
        public AWSComputeEnvironmentService(GNEntityModelContainer db)
            : base(db)
        {
            base.db = db;

            AWSConfig awsConfig = db.AWSConfigs.FirstOrDefault();

            cloudComputeService    = new GNCloudComputeService(awsConfig.Id);
            analysisRequestService = new AnalysisRequestService(db, new Data.IdentityModel.IdentityModelContainer());
        }
예제 #2
0
 public ContentController(IStaticWebsiteService staticWebsiteService,
                          IViewRenderer viewRenderer, IContentService contentService,
                          ILogger <ContentController> logger,
                          AWSConfig awsConfig)
 {
     _staticWebsiteService = staticWebsiteService;
     _viewRenderer         = viewRenderer;
     _contentService       = contentService;
     _logger    = logger;
     _awsConfig = awsConfig;
 }
예제 #3
0
 public S3StaticWebsiteService(IAmazonS3 amazonS3,
                               IAmazonCloudFront cloudFrontService,
                               ILogger <S3StaticWebsiteService> logger,
                               AWSConfig awsConfig,
                               EnvironmentConfig environmentConfig,
                               CloudFrontConfig cloudFrontConfig)
 {
     _amazonS3          = amazonS3;
     _logger            = logger;
     _awsConfig         = awsConfig;
     _cloudFrontService = cloudFrontService;
     _environmentConfig = environmentConfig;
     _cloudFrontConfig  = cloudFrontConfig;
 }
        public AuditService(GNEntityModelContainer db)
            : base(db)
        {
            base.db = db;

            AWSConfig AWSConfigEntity = db.AWSConfigs.FirstOrDefault();

            Amazon.RegionEndpoint regionEndpoint =
                Amazon.RegionEndpoint.GetBySystemName(AWSConfigEntity.AWSRegionSystemName);

            dynamoClient = new AmazonDynamoDBClient(
                AWSConfigEntity.AWSAccessKeyId,
                AWSConfigEntity.AWSSecretAccessKey,
                regionEndpoint);
        }
예제 #5
0
 public AWSUpdateUploader(AWSConfig config)
 {
     Config = config;
 }
예제 #6
0
파일: Startup.cs 프로젝트: nice-digital/MAS
        // This method gets called by the runtime. Use this method to add services to the container
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_3_0);

            services.AddLogging(builder => {
                builder.AddILoggingBuilderInstance();
            });

            services.TryAddSingleton <ISeriLogger, SeriLogger>();
            services.TryAddSingleton <IStaticWebsiteService, S3StaticWebsiteService>();
            services.TryAddSingleton <IViewRenderer, ViewRenderer>();
            services.TryAddTransient <IMailService, MailService>();
            services.TryAddTransient <IContentService, ContentService>();
            services.TryAddTransient <IBankHolidayService, BankHolidayService>();

            EnvironmentConfig environmentConfig = new EnvironmentConfig();
            AWSConfig         awsConfig         = new AWSConfig();
            CloudFrontConfig  cloudFrontConfig  = new CloudFrontConfig();
            CMSConfig         cmsConfig         = new CMSConfig();
            MailChimpConfig   mailChimpConfig   = new MailChimpConfig();
            MailConfig        mailConfig        = new MailConfig();

            Configuration.Bind("AppSettings:Environment", environmentConfig);
            Configuration.Bind("AWS", awsConfig);
            Configuration.Bind("AWS:CloudFront", cloudFrontConfig);
            Configuration.Bind("CMS", cmsConfig);
            Configuration.Bind("MailChimp", mailChimpConfig);
            Configuration.Bind("Mail", mailConfig);

            services.AddSingleton(environmentConfig)
            .AddSingleton(awsConfig)
            .AddSingleton(cloudFrontConfig)
            .AddSingleton(cmsConfig)
            .AddSingleton(mailChimpConfig)
            .AddSingleton(mailConfig);

            services.AddMailChimpClient(mailChimpConfig.ApiKey);

            AmazonS3Config s3config;

            if (environmentConfig.Name == "local")  //TODO: Should use Environment.IsDevelopment() here. When running tests it returns "Production"
            {
                s3config = new AmazonS3Config()
                {
                    RegionEndpoint = Region,
                    ServiceURL     = awsConfig.ServiceURL,
                    ForcePathStyle = true
                };
            }
            else
            {
                s3config = new AmazonS3Config()
                {
                    RegionEndpoint = Region
                };
            }
            services.AddTransient <IAmazonS3>((sP) =>
            {
                return(new AmazonS3Client(awsConfig.AccessKey, awsConfig.SecretKey, s3config));
            });

            var cloudfrontConfig = new AmazonCloudFrontConfig()
            {
                RegionEndpoint = Region
            };

            services.AddTransient <IAmazonCloudFront>((acf) =>
            {
                return(new AmazonCloudFrontClient(awsConfig.AccessKey, awsConfig.SecretKey, cloudfrontConfig));
            });

            services.AddControllers();
        }
예제 #7
0
 public FileApiController(IFileService service, ILogger <FileApiController> logger, IOptions <AWSConfig> aws, IAuthenticationService <int> authService) : base(logger)
 {
     _service     = service;
     _authService = authService;
     _config      = aws.Value;
 }
예제 #8
0
 public AWSConfig()
 {
     Current = this;
 }