001
014
015 package com.liferay.portal.repository.liferayrepository.model;
016
017 import com.liferay.portal.kernel.exception.PortalException;
018 import com.liferay.portal.kernel.repository.model.Folder;
019 import com.liferay.portal.kernel.repository.model.RepositoryModelOperation;
020 import com.liferay.portal.kernel.util.Validator;
021 import com.liferay.portal.security.permission.PermissionChecker;
022 import com.liferay.portlet.documentlibrary.model.DLFolder;
023 import com.liferay.portlet.documentlibrary.model.DLFolderConstants;
024 import com.liferay.portlet.documentlibrary.service.permission.DLFolderPermission;
025 import com.liferay.portlet.documentlibrary.util.RepositoryModelUtil;
026 import com.liferay.portlet.expando.model.ExpandoBridge;
027 import com.liferay.portlet.exportimport.lar.StagedModelType;
028
029 import java.io.Serializable;
030
031 import java.util.Date;
032 import java.util.List;
033 import java.util.Map;
034
035
038 public class LiferayFolder extends LiferayModel implements Folder {
039
040 public LiferayFolder(DLFolder dlFolder) {
041 _dlFolder = dlFolder;
042
043 if (dlFolder == null) {
044 _escapedModel = false;
045 }
046 else {
047 _escapedModel = dlFolder.isEscapedModel();
048 }
049 }
050
051 public LiferayFolder(DLFolder dlFolder, boolean escapedModel) {
052 _dlFolder = dlFolder;
053 _escapedModel = escapedModel;
054 }
055
056 @Override
057 public Object clone() {
058 return new LiferayFolder(_dlFolder);
059 }
060
061 @Override
062 public boolean containsPermission(
063 PermissionChecker permissionChecker, String actionId)
064 throws PortalException {
065
066 return DLFolderPermission.contains(
067 permissionChecker, _dlFolder, actionId);
068 }
069
070 @Override
071 public boolean equals(Object obj) {
072 if (this == obj) {
073 return true;
074 }
075
076 if (!(obj instanceof LiferayFolder)) {
077 return false;
078 }
079
080 LiferayFolder liferayFolder = (LiferayFolder)obj;
081
082 if (Validator.equals(_dlFolder, liferayFolder._dlFolder)) {
083 return true;
084 }
085
086 return false;
087 }
088
089 @Override
090 public void execute(RepositoryModelOperation repositoryModelOperation)
091 throws PortalException {
092
093 repositoryModelOperation.execute(this);
094 }
095
096 @Override
097 public List<Long> getAncestorFolderIds() throws PortalException {
098 return _dlFolder.getAncestorFolderIds();
099 }
100
101 @Override
102 public List<Folder> getAncestors() throws PortalException {
103 return RepositoryModelUtil.toFolders(_dlFolder.getAncestors());
104 }
105
106 @Override
107 public Map<String, Serializable> getAttributes() {
108 ExpandoBridge expandoBridge = getExpandoBridge();
109
110 return expandoBridge.getAttributes();
111 }
112
113 @Override
114 public long getCompanyId() {
115 return _dlFolder.getCompanyId();
116 }
117
118 @Override
119 public Date getCreateDate() {
120 return _dlFolder.getCreateDate();
121 }
122
123 @Override
124 public String getDescription() {
125 return _dlFolder.getDescription();
126 }
127
128 @Override
129 public ExpandoBridge getExpandoBridge() {
130 return _dlFolder.getExpandoBridge();
131 }
132
133 @Override
134 public long getFolderId() {
135 return _dlFolder.getFolderId();
136 }
137
138 @Override
139 public long getGroupId() {
140 return _dlFolder.getGroupId();
141 }
142
143 @Override
144 public Date getLastPostDate() {
145 return _dlFolder.getLastPostDate();
146 }
147
148 @Override
149 public Object getModel() {
150 return _dlFolder;
151 }
152
153 @Override
154 public Class<?> getModelClass() {
155 return LiferayFolder.class;
156 }
157
158 @Override
159 public String getModelClassName() {
160 return LiferayFolder.class.getName();
161 }
162
163 @Override
164 public Date getModifiedDate() {
165 return _dlFolder.getModifiedDate();
166 }
167
168 @Override
169 public String getName() {
170 return _dlFolder.getName();
171 }
172
173 @Override
174 public Folder getParentFolder() throws PortalException {
175 DLFolder dlParentFolder = _dlFolder.getParentFolder();
176
177 if (dlParentFolder == null) {
178 return null;
179 }
180 else {
181 return new LiferayFolder(dlParentFolder);
182 }
183 }
184
185 @Override
186 public long getParentFolderId() {
187 return _dlFolder.getParentFolderId();
188 }
189
190 @Override
191 public long getPrimaryKey() {
192 return _dlFolder.getPrimaryKey();
193 }
194
195 @Override
196 public Serializable getPrimaryKeyObj() {
197 return getPrimaryKey();
198 }
199
200 @Override
201 public long getRepositoryId() {
202 return _dlFolder.getRepositoryId();
203 }
204
205 @Override
206 public StagedModelType getStagedModelType() {
207 return new StagedModelType(DLFolderConstants.getClassName());
208 }
209
210 @Override
211 public long getUserId() {
212 return _dlFolder.getUserId();
213 }
214
215 @Override
216 public String getUserName() {
217 return _dlFolder.getUserName();
218 }
219
220 @Override
221 public String getUserUuid() {
222 return _dlFolder.getUserUuid();
223 }
224
225 @Override
226 public String getUuid() {
227 return _dlFolder.getUuid();
228 }
229
230 @Override
231 public int hashCode() {
232 return _dlFolder.hashCode();
233 }
234
235 @Override
236 public boolean hasInheritableLock() {
237 return _dlFolder.hasInheritableLock();
238 }
239
240 @Override
241 public boolean hasLock() {
242 return _dlFolder.hasLock();
243 }
244
245 @Override
246 public boolean isDefaultRepository() {
247 if (_dlFolder.getGroupId() == _dlFolder.getRepositoryId()) {
248 return true;
249 }
250 else {
251 return false;
252 }
253 }
254
255 @Override
256 public boolean isEscapedModel() {
257 return _escapedModel;
258 }
259
260 @Override
261 public boolean isLocked() {
262 return _dlFolder.isLocked();
263 }
264
265 @Override
266 public boolean isMountPoint() {
267 return _dlFolder.isMountPoint();
268 }
269
270 @Override
271 public boolean isRoot() {
272 return _dlFolder.isRoot();
273 }
274
275 @Override
276 public boolean isSupportsLocking() {
277 if (isMountPoint()) {
278 return false;
279 }
280 else {
281 return true;
282 }
283 }
284
285 @Override
286 public boolean isSupportsMetadata() {
287 if (isMountPoint()) {
288 return false;
289 }
290 else {
291 return true;
292 }
293 }
294
295 @Override
296 public boolean isSupportsMultipleUpload() {
297 if (isMountPoint()) {
298 return false;
299 }
300 else {
301 return true;
302 }
303 }
304
305 @Override
306 public boolean isSupportsShortcuts() {
307 if (isMountPoint()) {
308 return false;
309 }
310 else {
311 return true;
312 }
313 }
314
315 @Override
316 public boolean isSupportsSocial() {
317 if (isMountPoint()) {
318 return false;
319 }
320 else {
321 return true;
322 }
323 }
324
325 @Override
326 public boolean isSupportsSubscribing() {
327 if (isMountPoint()) {
328 return false;
329 }
330 else {
331 return true;
332 }
333 }
334
335 @Override
336 public void setCompanyId(long companyId) {
337 _dlFolder.setCompanyId(companyId);
338 }
339
340 @Override
341 public void setCreateDate(Date date) {
342 _dlFolder.setCreateDate(date);
343 }
344
345 @Override
346 public void setGroupId(long groupId) {
347 _dlFolder.setGroupId(groupId);
348 }
349
350 @Override
351 public void setModifiedDate(Date date) {
352 _dlFolder.setModifiedDate(date);
353 }
354
355 public void setPrimaryKey(long primaryKey) {
356 _dlFolder.setPrimaryKey(primaryKey);
357 }
358
359 @Override
360 public void setPrimaryKeyObj(Serializable primaryKeyObj) {
361 setPrimaryKey(((Long)primaryKeyObj).longValue());
362 }
363
364 @Override
365 public void setUserId(long userId) {
366 _dlFolder.setUserId(userId);
367 }
368
369 @Override
370 public void setUserName(String userName) {
371 _dlFolder.setUserName(userName);
372 }
373
374 @Override
375 public void setUserUuid(String userUuid) {
376 _dlFolder.setUserUuid(userUuid);
377 }
378
379 @Override
380 public void setUuid(String uuid) {
381 _dlFolder.setUuid(uuid);
382 }
383
384 @Override
385 public Folder toEscapedModel() {
386 if (isEscapedModel()) {
387 return this;
388 }
389 else {
390 return new LiferayFolder(_dlFolder.toEscapedModel(), true);
391 }
392 }
393
394 @Override
395 public String toString() {
396 return _dlFolder.toString();
397 }
398
399 @Override
400 public Folder toUnescapedModel() {
401 if (isEscapedModel()) {
402 return new LiferayFolder(_dlFolder.toUnescapedModel(), true);
403 }
404 else {
405 return this;
406 }
407 }
408
409 private final DLFolder _dlFolder;
410 private final boolean _escapedModel;
411
412 }