Sorry, you must have been still writing the wiki page when I commented a few minutes ago. IMHO it would be best if the user doesn't have to register the assertions on the reader, better if they're discovered.
Cheers, Jeremy On 10/12/2007, Apache Wiki <[EMAIL PROTECTED]> wrote: > Dear Wiki user, > > You have subscribed to a wiki page or wiki category on "Ws Wiki" for change > notification. > > The following page has been changed by LawrenceMandel: > http://wiki.apache.org/ws/FrontPage/Woden/ValidationAPI > > ------------------------------------------------------------------------------ > > The following are two potential assertion interfaces with pros and cons: > > + 1. {{{ > - 1. public Interface IAssertion { > + public Interface IAssertion { > public void validate(Description desc, ErrorReporter errorReporter); > } > + }}} > + * Pros: > + * Strongly typed > + * One interface for every assertion > + * Cons: > + * Every assertion must traverse the WSDL tree (performance) > > + 2. {{{ > + public Interface IAssertion { > + public void validate(Object wsdlObj, Description desc, ErrorReporter > errorReporter); > + } > + }}} > + * Pros: > + * Weak typing allows the specific WSDL object the assertion requires to > be passed (the assertion does not have to walk the tree - good for > performance) > + * Cons: > + * Each assertion must declare the type that it asserts > + * Each assertion must cast to the correct type > + * The description component must still be passed to allow referencing > elements other than the element's children > + > + > + == Goal 3: Allow for specification of dependencies among assertions == > + It seems to me that the best way to declare dependencies is when > registering an assertion with Woden. An assertion can be registered via a > method on WSDLReader such as > + > + {{{public void registerAssertion(IAssertion assertion, String id, String > dependencies);}}} > + > + where {{{id}}} is the assertion id and {{{dependencies}}} is a comma > separated list of assertion ids for assertions that this assertion depends. > + > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
