[ 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.