001    /**
002     * Copyright (c) 2000-present 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.repository.model.Folder;
021    import com.liferay.portal.kernel.repository.model.RepositoryModelOperation;
022    import com.liferay.portal.security.permission.PermissionChecker;
023    import com.liferay.portlet.expando.model.ExpandoBridge;
024    
025    import java.io.Serializable;
026    
027    import java.util.Date;
028    import java.util.List;
029    import java.util.Map;
030    
031    /**
032     * @author Mika Koivisto
033     */
034    public class FolderProxyBean
035            extends RepositoryModelProxyBean implements Folder {
036    
037            public FolderProxyBean(Folder folder, ClassLoader classLoader) {
038                    super(classLoader);
039    
040                    _folder = folder;
041            }
042    
043            @Override
044            public Object clone() {
045                    FolderProxyBean folderProxyBean = newFolderProxyBean(_folder);
046    
047                    folderProxyBean.setCompanyId(getCompanyId());
048                    folderProxyBean.setCreateDate(getCreateDate());
049                    folderProxyBean.setGroupId(getGroupId());
050                    folderProxyBean.setModifiedDate(getModifiedDate());
051                    folderProxyBean.setPrimaryKeyObj(getPrimaryKeyObj());
052                    folderProxyBean.setUserId(getUserId());
053                    folderProxyBean.setUserName(getUserName());
054    
055                    try {
056                            folderProxyBean.setUserUuid(getUserUuid());
057                    }
058                    catch (SystemException se) {
059                    }
060    
061                    folderProxyBean.setUuid(getUuid());
062    
063                    return folderProxyBean;
064            }
065    
066            @Override
067            public boolean containsPermission(
068                            PermissionChecker permissionChecker, String actionId)
069                    throws PortalException {
070    
071                    return _folder.containsPermission(permissionChecker, actionId);
072            }
073    
074            @Override
075            public void execute(RepositoryModelOperation repositoryModelOperation)
076                    throws PortalException {
077    
078                    repositoryModelOperation.execute(this);
079            }
080    
081            @Override
082            public List<Long> getAncestorFolderIds() throws PortalException {
083                    return _folder.getAncestorFolderIds();
084            }
085    
086            @Override
087            public List<Folder> getAncestors() throws PortalException {
088                    List<Folder> folders = _folder.getAncestors();
089    
090                    return toFolderProxyBeans(folders);
091            }
092    
093            @Override
094            public Map<String, Serializable> getAttributes() {
095                    return _folder.getAttributes();
096            }
097    
098            @Override
099            public long getCompanyId() {
100                    return _folder.getCompanyId();
101            }
102    
103            @Override
104            public Date getCreateDate() {
105                    return _folder.getCreateDate();
106            }
107    
108            @Override
109            public String getDescription() {
110                    return _folder.getDescription();
111            }
112    
113            @Override
114            public ExpandoBridge getExpandoBridge() {
115                    ExpandoBridge expandoBridge = _folder.getExpandoBridge();
116    
117                    return (ExpandoBridge)newProxyInstance(
118                            expandoBridge, ExpandoBridge.class);
119            }
120    
121            @Override
122            public long getFolderId() {
123                    return _folder.getFolderId();
124            }
125    
126            @Override
127            public long getGroupId() {
128                    return _folder.getGroupId();
129            }
130    
131            @Override
132            public Date getLastPostDate() {
133                    return _folder.getLastPostDate();
134            }
135    
136            @Override
137            public Object getModel() {
138                    return _folder.getModel();
139            }
140    
141            @Override
142            public Class<?> getModelClass() {
143                    return _folder.getModelClass();
144            }
145    
146            @Override
147            public String getModelClassName() {
148                    return _folder.getModelClassName();
149            }
150    
151            @Override
152            public Date getModifiedDate() {
153                    return _folder.getModifiedDate();
154            }
155    
156            @Override
157            public String getName() {
158                    return _folder.getName();
159            }
160    
161            @Override
162            public Folder getParentFolder() throws PortalException {
163                    Folder folder = _folder.getParentFolder();
164    
165                    return newFolderProxyBean(folder);
166            }
167    
168            @Override
169            public long getParentFolderId() {
170                    return _folder.getParentFolderId();
171            }
172    
173            @Override
174            public long getPrimaryKey() {
175                    return _folder.getPrimaryKey();
176            }
177    
178            @Override
179            public Serializable getPrimaryKeyObj() {
180                    return _folder.getPrimaryKeyObj();
181            }
182    
183            @Override
184            public long getRepositoryId() {
185                    return _folder.getRepositoryId();
186            }
187    
188            @Override
189            public StagedModelType getStagedModelType() {
190                    return _folder.getStagedModelType();
191            }
192    
193            @Override
194            public long getUserId() {
195                    return _folder.getUserId();
196            }
197    
198            @Override
199            public String getUserName() {
200                    return _folder.getUserName();
201            }
202    
203            @Override
204            public String getUserUuid() {
205                    return _folder.getUserUuid();
206            }
207    
208            @Override
209            public String getUuid() {
210                    return _folder.getUuid();
211            }
212    
213            @Override
214            public boolean hasInheritableLock() {
215                    return _folder.hasInheritableLock();
216            }
217    
218            @Override
219            public boolean hasLock() {
220                    return _folder.hasLock();
221            }
222    
223            @Override
224            public boolean isDefaultRepository() {
225                    return _folder.isDefaultRepository();
226            }
227    
228            @Override
229            public boolean isEscapedModel() {
230                    return _folder.isEscapedModel();
231            }
232    
233            @Override
234            public boolean isLocked() {
235                    return _folder.isLocked();
236            }
237    
238            @Override
239            public boolean isMountPoint() {
240                    return _folder.isMountPoint();
241            }
242    
243            @Override
244            public boolean isRoot() {
245                    return _folder.isRoot();
246            }
247    
248            @Override
249            public boolean isSupportsLocking() {
250                    return _folder.isSupportsLocking();
251            }
252    
253            @Override
254            public boolean isSupportsMetadata() {
255                    return _folder.isSupportsMetadata();
256            }
257    
258            @Override
259            public boolean isSupportsMultipleUpload() {
260                    return _folder.isSupportsMultipleUpload();
261            }
262    
263            @Override
264            public boolean isSupportsShortcuts() {
265                    return _folder.isSupportsShortcuts();
266            }
267    
268            @Override
269            public boolean isSupportsSocial() {
270                    return _folder.isSupportsSocial();
271            }
272    
273            @Override
274            public boolean isSupportsSubscribing() {
275                    return _folder.isSupportsSubscribing();
276            }
277    
278            @Override
279            public void setCompanyId(long companyId) {
280                    _folder.setCompanyId(companyId);
281            }
282    
283            @Override
284            public void setCreateDate(Date date) {
285                    _folder.setCreateDate(date);
286            }
287    
288            @Override
289            public void setGroupId(long groupId) {
290                    _folder.setGroupId(groupId);
291            }
292    
293            @Override
294            public void setModifiedDate(Date date) {
295                    _folder.setModifiedDate(date);
296            }
297    
298            @Override
299            public void setPrimaryKeyObj(Serializable primaryKeyObj) {
300                    _folder.setPrimaryKeyObj(primaryKeyObj);
301            }
302    
303            @Override
304            public void setUserId(long userId) {
305                    _folder.setUserId(userId);
306            }
307    
308            @Override
309            public void setUserName(String userName) {
310                    _folder.setUserName(userName);
311            }
312    
313            @Override
314            public void setUserUuid(String userUuid) {
315                    _folder.setUserUuid(userUuid);
316            }
317    
318            @Override
319            public void setUuid(String uuid) {
320                    _folder.setUuid(uuid);
321            }
322    
323            @Override
324            public Folder toEscapedModel() {
325                    Folder folder = _folder.toEscapedModel();
326    
327                    return newFolderProxyBean(folder);
328            }
329    
330            @Override
331            public Folder toUnescapedModel() {
332                    Folder folder = _folder.toUnescapedModel();
333    
334                    return newFolderProxyBean(folder);
335            }
336    
337            private final Folder _folder;
338    
339    }