OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

cmis message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: [OASIS Issue Tracker] Commented: (CMIS-497) extension parametersmake code bloated and unreadbable



    [ http://tools.oasis-open.org/issues/browse/CMIS-497?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15595#action_15595 ] 

Al Brown commented on CMIS-497:
-------------------------------

I see it now.  Since the output messages do not have a backing type (the type is inlined) it does not return a complex structure.  If extension is removed from out and the out message can be resolved to a type, then it returns the type rather than void.

So, we can either:
1. remove extensions from out message that return a single type today (e.g., getAllowableActions).  It is probably sufficient since cmisAllowableActionsType supports xs:any.  We can still leave extension for input messages.
2. Change the element name to return for JAX-WS to do the right thing, though it is impl specific
3. Create backing types for all output messages.  This is probably overkill, though would solve it.

I think #1 is probably good enough with #3 for query

> extension parameters make code bloated and unreadbable
> ------------------------------------------------------
>
>                 Key: CMIS-497
>                 URL: http://tools.oasis-open.org/issues/browse/CMIS-497
>             Project: OASIS Content Management Interoperability Services (CMIS) TC
>          Issue Type: Improvement
>          Components: Web Services Binding
>    Affects Versions: Draft 0.62
>            Reporter: Jens Hübel
>            Assignee: Al Brown
>
> With the 0.63 draft all web services get a new extension parameter. This makes API less readable and really ugly.
> Do we really need the flexiibility at this level? Some pseudo code 
> before:
> return _objSvc.getAllowableActions(_repositoryId, id);
> after:
> Holder<CmisAllowableActionsType> holder = new Holder<CmisAllowableActionsType>();
>  _objSvc.getAllowableActions(_repositoryId, id, null, holder);
> return holder.value;
> This requires three lines instead of one. It is no longer clear what the return value is and what parameters have what purpose. We have methods taking three holders, etc. I liked the CMIS API for its clarity and simplicity but now I fear we are far away from this. This seems to affect every function in the web service.
> Do we really need this and want to pay this price? 

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




[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]