See the design doc in the parent jira for more details.
In this jira I introduce a new annotation processor which can generate ozone-default.xml fragments based on the annotations which are introduced by
The ozone-default-generated.xml fragments can be used directly by the OzoneConfiguration as I added a small code to the constructor to check ALL the available ozone-default-generated.xml files and add them to the available resources.
With this approach we don't need to edit ozone-default.xml as all the configuration can be defined in java code.
As a side effect each service will see only the available configuration keys and values based on the classpath. (If the ozone-default-generated.xml file of OzoneManager is not on the classpath of the SCM, SCM doesn't see the available configs.)