1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34 package info.magnolia.jcr.decoration;
35
36 import info.magnolia.jcr.util.VersionUtil;
37
38 import javax.jcr.AccessDeniedException;
39 import javax.jcr.Node;
40 import javax.jcr.NodeIterator;
41 import javax.jcr.ReferentialIntegrityException;
42 import javax.jcr.RepositoryException;
43 import javax.jcr.UnsupportedRepositoryOperationException;
44 import javax.jcr.version.LabelExistsVersionException;
45 import javax.jcr.version.Version;
46 import javax.jcr.version.VersionException;
47 import javax.jcr.version.VersionHistory;
48 import javax.jcr.version.VersionIterator;
49
50
51
52
53 public class ContentDecoratorVersionHistoryWrapper extends ContentDecoratorNodeWrapper implements VersionHistory {
54
55 public ContentDecoratorVersionHistoryWrapper(VersionHistory versionHistory, ContentDecorator contentDecorator) {
56 super(versionHistory, contentDecorator);
57 }
58
59 public VersionHistory getWrappedVersionHistory() {
60 return (VersionHistory) this.wrapped;
61 }
62
63 @Override
64 public void setWrappedNode(Node node) {
65 this.wrapped = node;
66 }
67
68 @Override
69 public String getVersionableUUID() throws RepositoryException {
70 return getWrappedVersionHistory().getVersionableUUID();
71 }
72
73 @Override
74 public String getVersionableIdentifier() throws RepositoryException {
75 return getWrappedVersionHistory().getVersionableIdentifier();
76 }
77
78 @Override
79 public Version getRootVersion() throws RepositoryException {
80 return wrapVersion(getWrappedVersionHistory().getRootVersion());
81 }
82
83 @Override
84 public VersionIterator getAllLinearVersions() throws RepositoryException {
85 return wrapVersionIterator(getWrappedVersionHistory().getAllLinearVersions());
86 }
87
88 @Override
89 public VersionIterator getAllVersions() throws RepositoryException {
90 return wrapVersionIterator(getWrappedVersionHistory().getAllVersions());
91 }
92
93 @Override
94 public NodeIterator getAllLinearFrozenNodes() throws RepositoryException {
95 return wrapNodeIterator(getWrappedVersionHistory().getAllLinearFrozenNodes());
96 }
97
98 @Override
99 public NodeIterator getAllFrozenNodes() throws RepositoryException {
100 return wrapNodeIterator(getWrappedVersionHistory().getAllFrozenNodes());
101 }
102
103 @Override
104 public Version getVersion(String versionName) throws VersionException, RepositoryException {
105 return wrapVersion(getWrappedVersionHistory().getVersion(versionName));
106 }
107
108 @Override
109 public Version getVersionByLabel(String label) throws VersionException, RepositoryException {
110 return wrapVersion(getWrappedVersionHistory().getVersionByLabel(label));
111 }
112
113 @Override
114 public void addVersionLabel(String versionName, String label, boolean moveLabel) throws LabelExistsVersionException, VersionException, RepositoryException {
115 getWrappedVersionHistory().addVersionLabel(versionName, label, moveLabel);
116 }
117
118 @Override
119 public void removeVersionLabel(String label) throws VersionException, RepositoryException {
120 getWrappedVersionHistory().removeVersionLabel(label);
121 }
122
123 @Override
124 public boolean hasVersionLabel(String label) throws RepositoryException {
125 return getWrappedVersionHistory().hasVersionLabel(label);
126 }
127
128 @Override
129 public boolean hasVersionLabel(Version version, String label) throws VersionException, RepositoryException {
130 return getWrappedVersionHistory().hasVersionLabel(VersionUtil.unwrap(version), label);
131 }
132
133 @Override
134 public String[] getVersionLabels() throws RepositoryException {
135 return getWrappedVersionHistory().getVersionLabels();
136 }
137
138 @Override
139 public String[] getVersionLabels(Version version) throws VersionException, RepositoryException {
140 return getWrappedVersionHistory().getVersionLabels(VersionUtil.unwrap(version));
141 }
142
143 @Override
144 public void removeVersion(String versionName) throws ReferentialIntegrityException, AccessDeniedException, UnsupportedRepositoryOperationException, VersionException, RepositoryException {
145 getWrappedVersionHistory().removeVersion(versionName);
146 }
147 }