[
https://jira.jboss.org/jira/browse/DNA-343?page=com.atlassian.jira.plugin...
]
Brian Carothers updated DNA-343:
--------------------------------
Attachment: DNA-342.patch
Attaching patch that takes a stab the missing functionality.
In addition to the usual rules required by the JCR 1.0 specification, the canAddMixin and
addMixin methods enforce internal consistency by requiring that:
* No properties defined by the mixin type can have the same name as any property
defined by the node's primary type or any of its existing mixin types.
* No child nodes defined by the mixin type can have the same name as any child node
defined by the node's primary type or any of its existing mixin types.
* If the node has a current residual definition for child nodes and/or properties,
all nodes and properties that share a name with a child node definition or property
definition from the new mixin type must be compatible with the definition provided by the
new mixin type.
The removeMixin imposes the following rule in addition to those required by the JCR 1.0
specification:
* A mixin type can be removed if and only if all of the node's existing child
nodes and properties would still have a valid definition from the node's primary type
or other mixin types. In practice, this means that either the node must have a residual
definition compatible with any of the remaining child nodes or properties that currently
use a definition from the to-be-removed mixin type or all of the child nodes and
properties that use a definition from the to-be-removed mixin type must be removed prior
to calling this method.
The known issue is that it does not update the session cache correctly, so child nodes (or
properties) that used to use a residual definition but should use a definition from the
mixin type after it has been added still use the residual definition. I'm looking for
feedback on that front.
TCK Tests for Node Mixin Modification Methods Fail
--------------------------------------------------
Key: DNA-343
URL:
https://jira.jboss.org/jira/browse/DNA-343
Project: DNA
Issue Type: Bug
Components: JCR
Affects Versions: 0.4
Reporter: Brian Carothers
Attachments: DNA-342.patch, DNA-343.patch
The TCK tests for canAddMixin, addMixin, and removeMixin don't work yet.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira