class Fog::DNS::Google::Zone

Managed Zone resource

@see developers.google.com/cloud-dns/api/v1/managedZones

Public Instance Methods

changes() click to toggle source

Enumerates the list of Changes for the Managed Zone

@return Array<Fog::DNS::Google::Change>] List of Changes for the Managed Zone

# File lib/fog/dns/google/models/zone.rb, line 22
def changes
  @changes = begin
    Fog::DNS::Google::Changes.new(
      :service => service,
      :zone => self
    )
  end
end
destroy() click to toggle source

Deletes a previously created Managed Zone

@return [Boolean] If the Managed Zone has been deleted

# File lib/fog/dns/google/models/zone.rb, line 35
def destroy
  requires :identity

  service.delete_managed_zone(identity)
  true
end
records() click to toggle source

Enumerates the list of Resource Record Sets for the Managed Zone

@return Array<Fog::DNS::Google::Record>] List of Resource Record Sets for the Managed Zone

# File lib/fog/dns/google/models/zone.rb, line 46
def records
  @records = begin
    Fog::DNS::Google::Records.new(
      :service => service,
      :zone => self
    )
  end
end
save() click to toggle source

Creates a new Managed Zone

@return [Fog::DNS::Google::Zone] Managed Zone @raise [Fog::Errors::Error] If Managed Zone already exists

# File lib/fog/dns/google/models/zone.rb, line 60
def save
  requires :name, :domain, :description

  raise Fog::Errors::Error.new("Resaving an existing object may create a duplicate") if persisted?

  data = service.create_managed_zone(name, domain, description)
  merge_attributes(data.to_h)
  self
end