Introduce constructors for ExposeMapping

This should allow the ExposeMapping struct to be changed without
constantly impacting its callers.
This commit is contained in:
Darell Tan
2024-11-24 15:25:17 +08:00
parent b11ab07fbb
commit d4daef7bce
8 changed files with 22 additions and 12 deletions

View File

@@ -31,12 +31,12 @@ func createLightServices(dev *Device) (byte, []*service.S, []*ExposeMapping, err
switch {
case feat.Name == "state" && feat.Type == "binary":
svcs = append(svcs, light.S)
exposes = append(exposes, &ExposeMapping{&feat, light.On.C, nil})
exposes = append(exposes, NewExposeMapping(&feat, light.On.C))
case feat.Name == "brightness" && feat.Type == "numeric":
brightness := characteristic.NewBrightness()
light.AddC(brightness.C)
exposes = append(exposes, &ExposeMapping{&feat, brightness.C, nil})
exposes = append(exposes, NewExposeMapping(&feat, brightness.C))
}
}
}