# File lib/smart_proxy_dns_infoblox/dns_infoblox_main.rb, line 5 def initialize(host, connection, ttl) ENV['WAPI_VERSION']='2.0' @connection = connection super(host, ttl) end
# File lib/smart_proxy_dns_infoblox/dns_infoblox_main.rb, line 11 def create_a_record(fqdn, ip) case a_record_conflicts(fqdn, ip) #returns -1, 0, 1 when 1 raise(Proxy::Dns::Collision, "'#{fqdn} 'is already in use") when 0 then return nil else do_create(Infoblox::Arecord, :connection => connection, :name => fqdn, :ipv4addr => ip) end end
# File lib/smart_proxy_dns_infoblox/dns_infoblox_main.rb, line 22 def create_ptr_record(fqdn, ptr) case ptr_record_conflicts(fqdn, ptr_to_ip(ptr)) #returns -1, 0, 1 when 1 raise(Proxy::Dns::Collision, "'#{fqdn} 'is already in use") when 0 then return nil else do_create(Infoblox::Ptr, :connection => connection, :ptrdname => fqdn, :ipv4addr => ptr_to_ip(ptr)) end # FIXME: add a reverse 'PTR' record with ip, fqdn end
# File lib/smart_proxy_dns_infoblox/dns_infoblox_main.rb, line 49 def do_create(clazz, params) clazz.new(params).post end
# File lib/smart_proxy_dns_infoblox/dns_infoblox_main.rb, line 53 def do_delete(record, id) raise Proxy::Dns::NotFound, "Cannot find DNS entry for #{id}" if record.nil? record.delete || (raise Proxy::Dns::NotFound, "Cannot find DNS entry for #{id}") end
# File lib/smart_proxy_dns_infoblox/dns_infoblox_main.rb, line 34 def remove_a_record(fqdn) do_delete(Infoblox::Arecord.find(connection, :name => fqdn, :_max_results => 1).first, fqdn) end
# File lib/smart_proxy_dns_infoblox/dns_infoblox_main.rb, line 38 def remove_ptr_record(ptr) ptr_record = Infoblox::Ptr.find(connection, :ipv4addr => ptr_to_ip(ptr), :_max_results => 1).first unless ptr_record.nil? ptr_record.ipv6addr = nil ptr_record.view = nil end do_delete(ptr_record, ptr) # FIXME: remove the reverse 'PTR' record with ip end