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.cms.util;
35
36 import info.magnolia.cms.core.Content;
37 import info.magnolia.cms.core.HierarchyManager;
38 import info.magnolia.cms.core.ItemType;
39 import info.magnolia.cms.core.NodeData;
40 import info.magnolia.cms.core.search.QueryManager;
41 import info.magnolia.cms.security.AccessDeniedException;
42 import info.magnolia.cms.security.AccessManager;
43
44 import javax.jcr.RepositoryException;
45 import javax.jcr.Workspace;
46
47
48
49
50
51
52 @Deprecated
53 public abstract class HierarchyManagerWrapper implements HierarchyManager {
54
55 private final HierarchyManager wrappedHM;
56
57 protected HierarchyManagerWrapper(HierarchyManager wrappedHM) {
58 this.wrappedHM = wrappedHM;
59 }
60
61 public HierarchyManager getWrappedHierarchyManager() {
62 return wrappedHM;
63 }
64
65
66
67
68 @Deprecated
69 public HierarchyManager getDelegate() {
70 return wrappedHM;
71 }
72
73 @Override
74 public String toString() {
75 final StringBuilder buffer = new StringBuilder();
76 buffer.append(getClass().getSimpleName());
77 buffer.append(" for ");
78 buffer.append(getWrappedHierarchyManager().toString());
79 return buffer.toString();
80 }
81
82
83
84
85
86
87
88
89 protected Contentef="../../../../info/magnolia/cms/core/Content.html#Content">Content wrap(Content content) {
90 return content;
91 }
92
93
94
95
96
97
98
99 protected NodeDataf="../../../../info/magnolia/cms/core/NodeData.html#NodeData">NodeData wrap(NodeData nodeData) {
100 return nodeData;
101 }
102
103
104
105
106
107
108
109 protected String transformPath(String path) {
110 return path;
111 }
112
113
114 @Override
115 public AccessManager getAccessManager() {
116 return getWrappedHierarchyManager().getAccessManager();
117 }
118
119 @Override
120 public QueryManager getQueryManager() {
121 return getWrappedHierarchyManager().getQueryManager();
122 }
123
124 @Override
125 public Content createContent(String path, String label, String contentType) throws RepositoryException {
126 path = transformPath(path);
127 return wrap(getWrappedHierarchyManager().createContent(path, label, contentType));
128 }
129
130 @Override
131 public Content getContent(String path) throws RepositoryException {
132 path = transformPath(path);
133 return wrap(getWrappedHierarchyManager().getContent(path));
134 }
135
136 @Override
137 public Content getContent(String path, boolean create, ItemType type) throws RepositoryException {
138 path = transformPath(path);
139 return wrap(getWrappedHierarchyManager().getContent(path, create, type));
140 }
141
142 @Override
143 public NodeData getNodeData(String path) throws RepositoryException {
144 path = transformPath(path);
145 return wrap(getWrappedHierarchyManager().getNodeData(path));
146 }
147
148 @Override
149 public void delete(String path) throws RepositoryException {
150 path = transformPath(path);
151 getWrappedHierarchyManager().delete(path);
152 }
153
154 @Override
155 public Content getRoot() throws RepositoryException {
156 return wrap(getWrappedHierarchyManager().getRoot());
157 }
158
159 @Override
160 public boolean isExist(String path) {
161 path = transformPath(path);
162 return getWrappedHierarchyManager().isExist(path);
163 }
164
165 @Override
166 public boolean isGranted(String path, long permissions) {
167 path = transformPath(path);
168 return getWrappedHierarchyManager().isGranted(path, permissions);
169 }
170
171 @Override
172 public boolean isNodeData(String path) throws AccessDeniedException {
173 path = transformPath(path);
174 return getWrappedHierarchyManager().isNodeData(path);
175 }
176
177 @Override
178 public Content getContentByUUID(String uuid) throws RepositoryException {
179 return wrap(getWrappedHierarchyManager().getContentByUUID(uuid));
180 }
181
182 @Override
183 public Workspace getWorkspace() {
184 return getWrappedHierarchyManager().getWorkspace();
185 }
186
187 @Override
188 public void moveTo(String source, String destination) throws RepositoryException {
189 source = transformPath(source);
190 destination = transformPath(destination);
191 getWrappedHierarchyManager().moveTo(source, destination);
192 }
193
194 @Override
195 public void copyTo(String source, String destination) throws RepositoryException {
196 source = transformPath(source);
197 destination = transformPath(destination);
198 getWrappedHierarchyManager().copyTo(source, destination);
199 }
200
201 @Override
202 public void save() throws RepositoryException {
203 getWrappedHierarchyManager().save();
204 }
205
206 @Override
207 public boolean hasPendingChanges() throws RepositoryException {
208 return getWrappedHierarchyManager().hasPendingChanges();
209 }
210
211 @Override
212 public void refresh(boolean keepChanges) throws RepositoryException {
213 getWrappedHierarchyManager().refresh(keepChanges);
214 }
215
216 @Override
217 public String getName() {
218 return getWrappedHierarchyManager().getName();
219 }
220 }