New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[WFCORE-531] Update subsystem registration to use a ModelVersion instead of the component parts of the version. #473
Conversation
… version number and instead use the full ModelVersion.
…s for versioned registration.
Linux Build 1145 is now running using a merge of 2469401 |
Linux Build 1145 outcome was SUCCESS using a merge of 2469401 |
info.setMajorVersion(majorVersion); | ||
info.setMinorVersion(minorVersion); | ||
info.setMicroVersion(microVersion); | ||
info.setVersion(version); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think I would throw an exception if version is null, and get rid of the null checks in the SubsystemInformationImpl getters (although I have some other conflicting suggestions there)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
IMO that is established API that I don't want to be touching here. I just want to be ensuring I can use a ModelVersion not revisiting the mandating all subsytems have a version.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
All the exisiting registerSubsystem() methods take one or more int parameters which cannot be null, so you end up with a version whether you like it or not
Looks good; I agree that changing the null semantics shouldn't be part of this work. Probably shouldn't happen at all. I believe the reason null is allowed is because ExtensionParsingContextImpl.setSubsystemXmlMapping can establish a SubsystemInformationImpl and it's only later when ExtensionContextImpl.registerSubsystem gets called that the version gets set. So there's a tiny window where it is null. And we expose this data structure via the management API, so it's possible a read of the data can happen during that window. |
[WFCORE-531] Update subsystem registration to use a ModelVersion instead of the component parts of the version.
No description provided.