diff options
Diffstat (limited to 'pkg/icingadb/v1/overdue/service.go')
-rw-r--r-- | pkg/icingadb/v1/overdue/service.go | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/pkg/icingadb/v1/overdue/service.go b/pkg/icingadb/v1/overdue/service.go new file mode 100644 index 0000000..dfd5383 --- /dev/null +++ b/pkg/icingadb/v1/overdue/service.go @@ -0,0 +1,26 @@ +package overdue + +import ( + "github.com/icinga/icingadb/pkg/contracts" + v1 "github.com/icinga/icingadb/pkg/icingadb/v1" + "github.com/icinga/icingadb/pkg/types" +) + +type ServiceState struct { + v1.EntityWithoutChecksum + IsOverdue types.Bool `json:"is_overdue"` +} + +func NewServiceState(id string, overdue bool) (contracts.Entity, error) { + hs := &ServiceState{IsOverdue: types.Bool{ + Bool: overdue, + Valid: true, + }} + + return hs, hs.Id.UnmarshalText([]byte(id)) +} + +// Assert interface compliance. +var ( + _ contracts.Entity = (*ServiceState)(nil) +) |