/// <summary>
        /// <para> The DeleteDBInstance API deletes a previously provisioned RDS instance. A successful response from the web service indicates the
        /// request was received correctly. If a final DBSnapshot is requested the status of the RDS instance will be "deleting" until the DBSnapshot is
        /// created. DescribeDBInstance is used to monitor the status of this operation. This cannot be canceled or reverted once submitted. </para>
        /// </summary>
        ///
        /// <param name="deleteDBInstanceRequest">Container for the necessary parameters to execute the DeleteDBInstance service method on
        ///           AmazonRDS.</param>
        ///
        /// <returns>The response from the DeleteDBInstance service method, as returned by AmazonRDS.</returns>
        ///
        /// <exception cref="DBInstanceNotFoundException"/>
        /// <exception cref="InvalidDBInstanceStateException"/>
        /// <exception cref="SnapshotQuotaExceededException"/>
        /// <exception cref="DBSnapshotAlreadyExistsException"/>
        public DeleteDBInstanceResponse DeleteDBInstance(DeleteDBInstanceRequest deleteDBInstanceRequest)
        {
            IRequest <DeleteDBInstanceRequest> request  = new DeleteDBInstanceRequestMarshaller().Marshall(deleteDBInstanceRequest);
            DeleteDBInstanceResponse           response = Invoke <DeleteDBInstanceRequest, DeleteDBInstanceResponse> (request, this.signer, DeleteDBInstanceResponseUnmarshaller.GetInstance());

            return(response);
        }
        static void Main(string[] args)
        {
            try
            {
                //create RDS instance
                client = new AmazonRDSClient();
                CreateDBInstanceRequest request = new CreateDBInstanceRequest("packtpubRDS", 5, "db.m1.small", "mysql", "dbadmin", "password");
                client.CreateDBInstance(request);

                // list RDS instances
                DescribeDBInstancesRequest  request2  = new DescribeDBInstancesRequest();
                DescribeDBInstancesResponse response2 = new DescribeDBInstancesResponse();
                response2 = client.DescribeDBInstances(request2);
                foreach (DBInstance entry in response2.DBInstances)
                {
                    Console.WriteLine(entry.DBInstanceIdentifier);
                }

                Console.WriteLine("Waiting for 60 seconds before deleting the RDS instance");
                System.Threading.Thread.Sleep(50000);

                // delete RDS instance
                DeleteDBInstanceRequest delete_request = new DeleteDBInstanceRequest("packtpubRDS");
                delete_request.SkipFinalSnapshot = true;
                client.DeleteDBInstance(delete_request);
            }
            catch (AmazonRDSException exception)
            {
                Console.WriteLine("Error!");
                Console.WriteLine(exception.ErrorCode);
                Console.ReadKey();
            }
        }
 private async Task DeleteDatabase()
 {
     var request = new DeleteDBInstanceRequest
     {
         DBInstanceIdentifier = _context.Settings.Database.Name,
         SkipFinalSnapshot    = true
     };
     await _client.DeleteDBInstanceAsync(request);
 }
Exemple #4
0
        private void DeleteDatabase()
        {
            var request = new DeleteDBInstanceRequest
            {
                DBInstanceIdentifier = _context.Settings.Database.Name,
                SkipFinalSnapshot    = true
            };

            _client.DeleteDBInstance(request);
        }
Exemple #5
0
    private async Task DeleteInstance(DBInstance instance)
    {
        _logger.Info("Deleting old instance.");

        string finalSnapshotID = $"beta-final-snap-{SystemClock.Instance.GetToday().ToISOString()}-{Guid.NewGuid().ToString()[0]}";
        var    deleteRequest   = new DeleteDBInstanceRequest()
        {
            DBInstanceIdentifier      = instance.DBInstanceIdentifier,
            FinalDBSnapshotIdentifier = finalSnapshotID
        };
        await _rdsClient.DeleteDBInstanceAsync(deleteRequest);
    }
Exemple #6
0
        private static IDictionary <string, string> ConvertDeleteDBInstance(DeleteDBInstanceRequest request)
        {
            IDictionary <string, string> dictionary = new Dictionary <string, string>();

            dictionary["Action"] = "DeleteDBInstance";
            if (request.IsSetDBInstanceIdentifier())
            {
                dictionary["DBInstanceIdentifier"] = request.DBInstanceIdentifier;
            }
            if (request.IsSetSkipFinalSnapshot())
            {
                dictionary["SkipFinalSnapshot"] = request.SkipFinalSnapshot.ToString().ToLower();
            }
            if (request.IsSetFinalDBSnapshotIdentifier())
            {
                dictionary["FinalDBSnapshotIdentifier"] = request.FinalDBSnapshotIdentifier;
            }
            return(dictionary);
        }
Exemple #7
0
 public DeleteDBInstanceResponse DeleteDBInstance(DeleteDBInstanceRequest request)
 {
     return(this.Invoke <DeleteDBInstanceResponse>(ConvertDeleteDBInstance(request)));
 }