Following on from PR
https://github.com/wildfly/wildfly-core/pull/757
and my final comment in the PR we need to have a discussion on how we
coordinate capability and requirement definitions - especially where
multiple components need a common definition.
The first option is to do it all by convention and have no shared
constants, the down side of this is we now need to document this and
keep the document maintained. A document would also make it hard in the
future to flag certain capabilities as deprecated if preferred
alternatives are made available.
The second option would be to just define the Strings somewhere and use
Javadoc to specify if the capability is dynamic and it's service type.
The third option is defining the string and RuntimeCapability instances
in a central place so they can both be referenced as needed.
Any other options?
Where these live will be a second point to discuss but that is heavily
driven based on what we will share in the first place.
Regards,
Darran Lofthouse.