I have recently started making my first openHAB binding in which I declare thing type descriptions in XML.
I have noticed while developing it that if I create a new version of my binding with new channels that existing things do not get updated with these new channels unless I remove them and add them again.
This has been ok for initial development but isn’t ideal for day-to-day use and seems like an unnecessary burden for people who are testing it.
I know you can update the structure of a thing programmatically but if I am doing that I might as well abandon the XML files and do everything programmatically.
I guess another way would be to give things a “version” property and to recreate the thing in my ThingHandlerFactory if I get passed a thing that is out of date but this seems a bit complex when I just want things to match their XML definition.
Is there a way from inside my binding that I can tell openHAB I want it to make sure things match their XML definitions?