[ http://jira.magnolia-cms.com/browse/MAGNOLIA-3022?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Philipp Bärfuss reassigned MAGNOLIA-3022: ----------------------------------------- Assignee: Philipp Bärfuss (was: Boris Kraft) > content API cleanup: improve/align createNodeData(), getNodeData and > setNodeData(), respectively make them compliant to JCR > --------------------------------------------------------------------------------------------------------------------------- > > Key: MAGNOLIA-3022 > URL: http://jira.magnolia-cms.com/browse/MAGNOLIA-3022 > Project: Magnolia > Issue Type: Sub-task > Reporter: Philipp Bärfuss > Assignee: Philipp Bärfuss > > The JCR specification does not support empty properties: > - only the setProperty() method exists > - setting a property to null removes it > But the content API has both createNodeData() and setNodeData() methods but > since they use JCR properties they behave which I consider being wrong: > - createNodeData(name) will not fail if a node data already exist > - setNodeData(name) will not fail it the node data doesn't exist yet > - getNodeData(name) will never fail but return an nodeData where isExists() > might return false > - createNodeData(name, type) creates a property by setting an empty string > value (null would not create a property) no matter what type you specify > So there are two solutions possible: > A) differentiate the creation and setting > - means throw exception if you are doing wrong > B) drop the explicit creation (as in JCR) > I am very much in favor of B) and would like to deprecate all > createNodeData() methods -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://jira.magnolia-cms.com/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira ---------------------------------------------------------------- For list details see http://www.magnolia-cms.com/home/community/mailing-lists.html To unsubscribe, E-mail to: <dev-list-unsubscr...@magnolia-cms.com> ----------------------------------------------------------------