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