amazonka-route53-1.2.0.2: Amazon Route 53 SDK.

Copyright(c) 2013-2015 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay <brendan.g.hay@gmail.com>
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellNone
LanguageHaskell2010

Network.AWS.Route53.ListResourceRecordSets

Contents

Description

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:

  • If both Name and Type are omitted, this means start the results at the first RRSET in the HostedZone.
  • 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.
  • 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.
  • It is an error to specify the Type but not the Name.

Use ListResourceRecordSets to retrieve a single known record set by specifying the record set's name and type, and setting MaxItems = 1

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.

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.

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)

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.

See: AWS API Reference for ListResourceRecordSets.

This operation returns paginated results.

Synopsis

Creating a Request

listResourceRecordSets Source

Creates a value of ListResourceRecordSets with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

Request Lenses

lrrsStartRecordName :: Lens' ListResourceRecordSets (Maybe Text) Source

The first name in the lexicographic ordering of domain names that you want the ListResourceRecordSets request to list.

lrrsStartRecordType :: Lens' ListResourceRecordSets (Maybe RecordType) Source

The DNS type at which to begin the listing of resource record sets.

Valid values: A | AAAA | CNAME | MX | NS | PTR | SOA | SPF | SRV | TXT

Values for Weighted Resource Record Sets: A | AAAA | CNAME | TXT

Values for Regional Resource Record Sets: A | AAAA | CNAME | TXT

Values for Alias Resource Record Sets: A | AAAA

Constraint: Specifying 'type' without specifying name returns an InvalidInput error.

lrrsStartRecordIdentifier :: Lens' ListResourceRecordSets (Maybe Text) Source

Weighted resource record sets only: If results were truncated for a given DNS name and type, specify the value of 'ListResourceRecordSetsResponse$NextRecordIdentifier' from the previous response to get the next resource record set that has the current DNS name and type.

lrrsMaxItems :: Lens' ListResourceRecordSets (Maybe Text) Source

The maximum number of records you want in the response body.

lrrsHostedZoneId :: Lens' ListResourceRecordSets Text Source

The ID of the hosted zone that contains the resource record sets that you want to get.

Destructuring the Response

data ListResourceRecordSetsResponse Source

A complex type that contains information about the resource record sets that are returned by the request and information about the response.

See: listResourceRecordSetsResponse smart constructor.

Response Lenses

lrrsrsNextRecordType :: Lens' ListResourceRecordSetsResponse (Maybe RecordType) Source

If the results were truncated, the type of the next record in the list. This element is present only if ListResourceRecordSetsResponse$IsTruncated is true.

lrrsrsNextRecordName :: Lens' ListResourceRecordSetsResponse (Maybe Text) Source

If the results were truncated, the name of the next record in the list. This element is present only if ListResourceRecordSetsResponse$IsTruncated is true.

lrrsrsNextRecordIdentifier :: Lens' ListResourceRecordSetsResponse (Maybe Text) Source

Weighted resource record sets only: If results were truncated for a given DNS name and type, the value of SetIdentifier for the next resource record set that has the current DNS name and type.

lrrsrsResourceRecordSets :: Lens' ListResourceRecordSetsResponse [ResourceRecordSet] Source

A complex type that contains information about the resource record sets that are returned by the request.

lrrsrsIsTruncated :: Lens' ListResourceRecordSetsResponse Bool Source

A flag that indicates whether there are more resource record sets to be listed. If your results were truncated, you can make a follow-up request for the next page of results by using the ListResourceRecordSetsResponse$NextRecordName element.

Valid Values: true | false

lrrsrsMaxItems :: Lens' ListResourceRecordSetsResponse Text Source

The maximum number of records you requested. The maximum value of MaxItems is 100.