getIdentifier on events may return a slightly "off" identifier
--------------------------------------------------------------

                 Key: JCR-3153
                 URL: https://issues.apache.org/jira/browse/JCR-3153
             Project: Jackrabbit Content Repository
          Issue Type: Task
          Components: jackrabbit-spi2dav
            Reporter: Julian Reschke
            Priority: Minor


JCR events contain the JCR identifier, even for NODE_REMOVED. In spi2dav, the 
identifier in the client isn't necessarily the same as on the server. For 
instance, jackrabbit-core uses UUIDs for all nodes, while sp2dav uses them only 
for referenceablw nodes.

When forwarding events, spi2dav's URIResolver PROPFINDs on the path of the node 
in order to obtain the remote node's jcr.uuid, local name, and index; and 
repeats that for ancestors until a referenceable node or the root node is 
found. This of course does not work for removed nodes.

The change for JCR-2540 has enhanced getIdentifier() on events to fall back to 
create an absolute-path-based ID. Thus, the API test case does not fail anymore 
as it happens to expect that identifier format.

Things to consider:

- harmonize local identifiers with remote identifiers so that we don't need 
additional information to map them
- try to populate the local URI->NodeId cache, so that we haev the mapping 
information at least for nodes that we have seen before

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to