/// <summary>
        /// Initiates the asynchronous execution of the ListResourceRecordSets operation.
        /// <seealso cref="Amazon.Route53.IAmazonRoute53.ListResourceRecordSets"/>
        /// </summary>
        ///
        /// <param name="request">Container for the necessary parameters to execute the ListResourceRecordSets operation.</param>
        /// <param name="cancellationToken">
        ///     A cancellation token that can be used by other objects or threads to receive notice of cancellation.
        /// </param>
        /// <returns>The task object representing the asynchronous operation.</returns>
        public Task <ListResourceRecordSetsResponse> ListResourceRecordSetsAsync(ListResourceRecordSetsRequest request, CancellationToken cancellationToken = default(CancellationToken))
        {
            var marshaller   = new ListResourceRecordSetsRequestMarshaller();
            var unmarshaller = ListResourceRecordSetsResponseUnmarshaller.GetInstance();

            return(Invoke <IRequest, ListResourceRecordSetsRequest, ListResourceRecordSetsResponse>(request, marshaller, unmarshaller, signer, cancellationToken));
        }
Example #2
0
        internal ListResourceRecordSetsResponse ListResourceRecordSets(ListResourceRecordSetsRequest request)
        {
            var marshaller   = new ListResourceRecordSetsRequestMarshaller();
            var unmarshaller = ListResourceRecordSetsResponseUnmarshaller.Instance;

            return(Invoke <ListResourceRecordSetsRequest, ListResourceRecordSetsResponse>(request, marshaller, unmarshaller));
        }
Example #3
0
        /// <summary>
        /// Initiates the asynchronous execution of the ListResourceRecordSets operation.
        /// <seealso cref="Amazon.Route53.IAmazonRoute53"/>
        /// </summary>
        ///
        /// <param name="request">Container for the necessary parameters to execute the ListResourceRecordSets operation.</param>
        /// <param name="cancellationToken">
        ///     A cancellation token that can be used by other objects or threads to receive notice of cancellation.
        /// </param>
        /// <returns>The task object representing the asynchronous operation.</returns>
        public Task <ListResourceRecordSetsResponse> ListResourceRecordSetsAsync(ListResourceRecordSetsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
        {
            var marshaller   = new ListResourceRecordSetsRequestMarshaller();
            var unmarshaller = ListResourceRecordSetsResponseUnmarshaller.Instance;

            return(InvokeAsync <ListResourceRecordSetsRequest, ListResourceRecordSetsResponse>(request, marshaller,
                                                                                               unmarshaller, cancellationToken));
        }
        IAsyncResult invokeListResourceRecordSets(ListResourceRecordSetsRequest listResourceRecordSetsRequest, AsyncCallback callback, object state, bool synchronized)
        {
            IRequest    irequest     = new ListResourceRecordSetsRequestMarshaller().Marshall(listResourceRecordSetsRequest);
            var         unmarshaller = ListResourceRecordSetsResponseUnmarshaller.GetInstance();
            AsyncResult result       = new AsyncResult(irequest, callback, state, synchronized, signer, unmarshaller);

            Invoke(result);
            return(result);
        }
        /// <summary>
        /// <para>Imagine all the resource record sets in a zone listed out in front of you. Imagine them sorted lexicographically first by DNS name
        /// (with the labels reversed, like "com.amazon.www" for example), and secondarily, lexicographically by record type. This operation retrieves
        /// at most MaxItems resource record sets from this list, in order, starting at a position specified by the Name and Type arguments:</para>
        /// <ul>
        /// <li>If both Name and Type are omitted, this means start the results at the first RRSET in the HostedZone.</li>
        /// <li>If Name is specified but Type is omitted, this means start the results at the first RRSET in the list whose name is greater than or
        /// equal to Name. </li>
        /// <li>If both Name and Type are specified, this means start the results at the first RRSET in the list whose name is greater than or equal to
        /// Name and whose type is greater than or equal to Type.</li>
        /// <li>It is an error to specify the Type but not the Name.</li>
        ///
        /// </ul>
        /// <para>Use ListResourceRecordSets to retrieve a single known record set by specifying the record set's name and type, and setting MaxItems =
        /// 1</para> <para>To retrieve all the records in a HostedZone, first pause any processes making calls to ChangeResourceRecordSets. Initially
        /// call ListResourceRecordSets without a Name and Type to get the first page of record sets. For subsequent calls, set Name and Type to the
        /// NextName and NextType values returned by the previous response. </para> <para>In the presence of concurrent ChangeResourceRecordSets calls,
        /// there is no consistency of results across calls to ListResourceRecordSets. The only way to get a consistent multi-page snapshot of all
        /// RRSETs in a zone is to stop making changes while pagination is in progress.</para> <para>However, the results from ListResourceRecordSets
        /// are consistent within a page. If MakeChange calls are taking place concurrently, the result of each one will either be completely visible in
        /// your results or not at all. You will not see partial changes, or changes that do not ultimately succeed. (This follows from the fact that
        /// MakeChange is atomic) </para> <para>The results from ListResourceRecordSets are strongly consistent with ChangeResourceRecordSets. To be
        /// precise, if a single process makes a call to ChangeResourceRecordSets and receives a successful response, the effects of that change will be
        /// visible in a subsequent call to ListResourceRecordSets by that process.</para>
        /// </summary>
        ///
        /// <param name="request">Container for the necessary parameters to execute the ListResourceRecordSets service method on
        /// AmazonRoute53.</param>
        ///
        /// <returns>The response from the ListResourceRecordSets service method, as returned by AmazonRoute53.</returns>
        ///
        /// <exception cref="T:Amazon.Route53.Model.NoSuchHostedZoneException" />
        /// <exception cref="T:Amazon.Route53.Model.InvalidInputException" />
        public ListResourceRecordSetsResponse ListResourceRecordSets(ListResourceRecordSetsRequest request)
        {
            var task = ListResourceRecordSetsAsync(request);

            try
            {
                return(task.Result);
            }
            catch (AggregateException e)
            {
                ExceptionDispatchInfo.Capture(e.InnerException).Throw();
                return(null);
            }
        }
 /// <summary>
 /// Initiates the asynchronous execution of the ListResourceRecordSets operation.
 /// <seealso cref="Amazon.Route53.AmazonRoute53.ListResourceRecordSets"/>
 /// </summary>
 ///
 /// <param name="listResourceRecordSetsRequest">Container for the necessary parameters to execute the ListResourceRecordSets operation on
 ///          AmazonRoute53.</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
 ///         EndListResourceRecordSets operation.</returns>
 public IAsyncResult BeginListResourceRecordSets(ListResourceRecordSetsRequest listResourceRecordSetsRequest, AsyncCallback callback, object state)
 {
     return(invokeListResourceRecordSets(listResourceRecordSetsRequest, callback, state, false));
 }
        /// <summary>
        /// <para>Imagine all the resource record sets in a zone listed out in front of you. Imagine them sorted lexicographically first by DNS name
        /// (with the labels reversed, like "com.amazon.www" for example), and secondarily, lexicographically by record type. This operation retrieves
        /// at most MaxItems resource record sets from this list, in order, starting at a position specified by the Name and Type arguments:</para>
        /// <ul>
        /// <li>If both Name and Type are omitted, this means start the results at the first RRSET in the HostedZone.</li>
        /// <li>If Name is specified but Type is omitted, this means start the results at the first RRSET in the list whose name is greater than or
        /// equal to Name. </li>
        /// <li>If both Name and Type are specified, this means start the results at the first RRSET in the list whose name is greater than or equal to
        /// Name and whose type is greater than or equal to Type.</li>
        /// <li>It is an error to specify the Type but not the Name.</li>
        ///
        /// </ul>
        /// <para>Use ListResourceRecordSets to retrieve a single known record set by specifying the record set's name and type, and setting MaxItems =
        /// 1</para> <para>To retrieve all the records in a HostedZone, first pause any processes making calls to ChangeResourceRecordSets. Initially
        /// call ListResourceRecordSets without a Name and Type to get the first page of record sets. For subsequent calls, set Name and Type to the
        /// NextName and NextType values returned by the previous response. </para> <para>In the presence of concurrent ChangeResourceRecordSets calls,
        /// there is no consistency of results across calls to ListResourceRecordSets. The only way to get a consistent multi-page snapshot of all
        /// RRSETs in a zone is to stop making changes while pagination is in progress.</para> <para>However, the results from ListResourceRecordSets
        /// are consistent within a page. If MakeChange calls are taking place concurrently, the result of each one will either be completely visible in
        /// your results or not at all. You will not see partial changes, or changes that do not ultimately succeed. (This follows from the fact that
        /// MakeChange is atomic) </para> <para>The results from ListResourceRecordSets are strongly consistent with ChangeResourceRecordSets. To be
        /// precise, if a single process makes a call to ChangeResourceRecordSets and receives a successful response, the effects of that change will be
        /// visible in a subsequent call to ListResourceRecordSets by that process.</para>
        /// </summary>
        ///
        /// <param name="listResourceRecordSetsRequest">Container for the necessary parameters to execute the ListResourceRecordSets service method on
        ///          AmazonRoute53.</param>
        ///
        /// <returns>The response from the ListResourceRecordSets service method, as returned by AmazonRoute53.</returns>
        ///
        /// <exception cref="NoSuchHostedZoneException"/>
        /// <exception cref="InvalidInputException"/>
        public ListResourceRecordSetsResponse ListResourceRecordSets(ListResourceRecordSetsRequest listResourceRecordSetsRequest)
        {
            IAsyncResult asyncResult = invokeListResourceRecordSets(listResourceRecordSetsRequest, null, null, true);

            return(EndListResourceRecordSets(asyncResult));
        }
Example #8
0
 public async Task <ListResourceRecordSetsResponse> ListResourceRecordSetsAsync(ListResourceRecordSetsRequest request)
 {
     return(await GetAsync <ListResourceRecordSetsResponse>($"/hostedzone/{request.Id}/rrset" + request.ToQueryString()));
 }