summaryrefslogtreecommitdiffstats
path: root/pkg/icingadb/v1/endpoint.go
blob: 6abe9d7fddd95706cc8861eea9c3cd34dc85ba8e (plain)
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
package v1

import (
	"github.com/icinga/icingadb/pkg/contracts"
	"github.com/icinga/icingadb/pkg/types"
)

type Endpoint struct {
	EntityWithChecksum `json:",inline"`
	EnvironmentMeta    `json:",inline"`
	NameCiMeta         `json:",inline"`
	ZoneId             types.Binary `json:"zone_id"`
}

type Zone struct {
	EntityWithChecksum `json:",inline"`
	EnvironmentMeta    `json:",inline"`
	NameCiMeta         `json:",inline"`
	IsGlobal           types.Bool   `json:"is_global"`
	ParentId           types.Binary `json:"parent_id"`
	Depth              uint8        `json:"depth"`
}

func NewEndpoint() contracts.Entity {
	return &Endpoint{}
}

func NewZone() contracts.Entity {
	return &Zone{}
}

// Assert interface compliance.
var (
	_ contracts.Initer = (*Endpoint)(nil)
	_ contracts.Initer = (*Zone)(nil)
)