Copyright | (c) 2013-2015 Brendan Hay |
---|---|
License | Mozilla Public License, v. 2.0. |
Maintainer | Brendan Hay <brendan.g.hay@gmail.com> |
Stability | auto-generated |
Portability | non-portable (GHC extensions) |
Safe Haskell | None |
Language | Haskell2010 |
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.
- listResourceRecordSets :: Text -> ListResourceRecordSets
- data ListResourceRecordSets
- lrrsStartRecordName :: Lens' ListResourceRecordSets (Maybe Text)
- lrrsStartRecordType :: Lens' ListResourceRecordSets (Maybe RecordType)
- lrrsStartRecordIdentifier :: Lens' ListResourceRecordSets (Maybe Text)
- lrrsMaxItems :: Lens' ListResourceRecordSets (Maybe Text)
- lrrsHostedZoneId :: Lens' ListResourceRecordSets Text
- listResourceRecordSetsResponse :: Int -> Bool -> Text -> ListResourceRecordSetsResponse
- data ListResourceRecordSetsResponse
- lrrsrsNextRecordType :: Lens' ListResourceRecordSetsResponse (Maybe RecordType)
- lrrsrsNextRecordName :: Lens' ListResourceRecordSetsResponse (Maybe Text)
- lrrsrsNextRecordIdentifier :: Lens' ListResourceRecordSetsResponse (Maybe Text)
- lrrsrsResponseStatus :: Lens' ListResourceRecordSetsResponse Int
- lrrsrsResourceRecordSets :: Lens' ListResourceRecordSetsResponse [ResourceRecordSet]
- lrrsrsIsTruncated :: Lens' ListResourceRecordSetsResponse Bool
- lrrsrsMaxItems :: Lens' ListResourceRecordSetsResponse Text
Creating a Request
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:
data ListResourceRecordSets Source
The input for a ListResourceRecordSets request.
See: listResourceRecordSets
smart constructor.
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
listResourceRecordSetsResponse Source
:: Int | |
-> Bool | |
-> Text | |
-> ListResourceRecordSetsResponse |
Creates a value of ListResourceRecordSetsResponse
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
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.
lrrsrsResponseStatus :: Lens' ListResourceRecordSetsResponse Int Source
The response status code.
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.