001    /**
002     * Copyright (c) 2000-2012 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.liferayrepository.model;
016    
017    import com.liferay.portal.kernel.exception.PortalException;
018    import com.liferay.portal.kernel.exception.SystemException;
019    import com.liferay.portal.kernel.repository.model.FileEntry;
020    import com.liferay.portal.kernel.repository.model.FileVersion;
021    import com.liferay.portal.security.auth.PrincipalThreadLocal;
022    import com.liferay.portlet.documentlibrary.model.DLFileVersion;
023    import com.liferay.portlet.documentlibrary.model.DLFolder;
024    import com.liferay.portlet.documentlibrary.service.DLFileEntryLocalServiceUtil;
025    import com.liferay.portlet.expando.model.ExpandoBridge;
026    
027    import java.io.File;
028    import java.io.InputStream;
029    import java.io.Serializable;
030    
031    import java.util.Date;
032    import java.util.Map;
033    
034    /**
035     * @author Alexander Chow
036     */
037    public class LiferayFileVersion extends LiferayModel implements FileVersion {
038    
039            public LiferayFileVersion(DLFileVersion dlFileVersion) {
040                    _dlFileVersion = dlFileVersion;
041            }
042    
043            public LiferayFileVersion(
044                    DLFileVersion dlFileVersion, boolean escapedModel) {
045    
046                    _dlFileVersion = dlFileVersion;
047                    _escapedModel = escapedModel;
048            }
049    
050            public Map<String, Serializable> getAttributes() {
051                    ExpandoBridge expandoBridge = _dlFileVersion.getExpandoBridge();
052    
053                    return expandoBridge.getAttributes();
054            }
055    
056            public String getChangeLog() {
057                    return _dlFileVersion.getChangeLog();
058            }
059    
060            @Override
061            public long getCompanyId() {
062                    return _dlFileVersion.getCompanyId();
063            }
064    
065            public InputStream getContentStream(boolean incrementCounter)
066                    throws PortalException, SystemException {
067    
068                    return _dlFileVersion.getContentStream(incrementCounter);
069            }
070    
071            public Date getCreateDate() {
072                    return _dlFileVersion.getCreateDate();
073            }
074    
075            public String getDescription() {
076                    return _dlFileVersion.getDescription();
077            }
078    
079            @Override
080            public ExpandoBridge getExpandoBridge() {
081                    return _dlFileVersion.getExpandoBridge();
082            }
083    
084            public String getExtension() {
085                    return _dlFileVersion.getExtension();
086            }
087    
088            public String getExtraSettings() {
089                    return _dlFileVersion.getExtraSettings();
090            }
091    
092            public File getFile(boolean incrementCounter)
093                    throws PortalException, SystemException {
094    
095                    return DLFileEntryLocalServiceUtil.getFile(
096                            PrincipalThreadLocal.getUserId(), _dlFileVersion.getFileEntryId(),
097                            _dlFileVersion.getVersion(), incrementCounter);
098            }
099    
100            public FileEntry getFileEntry() throws PortalException, SystemException {
101                    return new LiferayFileEntry(_dlFileVersion.getFileEntry());
102            }
103    
104            public long getFileEntryId() {
105                    return _dlFileVersion.getFileEntryId();
106            }
107    
108            public long getFileVersionId() {
109                    return _dlFileVersion.getFileVersionId();
110            }
111    
112            public long getGroupId() {
113                    return _dlFileVersion.getGroupId();
114            }
115    
116            public String getIcon() {
117                    return _dlFileVersion.getIcon();
118            }
119    
120            public String getMimeType() {
121                    return _dlFileVersion.getMimeType();
122            }
123    
124            public Object getModel() {
125                    return _dlFileVersion;
126            }
127    
128            public Class<?> getModelClass() {
129                    return DLFileVersion.class;
130            }
131    
132            @Override
133            public String getModelClassName() {
134                    return DLFileVersion.class.getName();
135            }
136    
137            public Date getModifiedDate() {
138                    return _dlFileVersion.getModifiedDate();
139            }
140    
141            @Override
142            public long getPrimaryKey() {
143                    return _dlFileVersion.getPrimaryKey();
144            }
145    
146            public Serializable getPrimaryKeyObj() {
147                    return getPrimaryKey();
148            }
149    
150            public long getRepositoryId() {
151                    return _dlFileVersion.getRepositoryId();
152            }
153    
154            public long getSize() {
155                    return _dlFileVersion.getSize();
156            }
157    
158            public int getStatus() {
159                    return _dlFileVersion.getStatus();
160            }
161    
162            public long getStatusByUserId() {
163                    return _dlFileVersion.getStatusByUserId();
164            }
165    
166            public String getStatusByUserName() {
167                    return _dlFileVersion.getStatusByUserName();
168            }
169    
170            public String getStatusByUserUuid() throws SystemException {
171                    return _dlFileVersion.getStatusByUserUuid();
172            }
173    
174            public Date getStatusDate() {
175                    return _dlFileVersion.getStatusDate();
176            }
177    
178            public String getTitle() {
179                    return _dlFileVersion.getTitle();
180            }
181    
182            public DLFolder getTrashContainer() {
183                    return _dlFileVersion.getTrashContainer();
184            }
185    
186            public long getUserId() {
187                    return _dlFileVersion.getUserId();
188            }
189    
190            public String getUserName() {
191                    return _dlFileVersion.getUserName();
192            }
193    
194            public String getUserUuid() throws SystemException {
195                    return _dlFileVersion.getUserUuid();
196            }
197    
198            public String getUuid() {
199                    return _dlFileVersion.getUuid();
200            }
201    
202            public String getVersion() {
203                    return _dlFileVersion.getVersion();
204            }
205    
206            public boolean isApproved() {
207                    return _dlFileVersion.isApproved();
208            }
209    
210            public boolean isDefaultRepository() {
211                    if (_dlFileVersion.getGroupId() == _dlFileVersion.getRepositoryId()) {
212                            return true;
213                    }
214                    else {
215                            return false;
216                    }
217            }
218    
219            public boolean isDraft() {
220                    return _dlFileVersion.isDraft();
221            }
222    
223            public boolean isEscapedModel() {
224                    return _escapedModel;
225            }
226    
227            public boolean isExpired() {
228                    return _dlFileVersion.isExpired();
229            }
230    
231            public boolean isInTrash() {
232                    return _dlFileVersion.isInTrash();
233            }
234    
235            public boolean isInTrashContainer() {
236                    return _dlFileVersion.isInTrashContainer();
237            }
238    
239            public boolean isPending() {
240                    return _dlFileVersion.isPending();
241            }
242    
243            public void setCompanyId(long companyId) {
244                    _dlFileVersion.setCompanyId(companyId);
245            }
246    
247            public void setCreateDate(Date date) {
248                    _dlFileVersion.setCreateDate(date);
249            }
250    
251            public void setGroupId(long groupId) {
252                    _dlFileVersion.setGroupId(groupId);
253            }
254    
255            public void setModifiedDate(Date date) {
256            }
257    
258            public void setPrimaryKey(long primaryKey) {
259                    _dlFileVersion.setPrimaryKey(primaryKey);
260            }
261    
262            public void setPrimaryKeyObj(Serializable primaryKeyObj) {
263                    setPrimaryKey(((Long)primaryKeyObj).longValue());
264            }
265    
266            public void setUserId(long userId) {
267                    _dlFileVersion.setUserId(userId);
268            }
269    
270            public void setUserName(String userName) {
271                    _dlFileVersion.setUserName(userName);
272            }
273    
274            public void setUserUuid(String userUuid) {
275                    _dlFileVersion.setUserUuid(userUuid);
276            }
277    
278            public FileVersion toEscapedModel() {
279                    if (isEscapedModel()) {
280                            return this;
281                    }
282                    else {
283                            return new LiferayFileVersion(
284                                    _dlFileVersion.toEscapedModel(), true);
285                    }
286            }
287    
288            @Override
289            public String toString() {
290                    return _dlFileVersion.toString();
291            }
292    
293            public FileVersion toUnescapedModel() {
294                    if (isEscapedModel()) {
295                            return new LiferayFileVersion(
296                                    _dlFileVersion.toUnescapedModel(), true);
297                    }
298                    else {
299                            return this;
300                    }
301            }
302    
303            private DLFileVersion _dlFileVersion;
304            private boolean _escapedModel;
305    
306    }