From 3f456113bc3d9f97a98e8e51987ad456fc9989a3 Mon Sep 17 00:00:00 2001 From: Chris Bednarski Date: Tue, 24 Feb 2015 23:05:45 -0800 Subject: [PATCH] Added Hostname.Equal() .EqualIp() and .IsValid() IsValid provides error-checking in a non-intrusive way --- hostname.go | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/hostname.go b/hostname.go index 4fd2b5e..3e0a003 100644 --- a/hostname.go +++ b/hostname.go @@ -34,6 +34,18 @@ func NewHostname(domain, ip string, enabled bool) (hostname *Hostname) { return } +func (h *Hostname) Equal(n *Hostname) bool { + return h.Ip.Equal(n.Ip) && h.Domain == n.Domain +} + +func (h *Hostname) EqualIp(ip net.IP) bool { + return h.Ip.Equal(ip) +} + +func (h *Hostname) IsValid() bool { + return h.Domain != "" && h.Ip != nil +} + func (h *Hostname) Format() string { r := fmt.Sprintf("%s %s", h.Ip.String(), h.Domain) if !h.Enabled {