michielpost / Q42.HueApi

C# helper library to talk to the Philips Hue bridge
MIT License
411 stars 114 forks source link

When to use enums and when string? #159

Closed niels9001 closed 5 years ago

niels9001 commented 5 years ago

Just a general remark: some of the properties are returned as a string, but it might be nice to convert them to an enum - like archetype for example: https://developers.meethue.com/develop/hue-api/supported-devices/#Supported-lights

I'm happy to help making a list of strings that could be converted to archetype. Downside would be that we 'd need to update the list of enums everytime a new property option would be added, but it does allow nicer code :).

michielpost commented 5 years ago

I try to make Enums for values that do not update often and are used for properties that can be written to the bridge. For example: Alert, with 3 possible values. Not updated often (never) and can be written in a LightCommand.

ArcheType is a value that is only read from the bridge, not written and is also updated now and then. So I don't want to have enums for those properties because it might break something.