[ 
http://issues.apache.org/jira/browse/WODEN-87?page=comments#action_12450569 ] 
            
Arthur Ryman commented on WODEN-87:
-----------------------------------

-1 on the second option. The Woden API MUST implement the behavior as specified 
in the component model.

I actually proposed that we add convenience methods to flatten the inherited 
operations, faults, interfaces, and suggested naming them like the Java methods 
as you suggest. This was rejected by the WG.

However, I wrote Z specs for them [1]. Let's add these.

Let Interface be the set of all Interface components:

    *      Let allExtendedInterfaces be the set off all interfaces that are 
extended directly or indirectly by this interface.
    *      Let allInterfaceFaults be the set of all faults that are directly or 
indirectly on this interface.
    *      Let allInterfaceOperations be the set of all operations that are 
directly or indirectly on this interface.

[1]  http://www.w3.org/TR/2006/CR-wsdl20-20060327/wsdl20-z.html#zed-Interface

> Need convenience methods in Interface API to flatten interface inheritence
> --------------------------------------------------------------------------
>
>                 Key: WODEN-87
>                 URL: http://issues.apache.org/jira/browse/WODEN-87
>             Project: Woden
>          Issue Type: New Feature
>          Components: Parser
>            Reporter: John Kaputin
>
> We have a use case (from Axis2) for convenience methods on the 
> org.apache.woden.wsdl20.Interface API for additional convenience methods that 
> provide a flattened view on all interface child components - both those 
> directly declared and any inherited ones.  Existing methods like 
> Interface.getInterfaceOperations and getInterfaceFaults return only the 
> components declared directly within the Interface (this is correct per the 
> description of those properties in the WSDL 2.0 spec).   Currently the 
> getExtendedInterfaces method must be used to 'drill down' to get inherited 
> components.   Cases like diamond inheritance must also be handled by the user 
> to avoid duplicates. The proposed convenience methods make all this 
> transparent to the user.
> The proposed new methods on Interface are:
> getAllInterfaceOperations
> getAllIntefaceFaults
> Some further consideration may be required about whether  the existing 
> behaviour of getInterfaceOperations and getInterfaceFaults if actually useful 
> (ie. getting the declared components only). An alternative approach would be 
> to add methods like getDeclaredInterfaceOperations and change the behaviou of 
> getInterfaceOperations to return all operations - direclty declared and 
> inherited. 

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to