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 javax.jcr.AccessDeniedException;
37 import javax.jcr.Node;
38 import javax.jcr.NodeIterator;
39 import javax.jcr.ReferentialIntegrityException;
40 import javax.jcr.RepositoryException;
41 import javax.jcr.UnsupportedRepositoryOperationException;
42 import javax.jcr.version.LabelExistsVersionException;
43 import javax.jcr.version.Version;
44 import javax.jcr.version.VersionException;
45 import javax.jcr.version.VersionHistory;
46 import javax.jcr.version.VersionIterator;
47
48
49
50
51 public class ContentDecoratorVersionHistoryWrapper extends ContentDecoratorNodeWrapper implements VersionHistory {
52
53 public ContentDecoratorVersionHistoryWrapper(VersionHistory versionHistory, ContentDecorator contentDecorator) {
54 super(versionHistory, contentDecorator);
55 }
56
57 public VersionHistory getWrappedVersionHistory() {
58 return (VersionHistory) this.wrapped;
59 }
60
61 @Override
62 public void setWrappedNode(Node node) {
63 this.wrapped = node;
64 }
65
66 @Override
67 public String getVersionableUUID() throws RepositoryException {
68 return getWrappedVersionHistory().getVersionableUUID();
69 }
70
71 @Override
72 public String getVersionableIdentifier() throws RepositoryException {
73 return getWrappedVersionHistory().getVersionableIdentifier();
74 }
75
76 @Override
77 public Version getRootVersion() throws RepositoryException {
78 return wrapVersion(getWrappedVersionHistory().getRootVersion());
79 }
80
81 @Override
82 public VersionIterator getAllLinearVersions() throws RepositoryException {
83 return wrapVersionIterator(getWrappedVersionHistory().getAllLinearVersions());
84 }
85
86 @Override
87 public VersionIterator getAllVersions() throws RepositoryException {
88 return wrapVersionIterator(getWrappedVersionHistory().getAllVersions());
89 }
90
91 @Override
92 public NodeIterator getAllLinearFrozenNodes() throws RepositoryException {
93 return wrapNodeIterator(getWrappedVersionHistory().getAllLinearFrozenNodes());
94 }
95
96 @Override
97 public NodeIterator getAllFrozenNodes() throws RepositoryException {
98 return wrapNodeIterator(getWrappedVersionHistory().getAllFrozenNodes());
99 }
100
101 @Override
102 public Version getVersion(String versionName) throws VersionException, RepositoryException {
103 return wrapVersion(getWrappedVersionHistory().getVersion(versionName));
104 }
105
106 @Override
107 public Version getVersionByLabel(String label) throws VersionException, RepositoryException {
108 return wrapVersion(getWrappedVersionHistory().getVersionByLabel(label));
109 }
110
111 @Override
112 public void addVersionLabel(String versionName, String label, boolean moveLabel) throws LabelExistsVersionException, VersionException, RepositoryException {
113 getWrappedVersionHistory().addVersionLabel(versionName, label, moveLabel);
114 }
115
116 @Override
117 public void removeVersionLabel(String label) throws VersionException, RepositoryException {
118 getWrappedVersionHistory().removeVersionLabel(label);
119 }
120
121 @Override
122 public boolean hasVersionLabel(String label) throws RepositoryException {
123 return getWrappedVersionHistory().hasVersionLabel(label);
124 }
125
126 @Override
127 public boolean hasVersionLabel(Version version, String label) throws VersionException, RepositoryException {
128 return getWrappedVersionHistory().hasVersionLabel(version, label);
129 }
130
131 @Override
132 public String[] getVersionLabels() throws RepositoryException {
133 return getWrappedVersionHistory().getVersionLabels();
134 }
135
136 @Override
137 public String[] getVersionLabels(Version version) throws VersionException, RepositoryException {
138 return getWrappedVersionHistory().getVersionLabels(version);
139 }
140
141 @Override
142 public void removeVersion(String versionName) throws ReferentialIntegrityException, AccessDeniedException, UnsupportedRepositoryOperationException, VersionException, RepositoryException {
143 getWrappedVersionHistory().removeVersion(versionName);
144 }
145 }