1 package org
.argeo
.eclipse
.ui
.jcr
;
3 import java
.util
.ArrayList
;
4 import java
.util
.Collections
;
7 import javax
.jcr
.RepositoryException
;
8 import javax
.jcr
.version
.Version
;
9 import javax
.jcr
.version
.VersionHistory
;
10 import javax
.jcr
.version
.VersionIterator
;
12 import org
.eclipse
.jface
.viewers
.IStructuredContentProvider
;
13 import org
.eclipse
.jface
.viewers
.Viewer
;
15 /** Content provider based on a {@link VersionHistory}. */
16 public class VersionHistoryContentProvider
implements IStructuredContentProvider
{
17 private static final long serialVersionUID
= -4921107883428887012L;
20 public void dispose() {
24 public void inputChanged(Viewer viewer
, Object oldInput
, Object newInput
) {
28 public Object
[] getElements(Object inputElement
) {
30 VersionHistory versionHistory
= (VersionHistory
) inputElement
;
31 List
<Version
> lst
= new ArrayList
<>();
32 VersionIterator vit
= versionHistory
.getAllLinearVersions();
34 lst
.add(vit
.nextVersion());
35 Collections
.reverse(lst
);
37 } catch (RepositoryException e
) {
38 throw new IllegalStateException("Cannot list versions", e
);