-
Notifications
You must be signed in to change notification settings - Fork 3
/
models.go
45 lines (38 loc) · 880 Bytes
/
models.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
package netlify
import (
"time"
"github.com/libdns/libdns"
"github.com/netlify/open-api/v2/go/models"
)
type netlifyZone struct {
*models.DNSZone
}
type netlifyDNSRecord struct {
*models.DNSRecord
}
func (r netlifyDNSRecord) libdnsRecord(zone string) libdns.Record {
return libdns.Record{
Type: r.Type,
Name: libdns.RelativeName(r.Hostname, zone),
Value: r.Value,
TTL: time.Duration(r.TTL) * time.Second,
ID: r.ID,
Priority: uint(r.Priority),
}
}
func netlifyRecord(r libdns.Record) netlifyDNSRecord {
return netlifyDNSRecord{
&models.DNSRecord{
ID: r.ID,
Type: r.Type,
Hostname: r.Name,
Value: r.Value,
TTL: int64(r.TTL.Seconds()),
Priority: int64(r.Priority),
},
}
}
type netlifyDNSDeleteError struct {
Code int `json:"code,omitempty"`
Message string `json:"message,omitempty"`
}