001    /**
002     * Copyright (c) 2000-2013 Liferay, Inc. All rights reserved.
003     *
004     * This library is free software; you can redistribute it and/or modify it under
005     * the terms of the GNU Lesser General Public License as published by the Free
006     * Software Foundation; either version 2.1 of the License, or (at your option)
007     * any later version.
008     *
009     * This library is distributed in the hope that it will be useful, but WITHOUT
010     * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
011     * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
012     * details.
013     */
014    
015    package com.liferay.portal.repository.proxy;
016    
017    import com.liferay.portal.kernel.exception.PortalException;
018    import com.liferay.portal.kernel.exception.SystemException;
019    import com.liferay.portal.kernel.lar.StagedModelType;
020    import com.liferay.portal.kernel.log.Log;
021    import com.liferay.portal.kernel.log.LogFactoryUtil;
022    import com.liferay.portal.kernel.repository.model.FileEntry;
023    import com.liferay.portal.kernel.repository.model.FileVersion;
024    import com.liferay.portal.kernel.repository.model.Folder;
025    import com.liferay.portal.kernel.util.StringPool;
026    import com.liferay.portal.model.Lock;
027    import com.liferay.portal.security.permission.PermissionChecker;
028    import com.liferay.portlet.expando.model.ExpandoBridge;
029    
030    import java.io.InputStream;
031    import java.io.Serializable;
032    
033    import java.util.Date;
034    import java.util.List;
035    import java.util.Map;
036    
037    /**
038     * @author Mika Koivisto
039     */
040    public class FileEntryProxyBean
041            extends RepositoryModelProxyBean implements FileEntry {
042    
043            public FileEntryProxyBean(FileEntry fileEntry, ClassLoader classLoader) {
044                    super(classLoader);
045    
046                    _fileEntry = fileEntry;
047            }
048    
049            @Override
050            public Object clone() {
051                    FileEntryProxyBean fileEntryProxyBean = newFileEntryProxyBean(
052                            _fileEntry);
053    
054                    fileEntryProxyBean.setCompanyId(getCompanyId());
055                    fileEntryProxyBean.setCreateDate(getCreateDate());
056                    fileEntryProxyBean.setGroupId(getGroupId());
057                    fileEntryProxyBean.setModifiedDate(getModifiedDate());
058                    fileEntryProxyBean.setPrimaryKeyObj(getPrimaryKeyObj());
059                    fileEntryProxyBean.setUserId(getUserId());
060                    fileEntryProxyBean.setUserName(getUserName());
061    
062                    try {
063                            fileEntryProxyBean.setUserUuid(getUserUuid());
064                    }
065                    catch (SystemException se) {
066                    }
067    
068                    fileEntryProxyBean.setUuid(getUuid());
069    
070                    return fileEntryProxyBean;
071            }
072    
073            @Override
074            public boolean containsPermission(
075                            PermissionChecker permissionChecker, String actionId)
076                    throws PortalException, SystemException {
077    
078                    return _fileEntry.containsPermission(permissionChecker, actionId);
079            }
080    
081            @Override
082            public Map<String, Serializable> getAttributes() {
083                    return _fileEntry.getAttributes();
084            }
085    
086            @Override
087            public long getCompanyId() {
088                    return _fileEntry.getCompanyId();
089            }
090    
091            @Override
092            public InputStream getContentStream()
093                    throws PortalException, SystemException {
094    
095                    return _fileEntry.getContentStream();
096            }
097    
098            @Override
099            public InputStream getContentStream(String version)
100                    throws PortalException, SystemException {
101    
102                    return _fileEntry.getContentStream(version);
103            }
104    
105            @Override
106            public Date getCreateDate() {
107                    return _fileEntry.getCreateDate();
108            }
109    
110            @Override
111            public String getDescription() {
112                    return _fileEntry.getDescription();
113            }
114    
115            @Override
116            public ExpandoBridge getExpandoBridge() {
117                    ExpandoBridge expandoBridge = _fileEntry.getExpandoBridge();
118    
119                    return (ExpandoBridge)newProxyInstance(
120                            expandoBridge, ExpandoBridge.class);
121            }
122    
123            @Override
124            public String getExtension() {
125                    return _fileEntry.getExtension();
126            }
127    
128            @Override
129            public long getFileEntryId() {
130                    return _fileEntry.getFileEntryId();
131            }
132    
133            @Override
134            public FileVersion getFileVersion()
135                    throws PortalException, SystemException {
136    
137                    FileVersion fileVersion = _fileEntry.getFileVersion();
138    
139                    return newFileVersionProxyBean(fileVersion);
140            }
141    
142            @Override
143            public FileVersion getFileVersion(String version)
144                    throws PortalException, SystemException {
145    
146                    FileVersion fileVersion = _fileEntry.getFileVersion(version);
147    
148                    return newFileVersionProxyBean(fileVersion);
149            }
150    
151            @Override
152            public List<FileVersion> getFileVersions(int status)
153                    throws SystemException {
154    
155                    List<FileVersion> fileVersions = _fileEntry.getFileVersions(status);
156    
157                    return toFileVersionProxyBeans(fileVersions);
158            }
159    
160            @Override
161            public Folder getFolder() {
162                    Folder folder = _fileEntry.getFolder();
163    
164                    return newFolderProxyBean(folder);
165            }
166    
167            @Override
168            public long getFolderId() {
169                    return _fileEntry.getFolderId();
170            }
171    
172            @Override
173            public long getGroupId() {
174                    return _fileEntry.getGroupId();
175            }
176    
177            @Override
178            public String getIcon() {
179                    return _fileEntry.getIcon();
180            }
181    
182            @Override
183            public FileVersion getLatestFileVersion()
184                    throws PortalException, SystemException {
185    
186                    FileVersion fileVersion = _fileEntry.getLatestFileVersion();
187    
188                    return newFileVersionProxyBean(fileVersion);
189            }
190    
191            @Override
192            public Lock getLock() {
193                    Lock lock = _fileEntry.getLock();
194    
195                    return (Lock)newProxyInstance(lock, Lock.class);
196            }
197    
198            @Override
199            public String getMimeType() {
200                    return _fileEntry.getMimeType();
201            }
202    
203            @Override
204            public String getMimeType(String version) {
205                    return _fileEntry.getMimeType(version);
206            }
207    
208            @Override
209            public Object getModel() {
210                    return _fileEntry.getModel();
211            }
212    
213            @Override
214            public Class<?> getModelClass() {
215                    return _fileEntry.getModelClass();
216            }
217    
218            @Override
219            public String getModelClassName() {
220                    return _fileEntry.getModelClassName();
221            }
222    
223            @Override
224            public Date getModifiedDate() {
225                    return _fileEntry.getModifiedDate();
226            }
227    
228            @Override
229            public long getPrimaryKey() {
230                    return _fileEntry.getPrimaryKey();
231            }
232    
233            @Override
234            public Serializable getPrimaryKeyObj() {
235                    return _fileEntry.getPrimaryKeyObj();
236            }
237    
238            @Override
239            public int getReadCount() {
240                    return _fileEntry.getReadCount();
241            }
242    
243            @Override
244            public long getRepositoryId() {
245                    return _fileEntry.getRepositoryId();
246            }
247    
248            @Override
249            public long getSize() {
250                    return _fileEntry.getSize();
251            }
252    
253            @Override
254            public StagedModelType getStagedModelType() {
255                    return _fileEntry.getStagedModelType();
256            }
257    
258            @Override
259            public String getTitle() {
260                    return _fileEntry.getTitle();
261            }
262    
263            @Override
264            public long getUserId() {
265                    return _fileEntry.getUserId();
266            }
267    
268            @Override
269            public String getUserName() {
270                    return _fileEntry.getUserName();
271            }
272    
273            @Override
274            public String getUserUuid() throws SystemException {
275                    return _fileEntry.getUserUuid();
276            }
277    
278            @Override
279            public String getUuid() {
280                    return _fileEntry.getUuid();
281            }
282    
283            @Override
284            public String getVersion() {
285                    return _fileEntry.getVersion();
286            }
287    
288            /**
289             * @deprecated As of 6.2.0, replaced by {@link
290             *             FileVersionProxyBean#getUserId()}
291             */
292            @Override
293            public long getVersionUserId() {
294                    long versionUserId = 0;
295    
296                    try {
297                            FileVersion fileVersion = _fileEntry.getFileVersion();
298    
299                            versionUserId = fileVersion.getUserId();
300                    }
301                    catch (Exception e) {
302                            _log.error(e, e);
303                    }
304    
305                    return versionUserId;
306            }
307    
308            /**
309             * @deprecated As of 6.2.0, replaced by {@link
310             *             FileVersionProxyBean#getUserName()}
311             */
312            @Override
313            public String getVersionUserName() {
314                    String versionUserName = StringPool.BLANK;
315    
316                    try {
317                            FileVersion fileVersion = _fileEntry.getFileVersion();
318    
319                            versionUserName = fileVersion.getUserName();
320                    }
321                    catch (Exception e) {
322                            _log.error(e, e);
323                    }
324    
325                    return versionUserName;
326            }
327    
328            /**
329             * @deprecated As of 6.2.0, replaced by {@link
330             *             FileVersionProxyBean#getUserUuid()}
331             */
332            @Override
333            public String getVersionUserUuid() {
334                    String versionUserUuid = StringPool.BLANK;
335    
336                    try {
337                            FileVersion fileVersion = _fileEntry.getFileVersion();
338    
339                            versionUserUuid = fileVersion.getUserUuid();
340                    }
341                    catch (Exception e) {
342                            _log.error(e, e);
343                    }
344    
345                    return versionUserUuid;
346            }
347    
348            @Override
349            public boolean hasLock() {
350                    return _fileEntry.hasLock();
351            }
352    
353            @Override
354            public boolean isCheckedOut() {
355                    return _fileEntry.isCheckedOut();
356            }
357    
358            @Override
359            public boolean isDefaultRepository() {
360                    return _fileEntry.isDefaultRepository();
361            }
362    
363            @Override
364            public boolean isEscapedModel() {
365                    return _fileEntry.isEscapedModel();
366            }
367    
368            @Override
369            public boolean isInTrash() {
370                    return _fileEntry.isInTrash();
371            }
372    
373            @Override
374            public boolean isInTrashContainer() {
375                    return _fileEntry.isInTrashContainer();
376            }
377    
378            @Override
379            public boolean isManualCheckInRequired() {
380                    return _fileEntry.isManualCheckInRequired();
381            }
382    
383            @Override
384            public boolean isSupportsLocking() {
385                    return _fileEntry.isSupportsLocking();
386            }
387    
388            @Override
389            public boolean isSupportsMetadata() {
390                    return _fileEntry.isSupportsMetadata();
391            }
392    
393            @Override
394            public boolean isSupportsSocial() {
395                    return _fileEntry.isSupportsSocial();
396            }
397    
398            @Override
399            public void setCompanyId(long companyId) {
400                    _fileEntry.setCompanyId(companyId);
401            }
402    
403            @Override
404            public void setCreateDate(Date date) {
405                    _fileEntry.setCreateDate(date);
406            }
407    
408            @Override
409            public void setGroupId(long groupId) {
410                    _fileEntry.setGroupId(groupId);
411            }
412    
413            @Override
414            public void setModifiedDate(Date date) {
415                    _fileEntry.setModifiedDate(date);
416            }
417    
418            @Override
419            public void setPrimaryKeyObj(Serializable primaryKeyObj) {
420                    _fileEntry.setPrimaryKeyObj(primaryKeyObj);
421            }
422    
423            @Override
424            public void setUserId(long userId) {
425                    _fileEntry.setUserId(userId);
426            }
427    
428            @Override
429            public void setUserName(String userName) {
430                    _fileEntry.setUserName(userName);
431            }
432    
433            @Override
434            public void setUserUuid(String userUuid) {
435                    _fileEntry.setUserUuid(userUuid);
436            }
437    
438            @Override
439            public void setUuid(String uuid) {
440                    _fileEntry.setUuid(uuid);
441            }
442    
443            @Override
444            public FileEntry toEscapedModel() {
445                    FileEntry fileEntry = _fileEntry.toEscapedModel();
446    
447                    return newFileEntryProxyBean(fileEntry);
448            }
449    
450            @Override
451            public FileEntry toUnescapedModel() {
452                    FileEntry fileEntry = _fileEntry.toUnescapedModel();
453    
454                    return newFileEntryProxyBean(fileEntry);
455            }
456    
457            private static Log _log = LogFactoryUtil.getLog(FileEntryProxyBean.class);
458    
459            private FileEntry _fileEntry;
460    
461    }