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.portlet.bookmarks.model.impl;
016    
017    import aQute.bnd.annotation.ProviderType;
018    
019    import com.liferay.portal.NoSuchModelException;
020    import com.liferay.portal.kernel.bean.AutoEscapeBeanHandler;
021    import com.liferay.portal.kernel.exception.PortalException;
022    import com.liferay.portal.kernel.json.JSON;
023    import com.liferay.portal.kernel.lar.StagedModelType;
024    import com.liferay.portal.kernel.trash.TrashHandler;
025    import com.liferay.portal.kernel.trash.TrashHandlerRegistryUtil;
026    import com.liferay.portal.kernel.util.GetterUtil;
027    import com.liferay.portal.kernel.util.ProxyUtil;
028    import com.liferay.portal.kernel.util.StringBundler;
029    import com.liferay.portal.kernel.util.StringPool;
030    import com.liferay.portal.kernel.util.Validator;
031    import com.liferay.portal.kernel.workflow.WorkflowConstants;
032    import com.liferay.portal.model.CacheModel;
033    import com.liferay.portal.model.ContainerModel;
034    import com.liferay.portal.model.TrashedModel;
035    import com.liferay.portal.model.User;
036    import com.liferay.portal.model.impl.BaseModelImpl;
037    import com.liferay.portal.service.ServiceContext;
038    import com.liferay.portal.service.UserLocalServiceUtil;
039    import com.liferay.portal.util.PortalUtil;
040    
041    import com.liferay.portlet.bookmarks.model.BookmarksFolder;
042    import com.liferay.portlet.bookmarks.model.BookmarksFolderModel;
043    import com.liferay.portlet.bookmarks.model.BookmarksFolderSoap;
044    import com.liferay.portlet.expando.model.ExpandoBridge;
045    import com.liferay.portlet.expando.util.ExpandoBridgeFactoryUtil;
046    import com.liferay.portlet.trash.model.TrashEntry;
047    import com.liferay.portlet.trash.service.TrashEntryLocalServiceUtil;
048    
049    import java.io.Serializable;
050    
051    import java.sql.Types;
052    
053    import java.util.ArrayList;
054    import java.util.Date;
055    import java.util.HashMap;
056    import java.util.List;
057    import java.util.Map;
058    
059    /**
060     * The base model implementation for the BookmarksFolder service. Represents a row in the "BookmarksFolder" database table, with each column mapped to a property of this class.
061     *
062     * <p>
063     * This implementation and its corresponding interface {@link com.liferay.portlet.bookmarks.model.BookmarksFolderModel} exist only as a container for the default property accessors generated by ServiceBuilder. Helper methods and all application logic should be put in {@link BookmarksFolderImpl}.
064     * </p>
065     *
066     * @author Brian Wing Shun Chan
067     * @see BookmarksFolderImpl
068     * @see com.liferay.portlet.bookmarks.model.BookmarksFolder
069     * @see com.liferay.portlet.bookmarks.model.BookmarksFolderModel
070     * @generated
071     */
072    @JSON(strict = true)
073    @ProviderType
074    public class BookmarksFolderModelImpl extends BaseModelImpl<BookmarksFolder>
075            implements BookmarksFolderModel {
076            /*
077             * NOTE FOR DEVELOPERS:
078             *
079             * Never modify or reference this class directly. All methods that expect a bookmarks folder model instance should use the {@link com.liferay.portlet.bookmarks.model.BookmarksFolder} interface instead.
080             */
081            public static final String TABLE_NAME = "BookmarksFolder";
082            public static final Object[][] TABLE_COLUMNS = {
083                            { "uuid_", Types.VARCHAR },
084                            { "folderId", Types.BIGINT },
085                            { "groupId", Types.BIGINT },
086                            { "companyId", Types.BIGINT },
087                            { "userId", Types.BIGINT },
088                            { "userName", Types.VARCHAR },
089                            { "createDate", Types.TIMESTAMP },
090                            { "modifiedDate", Types.TIMESTAMP },
091                            { "resourceBlockId", Types.BIGINT },
092                            { "parentFolderId", Types.BIGINT },
093                            { "treePath", Types.VARCHAR },
094                            { "name", Types.VARCHAR },
095                            { "description", Types.VARCHAR },
096                            { "status", Types.INTEGER },
097                            { "statusByUserId", Types.BIGINT },
098                            { "statusByUserName", Types.VARCHAR },
099                            { "statusDate", Types.TIMESTAMP }
100                    };
101            public static final String TABLE_SQL_CREATE = "create table BookmarksFolder (uuid_ VARCHAR(75) null,folderId LONG not null primary key,groupId LONG,companyId LONG,userId LONG,userName VARCHAR(75) null,createDate DATE null,modifiedDate DATE null,resourceBlockId LONG,parentFolderId LONG,treePath STRING null,name VARCHAR(75) null,description STRING null,status INTEGER,statusByUserId LONG,statusByUserName VARCHAR(75) null,statusDate DATE null)";
102            public static final String TABLE_SQL_DROP = "drop table BookmarksFolder";
103            public static final String ORDER_BY_JPQL = " ORDER BY bookmarksFolder.parentFolderId ASC, bookmarksFolder.name ASC";
104            public static final String ORDER_BY_SQL = " ORDER BY BookmarksFolder.parentFolderId ASC, BookmarksFolder.name ASC";
105            public static final String DATA_SOURCE = "liferayDataSource";
106            public static final String SESSION_FACTORY = "liferaySessionFactory";
107            public static final String TX_MANAGER = "liferayTransactionManager";
108            public static final boolean ENTITY_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
109                                    "value.object.entity.cache.enabled.com.liferay.portlet.bookmarks.model.BookmarksFolder"),
110                            true);
111            public static final boolean FINDER_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
112                                    "value.object.finder.cache.enabled.com.liferay.portlet.bookmarks.model.BookmarksFolder"),
113                            true);
114            public static final boolean COLUMN_BITMASK_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
115                                    "value.object.column.bitmask.enabled.com.liferay.portlet.bookmarks.model.BookmarksFolder"),
116                            true);
117            public static final long COMPANYID_COLUMN_BITMASK = 1L;
118            public static final long FOLDERID_COLUMN_BITMASK = 2L;
119            public static final long GROUPID_COLUMN_BITMASK = 4L;
120            public static final long PARENTFOLDERID_COLUMN_BITMASK = 8L;
121            public static final long RESOURCEBLOCKID_COLUMN_BITMASK = 16L;
122            public static final long STATUS_COLUMN_BITMASK = 32L;
123            public static final long UUID_COLUMN_BITMASK = 64L;
124            public static final long NAME_COLUMN_BITMASK = 128L;
125    
126            /**
127             * Converts the soap model instance into a normal model instance.
128             *
129             * @param soapModel the soap model instance to convert
130             * @return the normal model instance
131             */
132            public static BookmarksFolder toModel(BookmarksFolderSoap soapModel) {
133                    if (soapModel == null) {
134                            return null;
135                    }
136    
137                    BookmarksFolder model = new BookmarksFolderImpl();
138    
139                    model.setUuid(soapModel.getUuid());
140                    model.setFolderId(soapModel.getFolderId());
141                    model.setGroupId(soapModel.getGroupId());
142                    model.setCompanyId(soapModel.getCompanyId());
143                    model.setUserId(soapModel.getUserId());
144                    model.setUserName(soapModel.getUserName());
145                    model.setCreateDate(soapModel.getCreateDate());
146                    model.setModifiedDate(soapModel.getModifiedDate());
147                    model.setResourceBlockId(soapModel.getResourceBlockId());
148                    model.setParentFolderId(soapModel.getParentFolderId());
149                    model.setTreePath(soapModel.getTreePath());
150                    model.setName(soapModel.getName());
151                    model.setDescription(soapModel.getDescription());
152                    model.setStatus(soapModel.getStatus());
153                    model.setStatusByUserId(soapModel.getStatusByUserId());
154                    model.setStatusByUserName(soapModel.getStatusByUserName());
155                    model.setStatusDate(soapModel.getStatusDate());
156    
157                    return model;
158            }
159    
160            /**
161             * Converts the soap model instances into normal model instances.
162             *
163             * @param soapModels the soap model instances to convert
164             * @return the normal model instances
165             */
166            public static List<BookmarksFolder> toModels(
167                    BookmarksFolderSoap[] soapModels) {
168                    if (soapModels == null) {
169                            return null;
170                    }
171    
172                    List<BookmarksFolder> models = new ArrayList<BookmarksFolder>(soapModels.length);
173    
174                    for (BookmarksFolderSoap soapModel : soapModels) {
175                            models.add(toModel(soapModel));
176                    }
177    
178                    return models;
179            }
180    
181            public static final long LOCK_EXPIRATION_TIME = GetterUtil.getLong(com.liferay.portal.util.PropsUtil.get(
182                                    "lock.expiration.time.com.liferay.portlet.bookmarks.model.BookmarksFolder"));
183    
184            public BookmarksFolderModelImpl() {
185            }
186    
187            @Override
188            public long getPrimaryKey() {
189                    return _folderId;
190            }
191    
192            @Override
193            public void setPrimaryKey(long primaryKey) {
194                    setFolderId(primaryKey);
195            }
196    
197            @Override
198            public Serializable getPrimaryKeyObj() {
199                    return _folderId;
200            }
201    
202            @Override
203            public void setPrimaryKeyObj(Serializable primaryKeyObj) {
204                    setPrimaryKey(((Long)primaryKeyObj).longValue());
205            }
206    
207            @Override
208            public Class<?> getModelClass() {
209                    return BookmarksFolder.class;
210            }
211    
212            @Override
213            public String getModelClassName() {
214                    return BookmarksFolder.class.getName();
215            }
216    
217            @Override
218            public Map<String, Object> getModelAttributes() {
219                    Map<String, Object> attributes = new HashMap<String, Object>();
220    
221                    attributes.put("uuid", getUuid());
222                    attributes.put("folderId", getFolderId());
223                    attributes.put("groupId", getGroupId());
224                    attributes.put("companyId", getCompanyId());
225                    attributes.put("userId", getUserId());
226                    attributes.put("userName", getUserName());
227                    attributes.put("createDate", getCreateDate());
228                    attributes.put("modifiedDate", getModifiedDate());
229                    attributes.put("resourceBlockId", getResourceBlockId());
230                    attributes.put("parentFolderId", getParentFolderId());
231                    attributes.put("treePath", getTreePath());
232                    attributes.put("name", getName());
233                    attributes.put("description", getDescription());
234                    attributes.put("status", getStatus());
235                    attributes.put("statusByUserId", getStatusByUserId());
236                    attributes.put("statusByUserName", getStatusByUserName());
237                    attributes.put("statusDate", getStatusDate());
238    
239                    attributes.put("entityCacheEnabled", isEntityCacheEnabled());
240                    attributes.put("finderCacheEnabled", isFinderCacheEnabled());
241    
242                    return attributes;
243            }
244    
245            @Override
246            public void setModelAttributes(Map<String, Object> attributes) {
247                    String uuid = (String)attributes.get("uuid");
248    
249                    if (uuid != null) {
250                            setUuid(uuid);
251                    }
252    
253                    Long folderId = (Long)attributes.get("folderId");
254    
255                    if (folderId != null) {
256                            setFolderId(folderId);
257                    }
258    
259                    Long groupId = (Long)attributes.get("groupId");
260    
261                    if (groupId != null) {
262                            setGroupId(groupId);
263                    }
264    
265                    Long companyId = (Long)attributes.get("companyId");
266    
267                    if (companyId != null) {
268                            setCompanyId(companyId);
269                    }
270    
271                    Long userId = (Long)attributes.get("userId");
272    
273                    if (userId != null) {
274                            setUserId(userId);
275                    }
276    
277                    String userName = (String)attributes.get("userName");
278    
279                    if (userName != null) {
280                            setUserName(userName);
281                    }
282    
283                    Date createDate = (Date)attributes.get("createDate");
284    
285                    if (createDate != null) {
286                            setCreateDate(createDate);
287                    }
288    
289                    Date modifiedDate = (Date)attributes.get("modifiedDate");
290    
291                    if (modifiedDate != null) {
292                            setModifiedDate(modifiedDate);
293                    }
294    
295                    Long resourceBlockId = (Long)attributes.get("resourceBlockId");
296    
297                    if (resourceBlockId != null) {
298                            setResourceBlockId(resourceBlockId);
299                    }
300    
301                    Long parentFolderId = (Long)attributes.get("parentFolderId");
302    
303                    if (parentFolderId != null) {
304                            setParentFolderId(parentFolderId);
305                    }
306    
307                    String treePath = (String)attributes.get("treePath");
308    
309                    if (treePath != null) {
310                            setTreePath(treePath);
311                    }
312    
313                    String name = (String)attributes.get("name");
314    
315                    if (name != null) {
316                            setName(name);
317                    }
318    
319                    String description = (String)attributes.get("description");
320    
321                    if (description != null) {
322                            setDescription(description);
323                    }
324    
325                    Integer status = (Integer)attributes.get("status");
326    
327                    if (status != null) {
328                            setStatus(status);
329                    }
330    
331                    Long statusByUserId = (Long)attributes.get("statusByUserId");
332    
333                    if (statusByUserId != null) {
334                            setStatusByUserId(statusByUserId);
335                    }
336    
337                    String statusByUserName = (String)attributes.get("statusByUserName");
338    
339                    if (statusByUserName != null) {
340                            setStatusByUserName(statusByUserName);
341                    }
342    
343                    Date statusDate = (Date)attributes.get("statusDate");
344    
345                    if (statusDate != null) {
346                            setStatusDate(statusDate);
347                    }
348            }
349    
350            @JSON
351            @Override
352            public String getUuid() {
353                    if (_uuid == null) {
354                            return StringPool.BLANK;
355                    }
356                    else {
357                            return _uuid;
358                    }
359            }
360    
361            @Override
362            public void setUuid(String uuid) {
363                    if (_originalUuid == null) {
364                            _originalUuid = _uuid;
365                    }
366    
367                    _uuid = uuid;
368            }
369    
370            public String getOriginalUuid() {
371                    return GetterUtil.getString(_originalUuid);
372            }
373    
374            @JSON
375            @Override
376            public long getFolderId() {
377                    return _folderId;
378            }
379    
380            @Override
381            public void setFolderId(long folderId) {
382                    _columnBitmask |= FOLDERID_COLUMN_BITMASK;
383    
384                    if (!_setOriginalFolderId) {
385                            _setOriginalFolderId = true;
386    
387                            _originalFolderId = _folderId;
388                    }
389    
390                    _folderId = folderId;
391            }
392    
393            public long getOriginalFolderId() {
394                    return _originalFolderId;
395            }
396    
397            @JSON
398            @Override
399            public long getGroupId() {
400                    return _groupId;
401            }
402    
403            @Override
404            public void setGroupId(long groupId) {
405                    _columnBitmask |= GROUPID_COLUMN_BITMASK;
406    
407                    if (!_setOriginalGroupId) {
408                            _setOriginalGroupId = true;
409    
410                            _originalGroupId = _groupId;
411                    }
412    
413                    _groupId = groupId;
414            }
415    
416            public long getOriginalGroupId() {
417                    return _originalGroupId;
418            }
419    
420            @JSON
421            @Override
422            public long getCompanyId() {
423                    return _companyId;
424            }
425    
426            @Override
427            public void setCompanyId(long companyId) {
428                    _columnBitmask |= COMPANYID_COLUMN_BITMASK;
429    
430                    if (!_setOriginalCompanyId) {
431                            _setOriginalCompanyId = true;
432    
433                            _originalCompanyId = _companyId;
434                    }
435    
436                    _companyId = companyId;
437            }
438    
439            public long getOriginalCompanyId() {
440                    return _originalCompanyId;
441            }
442    
443            @JSON
444            @Override
445            public long getUserId() {
446                    return _userId;
447            }
448    
449            @Override
450            public void setUserId(long userId) {
451                    _userId = userId;
452            }
453    
454            @Override
455            public String getUserUuid() {
456                    try {
457                            User user = UserLocalServiceUtil.getUserById(getUserId());
458    
459                            return user.getUuid();
460                    }
461                    catch (PortalException pe) {
462                            return StringPool.BLANK;
463                    }
464            }
465    
466            @Override
467            public void setUserUuid(String userUuid) {
468            }
469    
470            @JSON
471            @Override
472            public String getUserName() {
473                    if (_userName == null) {
474                            return StringPool.BLANK;
475                    }
476                    else {
477                            return _userName;
478                    }
479            }
480    
481            @Override
482            public void setUserName(String userName) {
483                    _userName = userName;
484            }
485    
486            @JSON
487            @Override
488            public Date getCreateDate() {
489                    return _createDate;
490            }
491    
492            @Override
493            public void setCreateDate(Date createDate) {
494                    _createDate = createDate;
495            }
496    
497            @JSON
498            @Override
499            public Date getModifiedDate() {
500                    return _modifiedDate;
501            }
502    
503            @Override
504            public void setModifiedDate(Date modifiedDate) {
505                    _modifiedDate = modifiedDate;
506            }
507    
508            @JSON
509            @Override
510            public long getResourceBlockId() {
511                    return _resourceBlockId;
512            }
513    
514            @Override
515            public void setResourceBlockId(long resourceBlockId) {
516                    _columnBitmask |= RESOURCEBLOCKID_COLUMN_BITMASK;
517    
518                    if (!_setOriginalResourceBlockId) {
519                            _setOriginalResourceBlockId = true;
520    
521                            _originalResourceBlockId = _resourceBlockId;
522                    }
523    
524                    _resourceBlockId = resourceBlockId;
525            }
526    
527            public long getOriginalResourceBlockId() {
528                    return _originalResourceBlockId;
529            }
530    
531            @JSON
532            @Override
533            public long getParentFolderId() {
534                    return _parentFolderId;
535            }
536    
537            @Override
538            public void setParentFolderId(long parentFolderId) {
539                    _columnBitmask = -1L;
540    
541                    if (!_setOriginalParentFolderId) {
542                            _setOriginalParentFolderId = true;
543    
544                            _originalParentFolderId = _parentFolderId;
545                    }
546    
547                    _parentFolderId = parentFolderId;
548            }
549    
550            public long getOriginalParentFolderId() {
551                    return _originalParentFolderId;
552            }
553    
554            @JSON
555            @Override
556            public String getTreePath() {
557                    if (_treePath == null) {
558                            return StringPool.BLANK;
559                    }
560                    else {
561                            return _treePath;
562                    }
563            }
564    
565            @Override
566            public void setTreePath(String treePath) {
567                    _treePath = treePath;
568            }
569    
570            @JSON
571            @Override
572            public String getName() {
573                    if (_name == null) {
574                            return StringPool.BLANK;
575                    }
576                    else {
577                            return _name;
578                    }
579            }
580    
581            @Override
582            public void setName(String name) {
583                    _columnBitmask = -1L;
584    
585                    _name = name;
586            }
587    
588            @JSON
589            @Override
590            public String getDescription() {
591                    if (_description == null) {
592                            return StringPool.BLANK;
593                    }
594                    else {
595                            return _description;
596                    }
597            }
598    
599            @Override
600            public void setDescription(String description) {
601                    _description = description;
602            }
603    
604            @JSON
605            @Override
606            public int getStatus() {
607                    return _status;
608            }
609    
610            @Override
611            public void setStatus(int status) {
612                    _columnBitmask |= STATUS_COLUMN_BITMASK;
613    
614                    if (!_setOriginalStatus) {
615                            _setOriginalStatus = true;
616    
617                            _originalStatus = _status;
618                    }
619    
620                    _status = status;
621            }
622    
623            public int getOriginalStatus() {
624                    return _originalStatus;
625            }
626    
627            @JSON
628            @Override
629            public long getStatusByUserId() {
630                    return _statusByUserId;
631            }
632    
633            @Override
634            public void setStatusByUserId(long statusByUserId) {
635                    _statusByUserId = statusByUserId;
636            }
637    
638            @Override
639            public String getStatusByUserUuid() {
640                    try {
641                            User user = UserLocalServiceUtil.getUserById(getStatusByUserId());
642    
643                            return user.getUuid();
644                    }
645                    catch (PortalException pe) {
646                            return StringPool.BLANK;
647                    }
648            }
649    
650            @Override
651            public void setStatusByUserUuid(String statusByUserUuid) {
652            }
653    
654            @JSON
655            @Override
656            public String getStatusByUserName() {
657                    if (_statusByUserName == null) {
658                            return StringPool.BLANK;
659                    }
660                    else {
661                            return _statusByUserName;
662                    }
663            }
664    
665            @Override
666            public void setStatusByUserName(String statusByUserName) {
667                    _statusByUserName = statusByUserName;
668            }
669    
670            @JSON
671            @Override
672            public Date getStatusDate() {
673                    return _statusDate;
674            }
675    
676            @Override
677            public void setStatusDate(Date statusDate) {
678                    _statusDate = statusDate;
679            }
680    
681            @Override
682            public long getContainerModelId() {
683                    return getFolderId();
684            }
685    
686            @Override
687            public void setContainerModelId(long containerModelId) {
688                    _folderId = containerModelId;
689            }
690    
691            @Override
692            public long getParentContainerModelId() {
693                    return getParentFolderId();
694            }
695    
696            @Override
697            public void setParentContainerModelId(long parentContainerModelId) {
698                    _parentFolderId = parentContainerModelId;
699            }
700    
701            @Override
702            public String getContainerModelName() {
703                    return String.valueOf(getName());
704            }
705    
706            @Override
707            public StagedModelType getStagedModelType() {
708                    return new StagedModelType(PortalUtil.getClassNameId(
709                                    BookmarksFolder.class.getName()));
710            }
711    
712            @Override
713            public TrashEntry getTrashEntry() throws PortalException {
714                    if (!isInTrash()) {
715                            return null;
716                    }
717    
718                    TrashEntry trashEntry = TrashEntryLocalServiceUtil.fetchEntry(getModelClassName(),
719                                    getTrashEntryClassPK());
720    
721                    if (trashEntry != null) {
722                            return trashEntry;
723                    }
724    
725                    TrashHandler trashHandler = getTrashHandler();
726    
727                    if (!Validator.isNull(trashHandler.getContainerModelClassName(
728                                                    getPrimaryKey()))) {
729                            ContainerModel containerModel = null;
730    
731                            try {
732                                    containerModel = trashHandler.getParentContainerModel(this);
733                            }
734                            catch (NoSuchModelException nsme) {
735                                    return null;
736                            }
737    
738                            while (containerModel != null) {
739                                    if (containerModel instanceof TrashedModel) {
740                                            TrashedModel trashedModel = (TrashedModel)containerModel;
741    
742                                            return trashedModel.getTrashEntry();
743                                    }
744    
745                                    trashHandler = TrashHandlerRegistryUtil.getTrashHandler(trashHandler.getContainerModelClassName(
746                                                            containerModel.getContainerModelId()));
747    
748                                    if (trashHandler == null) {
749                                            return null;
750                                    }
751    
752                                    containerModel = trashHandler.getContainerModel(containerModel.getParentContainerModelId());
753                            }
754                    }
755    
756                    return null;
757            }
758    
759            @Override
760            public long getTrashEntryClassPK() {
761                    return getPrimaryKey();
762            }
763    
764            @Override
765            public TrashHandler getTrashHandler() {
766                    return TrashHandlerRegistryUtil.getTrashHandler(getModelClassName());
767            }
768    
769            @Override
770            public boolean isInTrash() {
771                    if (getStatus() == WorkflowConstants.STATUS_IN_TRASH) {
772                            return true;
773                    }
774                    else {
775                            return false;
776                    }
777            }
778    
779            @Override
780            public boolean isInTrashContainer() {
781                    TrashHandler trashHandler = getTrashHandler();
782    
783                    if ((trashHandler == null) ||
784                                    Validator.isNull(trashHandler.getContainerModelClassName(
785                                                    getPrimaryKey()))) {
786                            return false;
787                    }
788    
789                    try {
790                            ContainerModel containerModel = trashHandler.getParentContainerModel(this);
791    
792                            if (containerModel == null) {
793                                    return false;
794                            }
795    
796                            if (containerModel instanceof TrashedModel) {
797                                    return ((TrashedModel)containerModel).isInTrash();
798                            }
799                    }
800                    catch (Exception e) {
801                    }
802    
803                    return false;
804            }
805    
806            @Override
807            public boolean isInTrashExplicitly() {
808                    if (!isInTrash()) {
809                            return false;
810                    }
811    
812                    TrashEntry trashEntry = TrashEntryLocalServiceUtil.fetchEntry(getModelClassName(),
813                                    getTrashEntryClassPK());
814    
815                    if (trashEntry != null) {
816                            return true;
817                    }
818    
819                    return false;
820            }
821    
822            @Override
823            public boolean isInTrashImplicitly() {
824                    if (!isInTrash()) {
825                            return false;
826                    }
827    
828                    TrashEntry trashEntry = TrashEntryLocalServiceUtil.fetchEntry(getModelClassName(),
829                                    getTrashEntryClassPK());
830    
831                    if (trashEntry != null) {
832                            return false;
833                    }
834    
835                    return true;
836            }
837    
838            /**
839             * @deprecated As of 6.1.0, replaced by {@link #isApproved}
840             */
841            @Deprecated
842            @Override
843            public boolean getApproved() {
844                    return isApproved();
845            }
846    
847            @Override
848            public boolean isApproved() {
849                    if (getStatus() == WorkflowConstants.STATUS_APPROVED) {
850                            return true;
851                    }
852                    else {
853                            return false;
854                    }
855            }
856    
857            @Override
858            public boolean isDenied() {
859                    if (getStatus() == WorkflowConstants.STATUS_DENIED) {
860                            return true;
861                    }
862                    else {
863                            return false;
864                    }
865            }
866    
867            @Override
868            public boolean isDraft() {
869                    if (getStatus() == WorkflowConstants.STATUS_DRAFT) {
870                            return true;
871                    }
872                    else {
873                            return false;
874                    }
875            }
876    
877            @Override
878            public boolean isExpired() {
879                    if (getStatus() == WorkflowConstants.STATUS_EXPIRED) {
880                            return true;
881                    }
882                    else {
883                            return false;
884                    }
885            }
886    
887            @Override
888            public boolean isInactive() {
889                    if (getStatus() == WorkflowConstants.STATUS_INACTIVE) {
890                            return true;
891                    }
892                    else {
893                            return false;
894                    }
895            }
896    
897            @Override
898            public boolean isIncomplete() {
899                    if (getStatus() == WorkflowConstants.STATUS_INCOMPLETE) {
900                            return true;
901                    }
902                    else {
903                            return false;
904                    }
905            }
906    
907            @Override
908            public boolean isPending() {
909                    if (getStatus() == WorkflowConstants.STATUS_PENDING) {
910                            return true;
911                    }
912                    else {
913                            return false;
914                    }
915            }
916    
917            @Override
918            public boolean isScheduled() {
919                    if (getStatus() == WorkflowConstants.STATUS_SCHEDULED) {
920                            return true;
921                    }
922                    else {
923                            return false;
924                    }
925            }
926    
927            public long getColumnBitmask() {
928                    return _columnBitmask;
929            }
930    
931            @Override
932            public ExpandoBridge getExpandoBridge() {
933                    return ExpandoBridgeFactoryUtil.getExpandoBridge(getCompanyId(),
934                            BookmarksFolder.class.getName(), getPrimaryKey());
935            }
936    
937            @Override
938            public void setExpandoBridgeAttributes(ServiceContext serviceContext) {
939                    ExpandoBridge expandoBridge = getExpandoBridge();
940    
941                    expandoBridge.setAttributes(serviceContext);
942            }
943    
944            @Override
945            public BookmarksFolder toEscapedModel() {
946                    if (_escapedModel == null) {
947                            _escapedModel = (BookmarksFolder)ProxyUtil.newProxyInstance(_classLoader,
948                                            _escapedModelInterfaces, new AutoEscapeBeanHandler(this));
949                    }
950    
951                    return _escapedModel;
952            }
953    
954            @Override
955            public Object clone() {
956                    BookmarksFolderImpl bookmarksFolderImpl = new BookmarksFolderImpl();
957    
958                    bookmarksFolderImpl.setUuid(getUuid());
959                    bookmarksFolderImpl.setFolderId(getFolderId());
960                    bookmarksFolderImpl.setGroupId(getGroupId());
961                    bookmarksFolderImpl.setCompanyId(getCompanyId());
962                    bookmarksFolderImpl.setUserId(getUserId());
963                    bookmarksFolderImpl.setUserName(getUserName());
964                    bookmarksFolderImpl.setCreateDate(getCreateDate());
965                    bookmarksFolderImpl.setModifiedDate(getModifiedDate());
966                    bookmarksFolderImpl.setResourceBlockId(getResourceBlockId());
967                    bookmarksFolderImpl.setParentFolderId(getParentFolderId());
968                    bookmarksFolderImpl.setTreePath(getTreePath());
969                    bookmarksFolderImpl.setName(getName());
970                    bookmarksFolderImpl.setDescription(getDescription());
971                    bookmarksFolderImpl.setStatus(getStatus());
972                    bookmarksFolderImpl.setStatusByUserId(getStatusByUserId());
973                    bookmarksFolderImpl.setStatusByUserName(getStatusByUserName());
974                    bookmarksFolderImpl.setStatusDate(getStatusDate());
975    
976                    bookmarksFolderImpl.resetOriginalValues();
977    
978                    return bookmarksFolderImpl;
979            }
980    
981            @Override
982            public int compareTo(BookmarksFolder bookmarksFolder) {
983                    int value = 0;
984    
985                    if (getParentFolderId() < bookmarksFolder.getParentFolderId()) {
986                            value = -1;
987                    }
988                    else if (getParentFolderId() > bookmarksFolder.getParentFolderId()) {
989                            value = 1;
990                    }
991                    else {
992                            value = 0;
993                    }
994    
995                    if (value != 0) {
996                            return value;
997                    }
998    
999                    value = getName().compareToIgnoreCase(bookmarksFolder.getName());
1000    
1001                    if (value != 0) {
1002                            return value;
1003                    }
1004    
1005                    return 0;
1006            }
1007    
1008            @Override
1009            public boolean equals(Object obj) {
1010                    if (this == obj) {
1011                            return true;
1012                    }
1013    
1014                    if (!(obj instanceof BookmarksFolder)) {
1015                            return false;
1016                    }
1017    
1018                    BookmarksFolder bookmarksFolder = (BookmarksFolder)obj;
1019    
1020                    long primaryKey = bookmarksFolder.getPrimaryKey();
1021    
1022                    if (getPrimaryKey() == primaryKey) {
1023                            return true;
1024                    }
1025                    else {
1026                            return false;
1027                    }
1028            }
1029    
1030            @Override
1031            public int hashCode() {
1032                    return (int)getPrimaryKey();
1033            }
1034    
1035            @Override
1036            public boolean isEntityCacheEnabled() {
1037                    return ENTITY_CACHE_ENABLED;
1038            }
1039    
1040            @Override
1041            public boolean isFinderCacheEnabled() {
1042                    return FINDER_CACHE_ENABLED;
1043            }
1044    
1045            @Override
1046            public void resetOriginalValues() {
1047                    BookmarksFolderModelImpl bookmarksFolderModelImpl = this;
1048    
1049                    bookmarksFolderModelImpl._originalUuid = bookmarksFolderModelImpl._uuid;
1050    
1051                    bookmarksFolderModelImpl._originalFolderId = bookmarksFolderModelImpl._folderId;
1052    
1053                    bookmarksFolderModelImpl._setOriginalFolderId = false;
1054    
1055                    bookmarksFolderModelImpl._originalGroupId = bookmarksFolderModelImpl._groupId;
1056    
1057                    bookmarksFolderModelImpl._setOriginalGroupId = false;
1058    
1059                    bookmarksFolderModelImpl._originalCompanyId = bookmarksFolderModelImpl._companyId;
1060    
1061                    bookmarksFolderModelImpl._setOriginalCompanyId = false;
1062    
1063                    bookmarksFolderModelImpl._originalResourceBlockId = bookmarksFolderModelImpl._resourceBlockId;
1064    
1065                    bookmarksFolderModelImpl._setOriginalResourceBlockId = false;
1066    
1067                    bookmarksFolderModelImpl._originalParentFolderId = bookmarksFolderModelImpl._parentFolderId;
1068    
1069                    bookmarksFolderModelImpl._setOriginalParentFolderId = false;
1070    
1071                    bookmarksFolderModelImpl._originalStatus = bookmarksFolderModelImpl._status;
1072    
1073                    bookmarksFolderModelImpl._setOriginalStatus = false;
1074    
1075                    bookmarksFolderModelImpl._columnBitmask = 0;
1076            }
1077    
1078            @Override
1079            public CacheModel<BookmarksFolder> toCacheModel() {
1080                    BookmarksFolderCacheModel bookmarksFolderCacheModel = new BookmarksFolderCacheModel();
1081    
1082                    bookmarksFolderCacheModel.uuid = getUuid();
1083    
1084                    String uuid = bookmarksFolderCacheModel.uuid;
1085    
1086                    if ((uuid != null) && (uuid.length() == 0)) {
1087                            bookmarksFolderCacheModel.uuid = null;
1088                    }
1089    
1090                    bookmarksFolderCacheModel.folderId = getFolderId();
1091    
1092                    bookmarksFolderCacheModel.groupId = getGroupId();
1093    
1094                    bookmarksFolderCacheModel.companyId = getCompanyId();
1095    
1096                    bookmarksFolderCacheModel.userId = getUserId();
1097    
1098                    bookmarksFolderCacheModel.userName = getUserName();
1099    
1100                    String userName = bookmarksFolderCacheModel.userName;
1101    
1102                    if ((userName != null) && (userName.length() == 0)) {
1103                            bookmarksFolderCacheModel.userName = null;
1104                    }
1105    
1106                    Date createDate = getCreateDate();
1107    
1108                    if (createDate != null) {
1109                            bookmarksFolderCacheModel.createDate = createDate.getTime();
1110                    }
1111                    else {
1112                            bookmarksFolderCacheModel.createDate = Long.MIN_VALUE;
1113                    }
1114    
1115                    Date modifiedDate = getModifiedDate();
1116    
1117                    if (modifiedDate != null) {
1118                            bookmarksFolderCacheModel.modifiedDate = modifiedDate.getTime();
1119                    }
1120                    else {
1121                            bookmarksFolderCacheModel.modifiedDate = Long.MIN_VALUE;
1122                    }
1123    
1124                    bookmarksFolderCacheModel.resourceBlockId = getResourceBlockId();
1125    
1126                    bookmarksFolderCacheModel.parentFolderId = getParentFolderId();
1127    
1128                    bookmarksFolderCacheModel.treePath = getTreePath();
1129    
1130                    String treePath = bookmarksFolderCacheModel.treePath;
1131    
1132                    if ((treePath != null) && (treePath.length() == 0)) {
1133                            bookmarksFolderCacheModel.treePath = null;
1134                    }
1135    
1136                    bookmarksFolderCacheModel.name = getName();
1137    
1138                    String name = bookmarksFolderCacheModel.name;
1139    
1140                    if ((name != null) && (name.length() == 0)) {
1141                            bookmarksFolderCacheModel.name = null;
1142                    }
1143    
1144                    bookmarksFolderCacheModel.description = getDescription();
1145    
1146                    String description = bookmarksFolderCacheModel.description;
1147    
1148                    if ((description != null) && (description.length() == 0)) {
1149                            bookmarksFolderCacheModel.description = null;
1150                    }
1151    
1152                    bookmarksFolderCacheModel.status = getStatus();
1153    
1154                    bookmarksFolderCacheModel.statusByUserId = getStatusByUserId();
1155    
1156                    bookmarksFolderCacheModel.statusByUserName = getStatusByUserName();
1157    
1158                    String statusByUserName = bookmarksFolderCacheModel.statusByUserName;
1159    
1160                    if ((statusByUserName != null) && (statusByUserName.length() == 0)) {
1161                            bookmarksFolderCacheModel.statusByUserName = null;
1162                    }
1163    
1164                    Date statusDate = getStatusDate();
1165    
1166                    if (statusDate != null) {
1167                            bookmarksFolderCacheModel.statusDate = statusDate.getTime();
1168                    }
1169                    else {
1170                            bookmarksFolderCacheModel.statusDate = Long.MIN_VALUE;
1171                    }
1172    
1173                    return bookmarksFolderCacheModel;
1174            }
1175    
1176            @Override
1177            public String toString() {
1178                    StringBundler sb = new StringBundler(35);
1179    
1180                    sb.append("{uuid=");
1181                    sb.append(getUuid());
1182                    sb.append(", folderId=");
1183                    sb.append(getFolderId());
1184                    sb.append(", groupId=");
1185                    sb.append(getGroupId());
1186                    sb.append(", companyId=");
1187                    sb.append(getCompanyId());
1188                    sb.append(", userId=");
1189                    sb.append(getUserId());
1190                    sb.append(", userName=");
1191                    sb.append(getUserName());
1192                    sb.append(", createDate=");
1193                    sb.append(getCreateDate());
1194                    sb.append(", modifiedDate=");
1195                    sb.append(getModifiedDate());
1196                    sb.append(", resourceBlockId=");
1197                    sb.append(getResourceBlockId());
1198                    sb.append(", parentFolderId=");
1199                    sb.append(getParentFolderId());
1200                    sb.append(", treePath=");
1201                    sb.append(getTreePath());
1202                    sb.append(", name=");
1203                    sb.append(getName());
1204                    sb.append(", description=");
1205                    sb.append(getDescription());
1206                    sb.append(", status=");
1207                    sb.append(getStatus());
1208                    sb.append(", statusByUserId=");
1209                    sb.append(getStatusByUserId());
1210                    sb.append(", statusByUserName=");
1211                    sb.append(getStatusByUserName());
1212                    sb.append(", statusDate=");
1213                    sb.append(getStatusDate());
1214                    sb.append("}");
1215    
1216                    return sb.toString();
1217            }
1218    
1219            @Override
1220            public String toXmlString() {
1221                    StringBundler sb = new StringBundler(55);
1222    
1223                    sb.append("<model><model-name>");
1224                    sb.append("com.liferay.portlet.bookmarks.model.BookmarksFolder");
1225                    sb.append("</model-name>");
1226    
1227                    sb.append(
1228                            "<column><column-name>uuid</column-name><column-value><![CDATA[");
1229                    sb.append(getUuid());
1230                    sb.append("]]></column-value></column>");
1231                    sb.append(
1232                            "<column><column-name>folderId</column-name><column-value><![CDATA[");
1233                    sb.append(getFolderId());
1234                    sb.append("]]></column-value></column>");
1235                    sb.append(
1236                            "<column><column-name>groupId</column-name><column-value><![CDATA[");
1237                    sb.append(getGroupId());
1238                    sb.append("]]></column-value></column>");
1239                    sb.append(
1240                            "<column><column-name>companyId</column-name><column-value><![CDATA[");
1241                    sb.append(getCompanyId());
1242                    sb.append("]]></column-value></column>");
1243                    sb.append(
1244                            "<column><column-name>userId</column-name><column-value><![CDATA[");
1245                    sb.append(getUserId());
1246                    sb.append("]]></column-value></column>");
1247                    sb.append(
1248                            "<column><column-name>userName</column-name><column-value><![CDATA[");
1249                    sb.append(getUserName());
1250                    sb.append("]]></column-value></column>");
1251                    sb.append(
1252                            "<column><column-name>createDate</column-name><column-value><![CDATA[");
1253                    sb.append(getCreateDate());
1254                    sb.append("]]></column-value></column>");
1255                    sb.append(
1256                            "<column><column-name>modifiedDate</column-name><column-value><![CDATA[");
1257                    sb.append(getModifiedDate());
1258                    sb.append("]]></column-value></column>");
1259                    sb.append(
1260                            "<column><column-name>resourceBlockId</column-name><column-value><![CDATA[");
1261                    sb.append(getResourceBlockId());
1262                    sb.append("]]></column-value></column>");
1263                    sb.append(
1264                            "<column><column-name>parentFolderId</column-name><column-value><![CDATA[");
1265                    sb.append(getParentFolderId());
1266                    sb.append("]]></column-value></column>");
1267                    sb.append(
1268                            "<column><column-name>treePath</column-name><column-value><![CDATA[");
1269                    sb.append(getTreePath());
1270                    sb.append("]]></column-value></column>");
1271                    sb.append(
1272                            "<column><column-name>name</column-name><column-value><![CDATA[");
1273                    sb.append(getName());
1274                    sb.append("]]></column-value></column>");
1275                    sb.append(
1276                            "<column><column-name>description</column-name><column-value><![CDATA[");
1277                    sb.append(getDescription());
1278                    sb.append("]]></column-value></column>");
1279                    sb.append(
1280                            "<column><column-name>status</column-name><column-value><![CDATA[");
1281                    sb.append(getStatus());
1282                    sb.append("]]></column-value></column>");
1283                    sb.append(
1284                            "<column><column-name>statusByUserId</column-name><column-value><![CDATA[");
1285                    sb.append(getStatusByUserId());
1286                    sb.append("]]></column-value></column>");
1287                    sb.append(
1288                            "<column><column-name>statusByUserName</column-name><column-value><![CDATA[");
1289                    sb.append(getStatusByUserName());
1290                    sb.append("]]></column-value></column>");
1291                    sb.append(
1292                            "<column><column-name>statusDate</column-name><column-value><![CDATA[");
1293                    sb.append(getStatusDate());
1294                    sb.append("]]></column-value></column>");
1295    
1296                    sb.append("</model>");
1297    
1298                    return sb.toString();
1299            }
1300    
1301            private static final ClassLoader _classLoader = BookmarksFolder.class.getClassLoader();
1302            private static final Class<?>[] _escapedModelInterfaces = new Class[] {
1303                            BookmarksFolder.class
1304                    };
1305            private String _uuid;
1306            private String _originalUuid;
1307            private long _folderId;
1308            private long _originalFolderId;
1309            private boolean _setOriginalFolderId;
1310            private long _groupId;
1311            private long _originalGroupId;
1312            private boolean _setOriginalGroupId;
1313            private long _companyId;
1314            private long _originalCompanyId;
1315            private boolean _setOriginalCompanyId;
1316            private long _userId;
1317            private String _userName;
1318            private Date _createDate;
1319            private Date _modifiedDate;
1320            private long _resourceBlockId;
1321            private long _originalResourceBlockId;
1322            private boolean _setOriginalResourceBlockId;
1323            private long _parentFolderId;
1324            private long _originalParentFolderId;
1325            private boolean _setOriginalParentFolderId;
1326            private String _treePath;
1327            private String _name;
1328            private String _description;
1329            private int _status;
1330            private int _originalStatus;
1331            private boolean _setOriginalStatus;
1332            private long _statusByUserId;
1333            private String _statusByUserName;
1334            private Date _statusDate;
1335            private long _columnBitmask;
1336            private BookmarksFolder _escapedModel;
1337    }