From 9ab4b90ed276b530480b447733c8b2f2a8ef6f1c Mon Sep 17 00:00:00 2001 From: Tiago Freire Date: Thu, 8 Sep 2016 16:02:13 -0300 Subject: Fix Record Show --- lib/powerdnsex.ex | 8 ++++---- lib/powerdnsex/gen_server/server.ex | 4 ++-- lib/powerdnsex/managers/records_manager.ex | 6 ++++-- 3 files changed, 10 insertions(+), 8 deletions(-) diff --git a/lib/powerdnsex.ex b/lib/powerdnsex.ex index 73f3d7e..0f7876b 100644 --- a/lib/powerdnsex.ex +++ b/lib/powerdnsex.ex @@ -72,12 +72,12 @@ defmodule PowerDNSex do call({:create_record, zone, rrset_attrs}) end - @spec show_record(Zone.t, struct) :: :ok | {:error, String.t} + @spec show_record(String.t, struct) :: :ok | {:error, String.t} @doc """ - Show / Retrive info of the specific Record of the given Zone + Show / Retrive info of the specific Record of the given Zone name """ - def show_record(%Zone{} = zone, %{} = rrset_attrs) do - call({:show_record, zone, rrset_attrs}) + def show_record(zone_name, %{} = rrset_attrs) do + call({:show_record, zone_name, rrset_attrs}) end @spec update_record(Zone.t, struct) :: :ok | {:error, String.t} diff --git a/lib/powerdnsex/gen_server/server.ex b/lib/powerdnsex/gen_server/server.ex index 52768b3..bed016b 100644 --- a/lib/powerdnsex/gen_server/server.ex +++ b/lib/powerdnsex/gen_server/server.ex @@ -28,8 +28,8 @@ defmodule PowerDNSex.Server do {:reply, RecordsManager.create(zone, rrset_attrs), state} end - def handle_call({:show_record, zone, rrset_attrs}, _from, state) do - {:reply, RecordsManager.show(zone, rrset_attrs), state} + def handle_call({:show_record, zone_name, rrset_attrs}, _from, state) do + {:reply, RecordsManager.show(zone_name, rrset_attrs), state} end def handle_call({:update_record, zone, rrset_attrs}, _from, state) do diff --git a/lib/powerdnsex/managers/records_manager.ex b/lib/powerdnsex/managers/records_manager.ex index a8c67e5..876234f 100644 --- a/lib/powerdnsex/managers/records_manager.ex +++ b/lib/powerdnsex/managers/records_manager.ex @@ -13,8 +13,10 @@ defmodule PowerDNSex.Managers.RecordsManager do end def show(zone_name, %{} = rrset_attrs) do - zone = ZonesManager.show(zone_name) - RRSet.find(zone.rrsets, rrset_attrs) + case ZonesManager.show(zone_name) do + {:ok, zone} -> RRSet.find(zone.rrsets, rrset_attrs) + _ -> nil + end end def update(%Zone{} = zone, %{} = rrset_attrs) do -- cgit v1.2.3