This commit is contained in:
+9
-1
@@ -54,10 +54,18 @@ type NewDeviceState struct {
|
||||
|
||||
type DeviceCapability string
|
||||
|
||||
type SaveMode int
|
||||
|
||||
const (
|
||||
SMState SaveMode = 1
|
||||
SMProperties SaveMode = 2
|
||||
SMTags SaveMode = 4
|
||||
)
|
||||
|
||||
type DeviceRepository interface {
|
||||
Find(ctx context.Context, id int) (*Device, error)
|
||||
FetchByReference(ctx context.Context, kind ReferenceKind, value string) ([]Device, error)
|
||||
Save(ctx context.Context, device *Device) error
|
||||
Save(ctx context.Context, device *Device, mode SaveMode) error
|
||||
Delete(ctx context.Context, device *Device) error
|
||||
}
|
||||
|
||||
|
||||
@@ -220,3 +220,24 @@ func (action *EventAction) Apply(other EventAction) {
|
||||
action.FireEvent = other.FireEvent
|
||||
}
|
||||
}
|
||||
|
||||
func (c EventCondition) String() string {
|
||||
str := make([]string, 0, 5)
|
||||
if len(c.LT) > 0 {
|
||||
str = append(str, "lt:" + c.LT)
|
||||
}
|
||||
if len(c.LTE) > 0 {
|
||||
str = append(str, "lte:" + c.LTE)
|
||||
}
|
||||
if len(c.EQ) > 0 {
|
||||
str = append(str, c.EQ)
|
||||
}
|
||||
if len(c.GTE) > 0 {
|
||||
str = append(str, "gte:" + c.GTE)
|
||||
}
|
||||
if len(c.GT) > 0 {
|
||||
str = append(str, "gte:" + c.GT)
|
||||
}
|
||||
|
||||
return strings.Join(str, ";")
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user