The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Net::Amazon::R53::HostedZone - Representation of a Route53 HostedZone

VERSION

This document describes version 0.002 of Net::Amazon::R53::HostedZone - released January 09, 2013 as part of Net-Amazon-R53.

DESCRIPTION

This class represents a Route53 hosted zone entity. You should never need to construct this class yourself, as the parent will do it for you when appropriate.

REQUIRED ATTRIBUTES

These attributes are required, and must have their values supplied during object construction.

r53

caller_reference

config

id

name

resource_record_set_count

This attribute reflects the number of mutable records; which will always be two less than the total number. Accordingly, this number is adjusted down two from the raw count returned from Route53 in a hosted zone query.

LAZY ATTRIBUTES

These attributes are lazily constructed from another source (e.g. required attributes, external source, a BUILD() method, or some combo thereof). You can set these values at construction time, though this is generally neither required nor recommended.

plain_id

The full hosted zone ID Amazon returns looks something like:

    /hostedzone/ZAJ312RFF552

However, most operations (and indeed, this library) use just the last part:

    ZAJ312RFF552

This attribute builds the short form for you on demand.

immutable_record_sets

Contains the set of two Amazon-created records that lead every host zone's record set set.

resource_record_sets

Contains this hosted zone's last fetched set of resource records. This set does not include the Amazon-supplied "immutable" ones.

METHODS

clear_reset_record_sets

Clears our cached set of resource records. (Will be rebuilt on next access)

has_fetched_resource_record_sets

True if the resource records for this zone have been fetched. Useful to determine if this has happened without calling anything that may cause the fetch operation to be executed.

is_pristine_zone

Returns true if the zone contains no resource record sets other than the immutable ones Amazon supplies. A "pristine" zone can be deleted.

apply_atomic_change($ac)

Given an AtomicChange instance, apply the changes described to this hosted zone.

submit_resource_records_change_request(comment => ..., changes => [ ... ])

Takes a set of either Net::Amazon::R53::ResourceRecordSet::Change or array references suitable to passing to that class' constructor. We return a Net::Amazon::R53::ChangeInfo instance representing the submitted change.

On failure, we throw an error.

multi_batch_ok

We also accept a multi_batch_ok option, that defaults to false. If set true, change sets with greater than 100 changes are broken up and submitted as multiple requests, in batches of no more than 100 changes at a time.

If we're called in list context, we return the list of change-info objects returned from the multiple operations. If we're called in scalar context, we return the last of the returned info objects.

purge

Delete all records from the zone that Route53 requires to be removed before the zone may be deleted. (That is, all records save the two "immutable" first records, the Route53-generated NS and SOA records.)

SEE ALSO

Please see those modules/websites for more information related to this module.

AUTHOR

Chris Weyl <cweyl@campusexplorer.com>

CONTRIBUTOR

Chris Weyl <cweyl@alumni.drew.edu>

COPYRIGHT AND LICENSE

This software is Copyright (c) 2012 by Campus Explorer, Inc.

This is free software, licensed under:

  The GNU Lesser General Public License, Version 2.1, February 1999