code: @Override
      public DeleteDatabaseResult deleteDatabase(DeleteDatabaseRequest request) {
          request = beforeClientExecution(request);
          return executeDeleteDatabase(request);
      }
docs: <p>
  Removes a specified Database from a Data Catalog.
  </p>
  <note>
  <p>
  After completing this operation, you will no longer have access to the tables (and all table versions and
  partitions that might belong to the tables) and the user-defined functions in the deleted database. AWS Glue
  deletes these "orphaned" resources asynchronously in a timely manner, at the discretion of the service.
  </p>
  <p>
  To ensure immediate deletion of all related resources, before calling <code>DeleteDatabase</code>, use
  <code>DeleteTableVersion</code> or <code>BatchDeleteTableVersion</code>, <code>DeletePartition</code> or
  <code>BatchDeletePartition</code>, <code>DeleteUserDefinedFunction</code>, and <code>DeleteTable</code> or
  <code>BatchDeleteTable</code>, to delete any resources that belong to the database.
  </p>
  </note>
  
  @param deleteDatabaseRequest
  @return Result of the DeleteDatabase operation returned by the service.
  @throws EntityNotFoundException
  A specified entity does not exist
  @throws InvalidInputException
  The input provided was not valid.
  @throws InternalServiceException
  An internal service error occurred.
  @throws OperationTimeoutException
  The operation timed out.
  @sample AWSGlue.DeleteDatabase
  @see <a href="http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/DeleteDatabase" target="_top">AWS API
  Documentation</a>