public void DeleteTable(string tableName) { if (dynamoService == null || string.IsNullOrEmpty(tableName)) { return; } try { dynamoService.RestartDynamoDBContext(); using (IAmazonDynamoDB client = dynamoService.DynamoClient) { DeleteTableRequest deleteTableRequest = new DeleteTableRequest(tableName.ToLower()); DeleteTableResponse deleteTableResponse = client.DeleteTable(deleteTableRequest); TableDescription tableDescription = deleteTableResponse.TableDescription; TableStatus tableStatus = tableDescription.TableStatus; ConsoleHelper.Write("\nDelete table "); ConsoleHelper.Write(tableName.ToUpper(), ConsoleColor.Yellow); ConsoleHelper.Write(" command sent to Amazon, status after deletion: "); ConsoleHelper.Write(tableDescription.TableStatus, ConsoleColor.Green); } } catch (AmazonDynamoDBException exception) { ConsoleHelper.Write(string.Format("Exception while deleting new dynamoDB table: {0}", exception.Message), ConsoleColor.Red); ConsoleHelper.WriteLine(string.Concat("Error code: {0}, error type: {1}", exception.ErrorCode, exception.ErrorType), ConsoleColor.Red); } }
public static void DeleteTables(IAmazonDynamoDB client, Predicate <string> tableNameMatch) { try { var tableNames = client.ListTables().TableNames; foreach (var tableName in tableNames) { DescribeTableResponse descResponse = client.DescribeTable(new DescribeTableRequest { TableName = tableName }); if (descResponse.Table == null) { continue; } TableDescription table = descResponse.Table; if (table.TableStatus == TableStatus.ACTIVE && tableNameMatch(table.TableName)) { Console.WriteLine("Table: {0}, {1}, {2}, {3}", table.TableName, table.TableStatus, table.ProvisionedThroughput.ReadCapacityUnits, table.ProvisionedThroughput.WriteCapacityUnits); Console.WriteLine("Deleting table " + table.TableName + "..."); try { client.DeleteTable(new DeleteTableRequest { TableName = table.TableName }); WaitUntilTableDeleted(table.TableName, client); Console.WriteLine("Succeeded!"); } catch { Console.WriteLine("Failed!"); } } } Console.WriteLine(tableNames.Count); } catch (Exception e) { Console.WriteLine(e.ToString()); throw; } }
private Amazon.DynamoDBv2.Model.DeleteTableResponse CallAWSServiceOperation(IAmazonDynamoDB client, Amazon.DynamoDBv2.Model.DeleteTableRequest request) { Utils.Common.WriteVerboseEndpointMessage(this, client.Config, "Amazon DynamoDB", "DeleteTable"); try { #if DESKTOP return(client.DeleteTable(request)); #elif CORECLR return(client.DeleteTableAsync(request).GetAwaiter().GetResult()); #else #error "Unknown build edition" #endif } catch (AmazonServiceException exc) { var webException = exc.InnerException as System.Net.WebException; if (webException != null) { throw new Exception(Utils.Common.FormatNameResolutionFailureMessage(client.Config, webException.Message), webException); } throw; } }
public static void DeleteTables(IAmazonDynamoDB client, Predicate<string> tableNameMatch) { try { var tableNames = client.ListTables().TableNames; foreach (var tableName in tableNames) { DescribeTableResponse descResponse = client.DescribeTable(new DescribeTableRequest { TableName = tableName }); if (descResponse.Table == null) continue; TableDescription table = descResponse.Table; if (table.TableStatus == TableStatus.ACTIVE && tableNameMatch(table.TableName)) { Console.WriteLine("Table: {0}, {1}, {2}, {3}", table.TableName, table.TableStatus, table.ProvisionedThroughput.ReadCapacityUnits, table.ProvisionedThroughput.WriteCapacityUnits); Console.WriteLine("Deleting table " + table.TableName + "..."); try { client.DeleteTable(new DeleteTableRequest { TableName = table.TableName }); WaitUntilTableDeleted(table.TableName, client); Console.WriteLine("Succeeded!"); } catch { Console.WriteLine("Failed!"); } } } Console.WriteLine(tableNames.Count); } catch (Exception e) { Console.WriteLine(e.ToString()); throw; } }