/** * Tests if <code>Version.getNodes()</code> and <code>Version.getNodes(String)</code> * returns the right child Node */ public void testGetNodes() throws Exception { assertTrue("Version.getNodes() does not return a sub-node of type nt:frozenNode", version.getNodes().nextNode().isNodeType(ntFrozenNode)); assertTrue("Version.getNodes(String) does not return a sub-node of type nt:frozenNode", version.getNodes(superuser.getNamespacePrefix(NS_JCR_URI) + ":*").nextNode().isNodeType(ntFrozenNode)); }
protected T getVersion(Node node, String versionName, NodeFilter nodeFilter) { try { //VersionHistory versionHistory = node.getVersionHistory(); VersionHistory versionHistory = JcrUtils.getVersionManager(node.getSession()).getVersionHistory(node.getPath()); Version version = versionHistory.getVersion(versionName); return getJcrom().fromNode(getEntityClass(), version.getNodes().nextNode(), nodeFilter); } catch (RepositoryException e) { throw new JcrMappingException("Could not get version", e); } }
protected List<T> getVersionList(Node node, NodeFilter nodeFilter, long startIndex, long resultSize) { try { List<T> versionList = new ArrayList<T>(); //VersionHistory versionHistory = node.getVersionHistory(); VersionHistory versionHistory = JcrUtils.getVersionManager(node.getSession()).getVersionHistory(node.getPath()); VersionIterator versionIterator = versionHistory.getAllVersions(); versionIterator.skip(1 + startIndex); long counter = 0; while (versionIterator.hasNext()) { if (counter == resultSize) { break; } Version version = versionIterator.nextVersion(); NodeIterator nodeIterator = version.getNodes(); while (nodeIterator.hasNext()) { versionList.add(getJcrom().fromNode(getEntityClass(), nodeIterator.nextNode(), nodeFilter)); } counter++; } return versionList; } catch (RepositoryException e) { throw new JcrMappingException("Could not get version list", e); } }
protected List<T> getVersionList(Node node, NodeFilter nodeFilter) { try { List<T> versionList = new ArrayList<T>(); //VersionHistory versionHistory = node.getVersionHistory(); VersionHistory versionHistory = JcrUtils.getVersionManager(node.getSession()).getVersionHistory(node.getPath()); VersionIterator versionIterator = versionHistory.getAllVersions(); versionIterator.skip(1); while (versionIterator.hasNext()) { Version version = versionIterator.nextVersion(); NodeIterator nodeIterator = version.getNodes(); while (nodeIterator.hasNext()) { T entityVersion = getJcrom().fromNode(getEntityClass(), nodeIterator.nextNode(), nodeFilter); //Version baseVersion = node.getBaseVersion(); Version baseVersion = JcrUtils.getVersionManager(node.getSession()).getBaseVersion(node.getPath()); getJcrom().setBaseVersionInfo(entityVersion, baseVersion.getName(), baseVersion.getCreated()); versionList.add(entityVersion); } } return versionList; } catch (RepositoryException e) { throw new JcrMappingException("Could not get version list", e); } }