Class: Fog::DNS::Dynect::Record

Inherits:
Model
  • Object
show all
Extended by:
Fog::Deprecation
Defined in:
lib/fog/dynect/models/dns/record.rb

Instance Method Summary collapse

Instance Method Details

#destroyObject



14
15
16
17
18
# File 'lib/fog/dynect/models/dns/record.rb', line 14

def destroy
  requires :identity, :name, :type, :zone
  service.delete_record(type, zone.identity, name, identity)
  true
end

#save(replace = false) ⇒ Object



20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# File 'lib/fog/dynect/models/dns/record.rb', line 20

def save(replace=false)
  requires :name, :type, :rdata, :zone

  options = {
    :ttl => ttl
  }
  options.delete_if {|key, value| value.nil?}

  refresh_id if replace && identity.nil?
  if replace && !identity.nil?
    options['record_id'] = identity
    data = service.put_record(type, zone.identity, name, rdata, options).body['data']
  else
    data = service.post_record(type, zone.identity, name, rdata, options).body['data']
  end
  # avoid overwriting zone object with zone string
  data = data.reject {|key, value| key == 'zone'}
  merge_attributes(data)

  zone.publish
  refresh_id

  true
end

#zoneObject



45
46
47
# File 'lib/fog/dynect/models/dns/record.rb', line 45

def zone
  @zone
end