[
https://issues.apache.org/jira/browse/CMIS-259?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12919652#action_12919652
]
Florent Guillaume commented on CMIS-259:
----------------------------------------
Replace the two getters with:
<T> T getPropertyValue(String id);
Which returns a single value for a single-valued property, and a list for a
multi-valued property.
Replace the two setters with:
<T> void setProperty(String id, Object value);
The <T> being used internally in the implementation to help casting.
Also add to Property<T> a method:
<U> U getValue();
That would do the same (we cannot use <T> here).
The internal ObjectFactory.createPropertyMultivalue method is also simplified
along similar lines. The PersistentPropertyImpl constructor is changed also to
always take a list.
> Simplify value vs multi-value management in high-level API
> ----------------------------------------------------------
>
> Key: CMIS-259
> URL: https://issues.apache.org/jira/browse/CMIS-259
> Project: Chemistry
> Issue Type: Improvement
> Affects Versions: 0.1.0-incubating
> Reporter: Florent Guillaume
> Assignee: Florent Guillaume
> Fix For: 0.2.0-incubating
>
>
> This part of the high-level API is hard to use:
> <T> T getPropertyValue(String id);
> <T> List<T> getPropertyMultivalue(String id);
> Because the caller has two call two different methods depending on the type
> when in the end he just wants an object.
> Same problem for setters:
> <T> void setProperty(String id, T value);
> <T> void setPropertyMultivalue(String id, List<T> value);
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.