I did a bunch of commits to trunk for Neethi today that I would like some
review for.
Note: these changes are NOT completely backwords compatible. The changes:
1) I've added parsing/writing of Policies in WS-Policy 1.5 namespace.
Included in this is parsing the "wsp:Ignorable" attribute. The Assertion
interface got an "isIgnorable" method added to support this. Since this is
an added method to an interface, anything implementing the interface (like all
the policies in Rampart) will need to have the method added. The Policy
object now can record the namespace for itself and will write out the policy
in the correct namespace. The child policy assertions SHOULD attempt (if
needed) to detect the version being written and adjust accordingly.
2) Converters - well over a year ago, I talked about pulling the Axiom stuff
out of the core and using converters to convert to/from various formats. That
would allow the builders to be written using DOM, OMElement, XMLStreamReader,
etc... This is now done. Axiom is now completely optional. The
PolicyEngine now has "generic" methods like:
Policy getPolicy(Object element)
that as long as there are Converters registered to convert from whatever is
passed in to something the builders support, it should just work. There are
converters to/from all combinations of XMLStreamReader, DOM Element, and
OMElement. This change is likely source compatible EXCEPT for the
AssertionBuilders which will need to be updated to look like:
class MyAssertionBuilder implements AssertionBuilder<OMElement> {
so the runtime will know what to feed it.
The second should allow me to start pushing more stuff from CXF's Policy
implementation down into Neethi and maybe even into WSS4J. I hope. :-)
I've also ported all the unit tests off the Neethi 1.x branch to the 2.x
branch. I have no idea why that wasn't done long ago. The "intersect"
tests are not running right now as the intersect method just throws an
UnsupportedOperationException, which really sucks. It worked in 1.x, not in
2.x. I'm going to try and look at that a bit next. Supporting that MAY
require some more changes.
--
Daniel Kulp
[email protected]
http://dankulp.com/blog
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]