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 JohnKaputin: http://wiki.apache.org/ws/FrontPage/Woden/WSDLExtensionChanges The comment on the change is: added Solution Summary ------------------------------------------------------------------------------ The only way that Woden's client applications can access extension properties is via these statically-defined, compile-time extension property APIs declared by the {{{ComponentExtensions}}} subtypes. Some applications need a more flexible approach that provides a more ''generic'' API for accessing extension properties, without requiring detailed knowledge of each {{{ComponentExtensions}}} subtype API. For example, WSDL editors or GUI tools should be able to display any WSDL, including it's extensions, without predefined knowledge of all possible extension-types and their specific APIs. They need to be able to retrieve these properties as ''generic'' extension properties, via a common programming model. === Summary of the Solution === + A new type {{{ExtensionProperty}}} has been introduced which provides a generic representation of an extension property (name, namespace and content as a java.lang.Object). {{{ExtensionProperty}}} accessor methods have been declared in a new type {{{PropertyExtensible}}}, for retrieving extension properties. {{{WSDLComponent}}} now extends {{{PropertyExtensible}}}. + The {{{ComponentExtensions}}} interface has been renamed to {{{ComponentExtensionContext}}} to better reflect its role as an ''accessor'' for retrieving extensions in a particular context (that is, for a component and an extension namespace) and to avoid giving the impression that it ''is'' the collection of extension properties for that component and namespace. Furthermore, to avoid API confusion with new {{{PropertyExtensible}}} methods like {{{getExtensionProperties}}}, the {{{WSDLComponent}}} method {{{getComponentExtensionsForNamespace(NSuri)}}} has been renamed to {{{getComponentExtensionContext(NSuri)}}} (and that now returns a {{{ComponentExtensionContext}}}). + + The {{{ExtensionRegistry}}} methods that handled the {{{ComponentExtensions}}} type have been changed to use {{{ComponentExtensionContext}}} instead. These are the {{{registerComponentExtension}}} and {{{createComponentExtension}}} methods. + - == Overview of the new Component extensions model === + === Overview of the new Component extensions model === The following UML class diagram and the notes that follow it provide an overview of the new Component extensions model: http://people.apache.org/~jkaputin/woden47/Extensions1.jpg --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
