@Override public Node nextNode() { try { return versions.nextVersion().getFrozenNode(); } catch (RepositoryException re) { // ModeShape doesn't throw a RepositoryException on getFrozenNode() from a valid version node throw new IllegalStateException(re); } }
@Override public Version nextVersion() { return wrapVersion(versionIterator.nextVersion()); }
@Override public Node nextNode() { try { return versions.nextVersion().getFrozenNode(); } catch (RepositoryException re) { // ModeShape doesn't throw a RepositoryException on getFrozenNode() from a valid version node throw new IllegalStateException(re); } }
@Override public Version nextVersion() { Version internalVersion = delegate.nextVersion(); return new VersionFacade<>(internalVersion, session); }
@Override public Version next() { return wrapVersion(versionIterator.nextVersion()); }
/** * @return previous version or null if not found. */ private Version getPreviousVersion(Node node) throws RepositoryException { Version previousVersion = null; VersionIterator versionIterator = versionManager.getAllVersions(node); while (versionIterator.hasNext()) { previousVersion = versionIterator.nextVersion(); } return previousVersion; }
@Override public JcrVersion next() { return new JcrMsVersionNode(getNode(), versions.nextVersion(), typeManager, pathManager, typeHandlerManager); }
private List<Version> getVersions(String nodePath, Session session) throws RepositoryException { List<Version> versions = new ArrayList<Version>(); for (VersionIterator iter = session.getWorkspace() .getVersionManager().getVersionHistory(nodePath) .getAllVersions(); iter.hasNext();) { Version v = iter.nextVersion(); versions.add(v); } return versions; }
private List<Version> getVersions(String nodePath, Session session) throws RepositoryException { List<Version> versions = new ArrayList<Version>(); for (VersionIterator iter = session.getWorkspace() .getVersionManager().getVersionHistory(nodePath) .getAllVersions(); iter.hasNext();) { Version v = iter.nextVersion(); versions.add(v); v = null; } return versions; } private String getNormalizedPath(String path) {
protected Version lookupVersion(Node variant, Calendar historic) throws RepositoryException { VersionHistory versionHistory = variant.getVersionHistory(); for (VersionIterator iter = versionHistory.getAllVersions(); iter.hasNext(); ) { Version version = iter.nextVersion(); if (version.getCreated().equals(historic)) { return version; } } return null; } }
@SuppressWarnings("deprecation") public List<Version> getVersions() throws RepositoryException { List<Version> versions = new ArrayList<>(); final Node node = resource.adaptTo(Node.class); if (node != null && node.isNodeType(JcrConstants.MIX_VERSIONABLE)) { final VersionHistory history = node.getVersionHistory(); for (final VersionIterator it = history.getAllVersions(); it.hasNext();) { final Version v = it.nextVersion(); versions.add(v); } } return versions; } }
public Version nextVersion() { return VersionWrapper.wrap(getDelegate().nextVersion(), getSessionWrapper()); } }
public JcrVersion nextVersion() { return JcrVersion.Wrapper.wrap(getDelegate().nextVersion(), getJcrSession()); } }
/** * Checks if all versions but the base and root one can be removed. */ public void testRemoveAllBut2() throws RepositoryException { String baseVersion = versionableNode.getBaseVersion().getName(); VersionHistory vh = versionableNode.getVersionHistory(); VersionIterator vi = vh.getAllVersions(); while (vi.hasNext()) { Version currenVersion = vi.nextVersion(); String versionName = currenVersion.getName(); if (!versionName.equals("jcr:rootVersion") && !versionName.equals(baseVersion)) { vh.removeVersion(versionName); } } }
public static void assertLabeledVersions(VersionHistory history) throws RepositoryException { final VersionIterator versions = history.getAllVersions(); assertFalse(versions.nextVersion().getFrozenNode().hasProperty("version")); // root for (final String label : LABELS) { assertEquals(label, versions.nextVersion().getFrozenNode().getProperty("version").getString()); } }
VersionHistory history = session.getWorkspace().getVersionManager().getVersionHistory("/my/node/path"); // To iterate over all versions VersionIterator versions = history.getAllVersions(); while (versions.hasNext()) { Version version = versions.nextVersion(); } // Obtain version per name Version mySpecificVersion = history.getVersion("myVersion"); //Obtain version per label Version labelisedVersion = history.getVersionByLabel("myLabel"); String myVersionPropertyValue = labelisedVersion.getFrozenNode().getProperty("myProperty").getString();
/** * Test if the iterator returned by {@link javax.jcr.version.VersionHistory#getAllVersions()} * contains the root version upon creation of the version history. * * @see javax.jcr.version.VersionHistory#getRootVersion() */ public void testInitiallyGetAllVersionsContainsTheRootVersion() throws RepositoryException { Version rootVersion = vHistory.getRootVersion(); boolean isContained = false; for (VersionIterator it = vHistory.getAllVersions(); it.hasNext(); ) { isContained |= it.nextVersion().isSame(rootVersion); } assertTrue("root version must be part of the version history", isContained); }
@Test public void testVersionIsWrapped() throws Exception { // GIVEN Session session = MgnlContext.getJCRSession(RepositoryConstants.WEBSITE); VersionManager versionMan = Components.getComponent(VersionManager.class); Node node = session.getRootNode().addNode( "page", NodeTypes.Page.NAME); session.save(); versionMan.addVersion(node); VersionIterator versionIterator = versionMan.getAllVersions(node); // WHEN Version version = versionIterator.nextVersion(); // THEN assertTrue(version instanceof ContentDecoratorVersionWrapper); } }
public Object doInJcr( final Session session ) throws RepositoryException { Node fileNode = (Node) session.getItem( absPath ); VersionHistory versionHistory = fileNode.getVersionHistory(); VersionIterator versionIterator = versionHistory.getAllVersions(); int versionCount = 0; while ( versionIterator.hasNext() ) { versionIterator.nextVersion(); versionCount++; } return versionCount; } } );
private void removeAllVersions(VersionHistory history) throws RepositoryException { // delete all versions of node (to delete references to // files) VersionIterator it = history.getAllVersions(); while (it.hasNext()) { Version version = it.nextVersion(); history.removeVersion(version.getName()); } }