Sweep SAML XMLObject interfaces for consistency
Description
Environment
is related to
Activity
Scott Cantor February 21, 2020 at 1:06 AM
I'm not going to sweep the XACML code at this point, so resolving this.
Scott Cantor December 10, 2019 at 2:54 PM
SAML 1 classes are cleaned.
Deprecation warnings are in place across most of what's been changed.
Scott Cantor November 26, 2019 at 3:38 PM
Eliminated unneeded marshalling classes from SAML 2 and extension schemas. SAML 1 TBD, don't know how much past SAML is worth going.
Scott Cantor November 26, 2019 at 1:31 PM
Another inconsistency is around open elements like AttributeValue, which didn't currently have real implementation support, while other open elements like AuthnContextDecl do. It's perhaps of questionable value since it's really just a wrapper around the defaulting of the element name, but they should be handled the same.
The consequence of registering a builder for AttributeValue is that default unmarshalling with no xsi:type will produce a subclass of XSAnyImpl instead of XSAnyImpl alone, but that's neither harmful nor even ill-advised.
Scott Cantor November 26, 2019 at 12:35 AM
Finished sweeps of SAML 2 core and metadata. Still need some decisions on whether to drop a lot of the custom code in favor of the XS* objects directly, and cleaning up the null checking in the marshallers one way or the other per OSJ-293.
I would like to sweep the core XML interfaces for method consistency around some of the string-valued simple objects to try and align most of them to something simple, probably getValue/getURI.
There might be outliers but I sort of would rather have those as a baseline and maybe use default methods for any synonyms we want.