IAsyncResult invokeListTables(ListTablesRequest listTablesRequest, AsyncCallback callback, object state, bool synchronized)
 {
     IRequest irequest = new ListTablesRequestMarshaller().Marshall(listTablesRequest);
     var unmarshaller = ListTablesResponseUnmarshaller.GetInstance();
     AsyncResult result = new AsyncResult(irequest, callback, state, synchronized, signer, unmarshaller);
     Invoke(result);
     return result;
 }
 /// <summary>
 /// Initiates the asynchronous execution of the ListTables operation.
 /// <seealso cref="Amazon.DynamoDB.AmazonDynamoDB.ListTables"/>
 /// </summary>
 /// 
 /// <param name="listTablesRequest">Container for the necessary parameters to execute the ListTables operation on AmazonDynamoDB.</param>
 /// <param name="callback">An AsyncCallback delegate that is invoked when the operation completes.</param>
 /// <param name="state">A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
 ///          procedure using the AsyncState property.</param>
 /// 
 /// <returns>An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListTables
 ///         operation.</returns>
 public IAsyncResult BeginListTables(ListTablesRequest listTablesRequest, AsyncCallback callback, object state)
 {
     return invokeListTables(listTablesRequest, callback, state, false);
 }
 /// <summary>
 /// <para>Retrieves a paginated list of table names created by the AWS Account of the caller in the AWS Region (e.g. <c>us-east-1</c> ).</para>
 /// </summary>
 /// 
 /// <param name="listTablesRequest">Container for the necessary parameters to execute the ListTables service method on AmazonDynamoDB.</param>
 /// 
 /// <returns>The response from the ListTables service method, as returned by AmazonDynamoDB.</returns>
 /// 
 /// <exception cref="InternalServerErrorException"/>
 public ListTablesResponse ListTables(ListTablesRequest listTablesRequest)
 {
     IAsyncResult asyncResult = invokeListTables(listTablesRequest, null, null, true);
     return EndListTables(asyncResult);
 }
 /// <summary>
 /// <para> Returns a paginated list of table names created by the AWS Account of the caller in the AWS Region (e.g. us-east-1). </para>
 /// </summary>
 /// 
 /// <param name="listTablesRequest">Container for the necessary parameters to execute the ListTables service method on AmazonDynamoDB.</param>
 /// 
 /// <returns>The response from the ListTables service method, as returned by AmazonDynamoDB.</returns>
 /// 
 /// <exception cref="InternalServerErrorException"/>
 public ListTablesResponse ListTables(ListTablesRequest listTablesRequest)
 {
     IRequest<ListTablesRequest> request = new ListTablesRequestMarshaller().Marshall(listTablesRequest);
     ListTablesResponse response = Invoke<ListTablesRequest, ListTablesResponse> (request, this.signer, ListTablesResponseUnmarshaller.GetInstance());
     return response;
 }