/** * Configure HttpClient with set of defaults as well as configuration * from AmazonAutoScalingConfig instance */ private static HttpWebRequest ConfigureWebRequest(int contentLength, AmazonAutoScalingConfig config) { HttpWebRequest request = WebRequest.Create(config.ServiceURL) as HttpWebRequest; if (request != null) { if (config.IsSetProxyHost() && config.IsSetProxyPort()) { WebProxy proxy = new WebProxy(config.ProxyHost, config.ProxyPort); if (config.IsSetProxyUsername()) { proxy.Credentials = new NetworkCredential( config.ProxyUsername, config.ProxyPassword ?? String.Empty ); } request.Proxy = proxy; } request.UserAgent = config.UserAgent; request.Method = "POST"; request.Timeout = 50000; request.ContentType = AWSSDKUtils.UrlEncodedContent; request.ContentLength = contentLength; } return(request); }
/// <summary> /// Create a client for the Amazon AutoScaling Service with the specified configuration /// </summary> /// <param name="awsAccessKey">The AWS Access Key associated with the account</param> /// <param name="awsSecretAccessKey">The AWS Secret Access Key associated with the account</param> /// <param name="config">Configuration options for the service like HTTP Proxy, # of connections, etc /// </param> /// <returns>An Amazon AutoScaling client</returns> /// <remarks> /// </remarks> public static IAmazonAutoScaling CreateAmazonAutoScalingClient( string awsAccessKey, string awsSecretAccessKey, AmazonAutoScalingConfig config ) { return new AmazonAutoScalingClient(awsAccessKey, awsSecretAccessKey, config); }
/// <summary> /// Constructs an AmazonAutoScalingClient with AWS Access Key ID, AWS Secret Key and an /// AmazonAutoScaling Configuration object /// </summary> /// <param name="awsAccessKeyId">AWS Access Key ID</param> /// <param name="awsSecretAccessKey">AWS Secret Access Key as a SecureString</param> /// <param name="config">The AmazonAutoScaling Configuration Object</param> public AmazonAutoScalingClient(string awsAccessKeyId, SecureString awsSecretAccessKey, AmazonAutoScalingConfig config) { this.awsAccessKeyId = awsAccessKeyId; this.awsSecretAccessKey = awsSecretAccessKey; this.config = config; ServicePointManager.Expect100Continue = false; ServicePointManager.UseNagleAlgorithm = false; }
/// <summary> /// Constructs AmazonAutoScalingClient with AWS Access Key ID, AWS Secret Key and an /// AmazonAutoScaling Configuration object. If the config object's /// UseSecureStringForAwsSecretKey is false, the AWS Secret Key /// is stored as a clear-text string. Please use this option only /// if the application environment doesn't allow the use of SecureStrings. /// </summary> /// <param name="awsAccessKeyId">AWS Access Key ID</param> /// <param name="awsSecretAccessKey">AWS Secret Access Key</param> /// <param name="config">The AmazonAutoScaling Configuration Object</param> public AmazonAutoScalingClient(string awsAccessKeyId, string awsSecretAccessKey, AmazonAutoScalingConfig config) { if (!String.IsNullOrEmpty(awsSecretAccessKey)) { if (config.UseSecureStringForAwsSecretKey) { this.awsSecretAccessKey = new SecureString(); foreach (char ch in awsSecretAccessKey.ToCharArray()) { this.awsSecretAccessKey.AppendChar(ch); } this.awsSecretAccessKey.MakeReadOnly(); } else { clearAwsSecretAccessKey = awsSecretAccessKey; } } this.awsAccessKeyId = awsAccessKeyId; this.config = config; ServicePointManager.Expect100Continue = false; ServicePointManager.UseNagleAlgorithm = false; }
private static HttpWebRequest ConfigureWebRequest(int contentLength, AmazonAutoScalingConfig config) { HttpWebRequest request = WebRequest.Create(config.ServiceURL) as HttpWebRequest; if (request != null) { if (config.IsSetProxyHost() && config.IsSetProxyPort()) { WebProxy proxy = new WebProxy(config.ProxyHost, config.ProxyPort); if (config.IsSetProxyUsername()) { proxy.Credentials = new NetworkCredential(config.ProxyUsername, config.ProxyPassword ?? string.Empty); } request.Proxy = proxy; } request.UserAgent = config.UserAgent; request.Method = "POST"; request.Timeout = 0xc350; request.ContentType = "application/x-www-form-urlencoded; charset=utf-8"; request.ContentLength = contentLength; } return(request); }
/// <summary> /// Create a client for the Amazon AutoScaling Service with the credentials loaded from the application's /// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance. /// /// Example App.config with credentials set. /// <code> /// <?xml version="1.0" encoding="utf-8" ?> /// <configuration> /// <appSettings> /// <add key="AWSAccessKey" value="********************"/> /// <add key="AWSSecretKey" value="****************************************"/> /// </appSettings> /// </configuration> /// </code> /// </summary> /// <param name="config">Configuration options for the service like HTTP Proxy, # of connections, etc</param> /// <returns>An Amazon AutoScaling client</returns> public static AmazonAutoScaling CreateAmazonAutoScalingClient(AmazonAutoScalingConfig config) { return new AmazonAutoScalingClient(config); }
/// <summary> /// Constructs AmazonAutoScalingClient with AWS Credentials and an /// AmazonAutoScalingClient Configuration object. /// </summary> /// <param name="credentials">AWS Credentials</param> /// <param name="clientConfig">The AmazonAutoScalingClient Configuration Object</param> public AmazonAutoScalingClient(AWSCredentials credentials, AmazonAutoScalingConfig clientConfig) : base(credentials, clientConfig) { }
/// <summary> /// Constructs AmazonAutoScalingClient with AWS Access Key ID, AWS Secret Key and an /// AmazonAutoScalingClient Configuration object. /// </summary> /// <param name="awsAccessKeyId">AWS Access Key ID</param> /// <param name="awsSecretAccessKey">AWS Secret Access Key</param> /// <param name="awsSessionToken">AWS Session Token</param> /// <param name="clientConfig">The AmazonAutoScalingClient Configuration Object</param> public AmazonAutoScalingClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken, AmazonAutoScalingConfig clientConfig) : base(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, clientConfig) { }
/// <summary> /// Constructs AmazonAutoScalingClient with AWS Credentials and an /// AmazonAutoScalingClient Configuration object. /// </summary> /// <param name="credentials">AWS Credentials</param> /// <param name="clientConfig">The AmazonAutoScalingClient Configuration Object</param> public AmazonAutoScalingClient(AWSCredentials credentials, AmazonAutoScalingConfig clientConfig) : base(credentials, clientConfig, AuthenticationTypes.User | AuthenticationTypes.Session) { }
/// <summary> /// Constructs AmazonAutoScalingClient with the credentials loaded from the application's /// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance. /// /// Example App.config with credentials set. /// <code> /// <?xml version="1.0" encoding="utf-8" ?> /// <configuration> /// <appSettings> /// <add key="AWSAccessKey" value="********************"/> /// <add key="AWSSecretKey" value="****************************************"/> /// </appSettings> /// </configuration> /// </code> /// /// </summary> /// <param name="config">The AmazonAutoScaling Configuration Object</param> public AmazonAutoScalingClient(AmazonAutoScalingConfig config) : base(FallbackCredentialsFactory.GetCredentials(), config, AuthenticationTypes.User | AuthenticationTypes.Session) { }
/// <summary> /// Constructs AmazonAutoScalingClient with the credentials loaded from the application's /// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance. /// /// Example App.config with credentials set. /// <code> /// <?xml version="1.0" encoding="utf-8" ?> /// <configuration> /// <appSettings> /// <add key="AWSProfileName" value="AWS Default"/> /// </appSettings> /// </configuration> /// </code> /// /// </summary> /// <param name="config">The AmazonAutoScalingClient Configuration Object</param> public AmazonAutoScalingClient(AmazonAutoScalingConfig config) : base(FallbackCredentialsFactory.GetCredentials(), config) { }
/// <summary> /// Creates AWS auto scaling group client /// </summary> /// <returns>AmazonAutoScalingClient</returns> private AmazonAutoScalingClient GetAutoScaleClient() { if (vm.Region == null) { throw new InvalidRegionException("No region defined when creating auto scaling client"); } AmazonAutoScalingConfig config = new AmazonAutoScalingConfig(); config.ServiceURL = vm.Region.Url; AmazonAutoScalingClient client = new AmazonAutoScalingClient(config); return client; }
/// <summary> /// Constructs AmazonAutoScalingClient with AWS Access Key ID, AWS Secret Key and an /// AmazonAutoScalingClient Configuration object. If the config object's /// UseSecureStringForAwsSecretKey is false, the AWS Secret Key /// is stored as a clear-text string. Please use this option only /// if the application environment doesn't allow the use of SecureStrings. /// </summary> /// <param name="awsAccessKeyId">AWS Access Key ID</param> /// <param name="awsSecretAccessKey">AWS Secret Access Key</param> /// <param name="clientConfig">The AmazonAutoScalingClient Configuration Object</param> public AmazonAutoScalingClient(string awsAccessKeyId, string awsSecretAccessKey, AmazonAutoScalingConfig clientConfig) : base(awsAccessKeyId, awsSecretAccessKey, clientConfig) { }
/// <summary> /// Constructs AmazonAutoScalingClient with the credentials defined in the App.config. /// /// Example App.config with credentials set. /// <code> /// <?xml version="1.0" encoding="utf-8" ?> /// <configuration> /// <appSettings> /// <add key="AWSAccessKey" value="********************"/> /// <add key="AWSSecretKey" value="****************************************"/> /// </appSettings> /// </configuration> /// </code> /// /// </summary> /// <param name="config">The AmazonAutoScaling Configuration Object</param> public AmazonAutoScalingClient(AmazonAutoScalingConfig config) : base(new EnvironmentAWSCredentials(), config, true, AuthenticationTypes.User) { }
/// <summary> /// Create a client for the Amazon AutoScaling Service with AWSCredentials and an AmazonAutoScaling Configuration object. /// </summary> /// <param name="credentials">AWS Credentials</param> /// <param name="config">Configuration options for the service like HTTP Proxy, # of connections, etc</param> /// <returns>An Amazon AutoScaling client</returns> /// <remarks> /// </remarks> public static IAmazonAutoScaling CreateAmazonAutoScalingClient(AWSCredentials credentials, AmazonAutoScalingConfig config) { return new AmazonAutoScalingClient(credentials, config); }
/// <summary> /// Constructs AmazonAutoScalingClient with AWS Access Key ID, AWS Secret Key and an /// AmazonAutoScalingClient Configuration object. /// </summary> /// <param name="awsAccessKeyId">AWS Access Key ID</param> /// <param name="awsSecretAccessKey">AWS Secret Access Key</param> /// <param name="awsSessionToken">AWS Session Token</param> /// <param name="clientConfig">The AmazonAutoScalingClient Configuration Object</param> public AmazonAutoScalingClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken, AmazonAutoScalingConfig clientConfig) : base(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, clientConfig, AuthenticationTypes.User | AuthenticationTypes.Session) { }
/// <summary> /// Notification configuration window load event /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void NcWindow_Loaded(object sender, RoutedEventArgs e) { try { AmazonAutoScalingConfig config = new AmazonAutoScalingConfig(); config.ServiceURL = ((ViewModel)this.DataContext).Region.Url; AmazonAutoScalingClient client = new AmazonAutoScalingClient(config); DescribeAutoScalingNotificationTypesRequest dasntreq = new DescribeAutoScalingNotificationTypesRequest(); DescribeAutoScalingNotificationTypesResponse dasntresp = client.DescribeAutoScalingNotificationTypes(dasntreq); foreach (string asnt in dasntresp.DescribeAutoScalingNotificationTypesResult.AutoScalingNotificationTypes) { this.notificationTypes.Add(asnt); } AmazonSimpleNotificationServiceConfig snsconfig = new AmazonSimpleNotificationServiceConfig(); config.ServiceURL = ((ViewModel)this.DataContext).Region.Url; AmazonSimpleNotificationServiceClient snsclient = new AmazonSimpleNotificationServiceClient(snsconfig); ListTopicsRequest ltrequest = new ListTopicsRequest(); ListTopicsResponse ltresp = snsclient.ListTopics(ltrequest); foreach (Topic topic in ltresp.ListTopicsResult.Topics) { this.snstopics.Add(topic.TopicArn); } rlbNcTypes.ItemsSource = this.notificationTypes; cboTopics.ItemsSource = this.snstopics; } catch { MessageBox.Show(Window.GetWindow(this), "Error occured while loading the notification configuration options.", "Error", MessageBoxButton.OK); this.Close(); } }