コード例 #1
0
    public async Task Can_Update_Retention_Period()
    {
        // Arrange
        var oldRetentionPeriod = TimeSpan.FromSeconds(600);
        var newRetentionPeriod = TimeSpan.FromSeconds(700);

        ILoggerFactory    loggerFactory = OutputHelper.ToLoggerFactory();
        IAwsClientFactory clientFactory = CreateClientFactory();

        var client = clientFactory.GetSqsClient(Region);

        var queue = new SqsQueueByName(
            Region,
            UniqueName,
            client,
            1,
            loggerFactory);

        await queue.CreateAsync(
            new SqsBasicConfiguration { MessageRetention = oldRetentionPeriod });

        // Act
        await queue.UpdateQueueAttributeAsync(
            new SqsBasicConfiguration { MessageRetention = newRetentionPeriod }, CancellationToken.None);

        // Assert
        queue.MessageRetentionPeriod.ShouldBe(newRetentionPeriod);
    }
コード例 #2
0
 public KinesisStreamCreator(IAwsClientFactory clientFactory, string rawStreamName, string measurementsStreamName, ILogger logger)
 {
     _client                 = clientFactory.CreateKinesisClient();
     _rawStreamName          = rawStreamName;
     _measurementsStreamName = measurementsStreamName;
     _logger                 = logger;
 }
コード例 #3
0
    public async Task Then_The_Error_Queue_Is_Not_Created()
    {
        // Arrange
        ILoggerFactory    loggerFactory = OutputHelper.ToLoggerFactory();
        IAwsClientFactory clientFactory = CreateClientFactory();

        var client = clientFactory.GetSqsClient(Region);

        var queue = new SqsQueueByName(
            Region,
            UniqueName,
            client,
            1,
            loggerFactory);

        // Act
        await queue.CreateAsync(new SqsBasicConfiguration()
        {
            ErrorQueueOptOut = true
        });

        // Assert
        await Patiently.AssertThatAsync(
            OutputHelper, async() => !await queue.ErrorQueue.ExistsAsync(CancellationToken.None));
    }
コード例 #4
0
        public async Task Then_An_Exception_Is_Not_Thrown()
        {
            // Arrange
            string            topicName     = Guid.NewGuid().ToString();
            ILoggerFactory    loggerFactory = OutputHelper.ToLoggerFactory();
            IAwsClientFactory clientFactory = CreateClientFactory();

            var subjectProvider       = new NonGenericMessageSubjectProvider();
            var serializationRegister = new MessageSerializationRegister(subjectProvider);

            var client = clientFactory.GetSnsClient(Region);

            var topic = new SnsTopicByName(
                topicName,
                client,
                serializationRegister,
                loggerFactory,
                subjectProvider);

            // Act and Assert
            (await topic.CreateAsync()).ShouldBeTrue();
            (await topic.CreateAsync()).ShouldBeTrue();

            topic.Arn.ShouldNotBeNull();
            topic.Arn.ShouldEndWith(topic.TopicName);
        }
コード例 #5
0
        public UpdateItemHandler(DynamoDbConfiguration configuration,
                                 IAwsClientFactory <AmazonDynamoDBClient> clientFactory)
        {
            var dynamoClient = clientFactory.GetAwsClient();

            _table = Table.LoadTable(dynamoClient, configuration.TableName);
        }
コード例 #6
0
    public async Task Can_Update_Redrive_Policy()
    {
        // Arrange
        int maximumReceives = 42;

        ILoggerFactory    loggerFactory = OutputHelper.ToLoggerFactory();
        IAwsClientFactory clientFactory = CreateClientFactory();

        var client = clientFactory.GetSqsClient(Region);

        var queue = new SqsQueueByName(
            Region,
            UniqueName,
            client,
            1,
            loggerFactory);

        await queue.CreateAsync(new SqsBasicConfiguration());

        // Act
        await queue.UpdateRedrivePolicyAsync(
            new RedrivePolicy(maximumReceives, queue.ErrorQueue.Arn));

        // Assert
        queue.RedrivePolicy.ShouldNotBeNull();
        queue.RedrivePolicy.MaximumReceives.ShouldBe(maximumReceives);
    }
コード例 #7
0
        protected AwsTaskBase(IAwsClientFactory awsClientFactory, ITaskLogger logger)
            : this(awsClientFactory)
        {
            if (logger == null) throw new ArgumentNullException("logger");

            Logger = logger;
        }
コード例 #8
0
 public UpdateAllStacks(
     IAwsClientFactory awsClientFactory,
     IRepository <AwsProfile> profileRepository,
     StackLoader stackLoader) : base(profileRepository, awsClientFactory)
 {
     _stackLoader = stackLoader;
 }
コード例 #9
0
 public AwsBusConfig(Dictionary <Type, string> queueUrlsByType, Dictionary <Type, string> topicArnsByType, IQueueAndTopicNamingConvention queueAndTopicNamingConvention, IAwsClientFactory clientFactory)
 {
     QueueUrlsByType = queueUrlsByType;
     TopicArnsByType = topicArnsByType;
     QueueAndTopicNamingConvention = queueAndTopicNamingConvention;
     ClientFactory = clientFactory;
 }
コード例 #10
0
        public async Task Can_Remove_Encryption()
        {
            // Arrange
            ILoggerFactory    loggerFactory = OutputHelper.ToLoggerFactory();
            IAwsClientFactory clientFactory = CreateClientFactory();

            var client = clientFactory.GetSqsClient(Region);

            var queue = new SqsQueueByName(
                Region,
                UniqueName,
                client,
                1,
                loggerFactory);

            await queue.CreateAsync(
                new SqsBasicConfiguration { ServerSideEncryption = new ServerSideEncryption() });

            // Act
            await queue.UpdateQueueAttributeAsync(
                new SqsBasicConfiguration { ServerSideEncryption = null });

            // Assert
            queue.ServerSideEncryption.ShouldBeNull();
        }
コード例 #11
0
 public UpdateAllImages(
     IAwsClientFactory awsClientFactory,
     IRepository <BaseImage> imageRepository,
     IRepository <AwsProfile> profileRepository) : base(profileRepository, awsClientFactory)
 {
     _imageRepository = imageRepository;
 }
コード例 #12
0
        public async Task Can_Update_Delivery_Delay()
        {
            // Arrange
            var oldDeliveryDelay = TimeSpan.FromMinutes(2);
            var newDeliveryDelay = TimeSpan.FromMinutes(5);

            ILoggerFactory    loggerFactory = OutputHelper.ToLoggerFactory();
            IAwsClientFactory clientFactory = CreateClientFactory();

            var client = clientFactory.GetSqsClient(Region);

            var queue = new SqsQueueByName(
                Region,
                UniqueName,
                client,
                1,
                loggerFactory);

            await queue.CreateAsync(
                new SqsBasicConfiguration()
            {
                DeliveryDelay = oldDeliveryDelay
            });

            // Act
            await queue.UpdateQueueAttributeAsync(
                new SqsBasicConfiguration()
            {
                DeliveryDelay = newDeliveryDelay
            });

            // Assert
            queue.DeliveryDelay.ShouldBe(newDeliveryDelay);
        }
コード例 #13
0
        public async Task Then_The_Message_Retention_Period_Is_Updated()
        {
            // Arrange
            ILoggerFactory    loggerFactory = OutputHelper.ToLoggerFactory();
            IAwsClientFactory clientFactory = CreateClientFactory();

            var client = clientFactory.GetSqsClient(Region);

            var queue = new ErrorQueue(
                Region,
                UniqueName,
                client,
                loggerFactory);

            var queueConfig = new SqsBasicConfiguration()
            {
                ErrorQueueRetentionPeriod = JustSayingConstants.MaximumRetentionPeriod,
                ErrorQueueOptOut          = true,
            };

            // Act
            await queue.CreateAsync(queueConfig);

            queueConfig.ErrorQueueRetentionPeriod = TimeSpan.FromSeconds(100);

            await queue.UpdateQueueAttributeAsync(queueConfig, CancellationToken.None);

            // Assert
            queue.MessageRetentionPeriod.ShouldBe(TimeSpan.FromSeconds(100));
        }
コード例 #14
0
 public UpdateAllInstances(
     IAwsClientFactory awsClientFactory,
     IRepository <InstanceEntity> instanceRepository,
     IRepository <AwsProfile> profileRepository
     ) : base(profileRepository, awsClientFactory)
 {
     _instanceRepository = instanceRepository;
 }
コード例 #15
0
 /// <summary>
 /// Initializes a new instance of the <see cref="TemplateResolver"/> class.
 /// </summary>
 /// <param name="clientFactory">The client factory.</param>
 /// <param name="context">The context.</param>
 /// <param name="templateStage">Template stage to retrieve.</param>
 /// <param name="stackName">Name of the stack.</param>
 /// <param name="usePreviousTemplate">if set to <c>true</c> [use previous template].</param>
 /// <param name="forceS3">If set to <c>true</c>, force template upload to S3 even if less than max size.</param>
 public TemplateResolver(IAwsClientFactory clientFactory, ICloudFormationContext context, TemplateStage templateStage, string stackName, bool usePreviousTemplate, bool forceS3)
     : base(clientFactory, context)
 {
     this.usePreviousTemplate = usePreviousTemplate;
     this.stackName           = stackName;
     this.ForceS3             = forceS3;
     this.templateStage       = templateStage;
 }
コード例 #16
0
        public UpdateStack(
			IAwsClientFactory awsClientFactory,
			IRepository<AwsProfile> profileRepository,
			StackLoader stackLoader)
            : base(profileRepository, awsClientFactory)
        {
            _stackLoader = stackLoader;
        }
コード例 #17
0
        public StreamProcessor(IBusFactory busFactory,
                               IAwsClientFactory awsClientFactory,
                               IAwsKinesisFactory awsKinesisFactory,
                               IOptions <AwsSettings> awsOptions,
                               IOptions <ServerSettings> serverOptions,
                               IMapper mapper,
                               ILogger <StreamProcessor> logger,
                               IMembershipService membershipService,
                               ICheckpointRepository checkpointRepository)
        {
            if (busFactory == null)
            {
                throw new ArgumentNullException(nameof(busFactory));
            }
            if (awsClientFactory == null)
            {
                throw new ArgumentNullException("awsClientFactory");
            }
            if (awsOptions == null)
            {
                throw new ArgumentNullException(nameof(awsOptions));
            }
            if (serverOptions == null)
            {
                throw new ArgumentNullException(nameof(serverOptions));
            }
            if (mapper == null)
            {
                throw new ArgumentNullException(nameof(mapper));
            }

            _eventBus          = busFactory.CreateEventsBus();
            _kinesisFactory    = awsKinesisFactory;
            _mapper            = mapper;
            _logger            = logger;
            _membershipService = membershipService;
            _serverSettings    = serverOptions.Value;

            _checkpointRepository = checkpointRepository;

            var processedMeasurementStreamWriter = _kinesisFactory.CreateWriter();

            var recordProcessingFactory = new RecordProcessorFactory(membershipService, logger);

            _rawMeasurementsStreamReader = _kinesisFactory.CreateReader(
                recordProcessingFactory,
                _checkpointRepository,
                processedMeasurementStreamWriter);

            // Handle processed measurements.
            // Read from the processed measurements stream and publish out to
            // EasyNetQ/RabbitQ. This should be removed once
            // all other services (Web/MQTT/Notifier/Membership) are getting measurements
            // from the processed stream rather than the queue
            _processedMeasurementsStreamReader = _kinesisFactory.CreateProcesssedMeasurementsReader(
                _checkpointRepository,
                _eventBus);
        }
コード例 #18
0
        public UpdateAllInstances(
			IAwsClientFactory awsClientFactory,
			IRepository<InstanceEntity> instanceRepository,
			IRepository<AwsProfile> profileRepository
			)
            : base(profileRepository, awsClientFactory)
        {
            _instanceRepository = instanceRepository;
        }
コード例 #19
0
        internal AwsTaskBase(IAwsClientFactory awsClientFactory)
        {
            if (awsClientFactory == null)
            {
                throw new ArgumentNullException("awsClientFactory");
            }

            AwsClientFactory = awsClientFactory;
        }
コード例 #20
0
 public NoteDynamoRepository(DynamoDbConfiguration configuration,
                             IAwsClientFactory <AmazonDynamoDBClient> clientFactory)
 {
     _client        = clientFactory.GetAwsClient();
     _configuration = new DynamoDBOperationConfig
     {
         OverrideTableName = $"{Environment.GetEnvironmentVariable("stage")}-notes",
         SkipVersionCheck  = true
     };
 }
コード例 #21
0
        protected DynamoRepositoryBase(IAwsClientFactory clientFactory, IOptions <AwsSettings> awsOptions)
        {
            if (clientFactory == null)
            {
                throw new ArgumentNullException("clientFactory");
            }

            TablePrefix = awsOptions.Value.DynamoDbTablePrefix;
            Client      = clientFactory.CreateDynamoDBClient();
        }
コード例 #22
0
 public AwsKinesisFactory(IAwsClientFactory clientFactory,
                          IOptions <AwsSettings> awsOptions,
                          IHeartbeatService heartbeatService,
                          ILogger logger)
 {
     _clientFactory    = clientFactory;
     _heartbeatService = heartbeatService;
     _logger           = logger;
     _awsSettings      = awsOptions.Value;
 }
コード例 #23
0
 public RemoveStaleInstances(
     IAwsClientFactory awsClientFactory,
     IRepository <Instance> instanceRepository,
     IRepository <AwsProfile> profileRepository,
     IBackgroundJobClient backgroundJobClient)
     : base(profileRepository, awsClientFactory)
 {
     _instanceRepository  = instanceRepository;
     _backgroundJobClient = backgroundJobClient;
 }
コード例 #24
0
        public MediaRepositoryMigrationV3(AwsDynamoDbConfig config, IAwsClientFactory clientFactory)
        {
            if (config == null)
            {
                throw new ArgumentNullException("config");
            }

            _tablePrefix = config.TablePrefix;
            _client      = clientFactory.CreateDynamoDBClient();
        }
コード例 #25
0
        public RemoveStaleInstances(
			IAwsClientFactory awsClientFactory,
			IRepository<Instance> instanceRepository,
			IRepository<AwsProfile> profileRepository,
			IBackgroundJobClient backgroundJobClient)
            : base(profileRepository, awsClientFactory)
        {
            _instanceRepository = instanceRepository;
            _backgroundJobClient = backgroundJobClient;
        }
コード例 #26
0
        protected AwsTaskBase(IAwsClientFactory awsClientFactory, ITaskLogger logger)
            : this(awsClientFactory)
        {
            if (logger == null)
            {
                throw new ArgumentNullException("logger");
            }

            Logger = logger;
        }
コード例 #27
0
 public ItemDynamoRepository(DynamoDbConfiguration configuration,
                             IAwsClientFactory <AmazonDynamoDBClient> clientFactory)
 {
     _client        = clientFactory.GetAwsClient();
     _configuration = new DynamoDBOperationConfig
     {
         OverrideTableName = configuration.TableName,
         SkipVersionCheck  = true
     };
 }
コード例 #28
0
    public async Task CanSubscribeUsingQueueArn()
    {
        IAwsClientFactory clientFactory = CreateClientFactory();
        var sqsClient     = clientFactory.GetSqsClient(Region);
        var snsClient     = clientFactory.GetSnsClient(Region);
        var queueResponse = await sqsClient.CreateQueueAsync(UniqueName);

        var anotherUniqueName = $"{Guid.NewGuid():N}-integration-tests";
        var topicResponse     = await snsClient.CreateTopicAsync(anotherUniqueName);

        var subscriptionArn = await snsClient.SubscribeQueueAsync(topicResponse.TopicArn, sqsClient, queueResponse.QueueUrl);

        var queueArn = (await sqsClient.GetQueueAttributesAsync(queueResponse.QueueUrl, new List <string> {
            SQSConstants.ATTRIBUTE_QUEUE_ARN
        })).Attributes[SQSConstants.ATTRIBUTE_QUEUE_ARN];

        var handler = new InspectableHandler <SimpleMessage>();

        var services = GivenJustSaying()
                       .ConfigureJustSaying(builder =>
                                            builder
                                            .Subscriptions(c =>
                                                           c.ForQueueArn <SimpleMessage>(queueArn))
                                            .Publications(c =>
                                                          c.WithTopicArn <SimpleMessage>(topicResponse.TopicArn)
                                                          )
                                            )
                       .AddJustSayingHandlers(new[] { handler });

        string content = Guid.NewGuid().ToString();

        var message = new SimpleMessage
        {
            Content = content
        };

        await WhenAsync(
            services,
            async (publisher, listener, serviceProvider, cancellationToken) =>
        {
            await listener.StartAsync(cancellationToken);
            await publisher.StartAsync(cancellationToken);

            await publisher.PublishAsync(message, cancellationToken);

            // Assert
            await Patiently.AssertThatAsync(OutputHelper,
                                            () =>
            {
                handler.ReceivedMessages.ShouldHaveSingleItem().Content.ShouldBe(content);
            });
        });
    }
コード例 #29
0
 public UpdateBillingData(
     IAwsClientFactory awsClientFactory,
     IRepository <AwsProfile> awsProfileRepository,
     IBillingManager billingManager,
     IClock clock,
     IS3PathParser pathParser
     ) : base(awsProfileRepository, awsClientFactory)
 {
     _awsProfileRepository = awsProfileRepository;
     _billingManager       = billingManager;
     _clock      = clock;
     _pathParser = pathParser;
 }
コード例 #30
0
        public UpdateBillingData(
			IAwsClientFactory awsClientFactory,
			IRepository<AwsProfile> awsProfileRepository,
			IBillingManager billingManager,
			IClock clock,
			IS3PathParser pathParser
			)
            : base(awsProfileRepository, awsClientFactory)
        {
            _awsProfileRepository = awsProfileRepository;
            _billingManager = billingManager;
            _clock = clock;
            _pathParser = pathParser;
        }
コード例 #31
0
        public UniqueNameRepository(AwsDynamoDbConfig config, IAwsClientFactory clientFactory)
        {
            if (config == null)
            {
                throw new ArgumentNullException("config");
            }
            if (clientFactory == null)
            {
                throw new ArgumentNullException("clientFactory");
            }

            _tablePrefix = config.TablePrefix;
            _client      = clientFactory.CreateDynamoDBClient();
        }
コード例 #32
0
 public AwsProfileController(
     IRepository <AwsProfile> profileRepository,
     IRepository <IPRange> ipRangeRepository,
     ICryptoProvider cryptoProvider,
     IBackgroundJobClient backgroundJobClient,
     IAuthenticatedUserClient userClient,
     IAwsClientFactory awsClientFactory)
 {
     _profileRepository   = profileRepository;
     _ipRangeRepository   = ipRangeRepository;
     _cryptoProvider      = cryptoProvider;
     _backgroundJobClient = backgroundJobClient;
     _userClient          = userClient;
     _awsClientFactory    = awsClientFactory;
 }
コード例 #33
0
        public AwsProfileController(
			IRepository<AwsProfile> profileRepository,
			IRepository<IPRange> ipRangeRepository,
			ICryptoProvider cryptoProvider,
			IBackgroundJobClient backgroundJobClient,
			IAuthenticatedUserClient userClient,
			IAwsClientFactory awsClientFactory)
        {
            _profileRepository = profileRepository;
            _ipRangeRepository = ipRangeRepository;
            _cryptoProvider = cryptoProvider;
            _backgroundJobClient = backgroundJobClient;
            _userClient = userClient;
            _awsClientFactory = awsClientFactory;
        }
コード例 #34
0
 public CreateStack(
     IRepository <AwsProfile> profileRepository,
     IRepository <IPRange> ipRangeRepository,
     IRepository <Instance> instanceRepository,
     IRepository <Stack> stackRepository,
     IRepository <BaseImage> baseImageRepository,
     IRepository <Schedule> scheduleRepository,
     IStackPowerKickstarter stackPowerKickstarter,
     IAwsClientFactory awsClientFactory) : base(profileRepository, awsClientFactory)
 {
     _ipRangeRepository     = ipRangeRepository;
     _instanceRepository    = instanceRepository;
     _stackRepository       = stackRepository;
     _baseImageRepository   = baseImageRepository;
     _scheduleRepository    = scheduleRepository;
     _stackPowerKickstarter = stackPowerKickstarter;
 }
コード例 #35
0
        public CreateStack(
			IRepository<AwsProfile> profileRepository,
			IRepository<IPRange> ipRangeRepository,
			IRepository<Instance> instanceRepository,
			IRepository<Stack> stackRepository,
			IRepository<BaseImage> baseImageRepository,
			IRepository<Schedule> scheduleRepository,
			IStackPowerKickstarter stackPowerKickstarter,
			IAwsClientFactory awsClientFactory)
            : base(profileRepository, awsClientFactory)
        {
            _ipRangeRepository = ipRangeRepository;
            _instanceRepository = instanceRepository;
            _stackRepository = stackRepository;
            _baseImageRepository = baseImageRepository;
            _scheduleRepository = scheduleRepository;
            _stackPowerKickstarter = stackPowerKickstarter;
        }
コード例 #36
0
    public async Task CanPublishUsingQueueUrl()
    {
        IAwsClientFactory clientFactory = CreateClientFactory();
        var sqsClient     = clientFactory.GetSqsClient(Region);
        var queueResponse = await sqsClient.CreateQueueAsync(UniqueName);

        var handler = new InspectableHandler <SimpleMessage>();

        var services = GivenJustSaying()
                       .ConfigureJustSaying(builder =>
                                            builder
                                            .Subscriptions(c =>
                                                           c.ForQueueUrl <SimpleMessage>(queueResponse.QueueUrl))
                                            .Publications(c =>
                                                          c.WithQueueUrl <SimpleMessage>(queueResponse.QueueUrl)
                                                          )
                                            )
                       .AddJustSayingHandlers(new[] { handler });

        string content = Guid.NewGuid().ToString();

        var message = new SimpleMessage
        {
            Content = content
        };

        await WhenAsync(
            services,
            async (publisher, listener, serviceProvider, cancellationToken) =>
        {
            await listener.StartAsync(cancellationToken);
            await publisher.StartAsync(cancellationToken);

            await publisher.PublishAsync(message, cancellationToken);

            // Assert
            await Patiently.AssertThatAsync(OutputHelper,
                                            () =>
            {
                handler.ReceivedMessages.ShouldHaveSingleItem().Content.ShouldBe(content);
            });
        });
    }
コード例 #37
0
        public async Task Can_Create_Topic_With_Encryption()
        {
            // Arrange
            ILoggerFactory    loggerFactory = OutputHelper.ToLoggerFactory();
            IAwsClientFactory clientFactory = CreateClientFactory();

            var client = clientFactory.GetSnsClient(Region);

            var topic = new SnsTopicByName(
                UniqueName,
                client,
                loggerFactory);

            // Act
            await topic.CreateWithEncryptionAsync(new ServerSideEncryption { KmsMasterKeyId = JustSayingConstants.DefaultSnsAttributeEncryptionKeyId }, CancellationToken.None);

            // Assert
            topic.ServerSideEncryption.KmsMasterKeyId.ShouldBe(JustSayingConstants.DefaultSnsAttributeEncryptionKeyId);
        }
コード例 #38
0
 public CreateUserTask(IAwsClientFactory awsClientFactory, ITaskLogger logger)
     : base(awsClientFactory, logger)
 {
 }
コード例 #39
0
        internal AwsTaskBase(IAwsClientFactory awsClientFactory)
        {
            if (awsClientFactory == null) throw new ArgumentNullException("awsClientFactory");

            AwsClientFactory = awsClientFactory;
        }
コード例 #40
0
        public CreateDefaultSecurityGroup(
			IRepository<AwsProfile> profileRepository,
			IAwsClientFactory clientFactory)
            : base(profileRepository, clientFactory)
        {
        }
コード例 #41
0
 public RefreshIpRanges(IRepository<AwsProfile> profileRepository, IRepository<IPRange> ipRangeRepository, IAwsClientFactory awsClientFactory)
     : base(profileRepository, awsClientFactory)
 {
     _ipRangeRepository = ipRangeRepository;
 }
コード例 #42
0
 public CreateSQSQueueTask(IAwsClientFactory awsClientFactory, ITaskLogger logger)
     : base(awsClientFactory, logger)
 {
 }
コード例 #43
0
 public SendSQSMessageTask(IAwsClientFactory awsClientFactory, ITaskLogger logger)
     : base(awsClientFactory, logger)
 {
 }
コード例 #44
0
        public DeleteStack(
			IRepository<AwsProfile> profileRepository,
			IAwsClientFactory awsClientFactory)
            : base(profileRepository, awsClientFactory)
        {
        }
コード例 #45
0
 protected SqsTaskBase(IAwsClientFactory awsClientFactory, Logging.ITaskLogger logger)
     : base(awsClientFactory, logger)
 {
 }
コード例 #46
0
 public CreateIpRange(IRepository<IPRange> ipRangeRepository, IRepository<AwsProfile> profileRepository, IAwsClientFactory awsClientFactory)
 {
     _ipRangeRepository = ipRangeRepository;
     _profileRepository = profileRepository;
     _awsClientFactory = awsClientFactory;
 }
コード例 #47
0
 public RemoveStaleStacks(IAwsClientFactory awsClientFactory, IRepository<Stack> stackRepository, IRepository<AwsProfile> profileRepository)
     : base(profileRepository, awsClientFactory)
 {
     _stackRepository = stackRepository;
 }
コード例 #48
0
 public UpdateInstance(IRepository<AwsProfile> profileRepository, IAwsClientFactory awsClientFactory, IRepository<Instance> instanceRepository)
     : base(profileRepository, awsClientFactory)
 {
     _instanceRepository = instanceRepository;
 }
コード例 #49
0
        public StopInstances(
			IRepository<AwsProfile> profileRepository,
			IAwsClientFactory awsClientFactory)
            : base(profileRepository, awsClientFactory)
        {
        }
コード例 #50
0
 protected CommandBase(IRepository<AwsProfile> profileRepository, IAwsClientFactory clientFactory)
 {
     ProfileRepository = profileRepository;
     _clientFactory = clientFactory;
 }