001    /**
002     * Copyright (c) 2000-2012 Liferay, Inc. All rights reserved.
003     *
004     * This library is free software; you can redistribute it and/or modify it under
005     * the terms of the GNU Lesser General Public License as published by the Free
006     * Software Foundation; either version 2.1 of the License, or (at your option)
007     * any later version.
008     *
009     * This library is distributed in the hope that it will be useful, but WITHOUT
010     * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
011     * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
012     * details.
013     */
014    
015    package com.liferay.portal.model.impl;
016    
017    import com.liferay.portal.kernel.bean.AutoEscapeBeanHandler;
018    import com.liferay.portal.kernel.exception.SystemException;
019    import com.liferay.portal.kernel.util.DateUtil;
020    import com.liferay.portal.kernel.util.GetterUtil;
021    import com.liferay.portal.kernel.util.ProxyUtil;
022    import com.liferay.portal.kernel.util.StringBundler;
023    import com.liferay.portal.kernel.util.StringPool;
024    import com.liferay.portal.kernel.util.Validator;
025    import com.liferay.portal.model.CacheModel;
026    import com.liferay.portal.model.WorkflowInstanceLink;
027    import com.liferay.portal.model.WorkflowInstanceLinkModel;
028    import com.liferay.portal.service.ServiceContext;
029    import com.liferay.portal.util.PortalUtil;
030    
031    import com.liferay.portlet.expando.model.ExpandoBridge;
032    import com.liferay.portlet.expando.util.ExpandoBridgeFactoryUtil;
033    
034    import java.io.Serializable;
035    
036    import java.sql.Types;
037    
038    import java.util.Date;
039    import java.util.HashMap;
040    import java.util.Map;
041    
042    /**
043     * The base model implementation for the WorkflowInstanceLink service. Represents a row in the "WorkflowInstanceLink" database table, with each column mapped to a property of this class.
044     *
045     * <p>
046     * This implementation and its corresponding interface {@link com.liferay.portal.model.WorkflowInstanceLinkModel} exist only as a container for the default property accessors generated by ServiceBuilder. Helper methods and all application logic should be put in {@link WorkflowInstanceLinkImpl}.
047     * </p>
048     *
049     * @author Brian Wing Shun Chan
050     * @see WorkflowInstanceLinkImpl
051     * @see com.liferay.portal.model.WorkflowInstanceLink
052     * @see com.liferay.portal.model.WorkflowInstanceLinkModel
053     * @generated
054     */
055    public class WorkflowInstanceLinkModelImpl extends BaseModelImpl<WorkflowInstanceLink>
056            implements WorkflowInstanceLinkModel {
057            /*
058             * NOTE FOR DEVELOPERS:
059             *
060             * Never modify or reference this class directly. All methods that expect a workflow instance link model instance should use the {@link com.liferay.portal.model.WorkflowInstanceLink} interface instead.
061             */
062            public static final String TABLE_NAME = "WorkflowInstanceLink";
063            public static final Object[][] TABLE_COLUMNS = {
064                            { "workflowInstanceLinkId", Types.BIGINT },
065                            { "groupId", Types.BIGINT },
066                            { "companyId", Types.BIGINT },
067                            { "userId", Types.BIGINT },
068                            { "userName", Types.VARCHAR },
069                            { "createDate", Types.TIMESTAMP },
070                            { "modifiedDate", Types.TIMESTAMP },
071                            { "classNameId", Types.BIGINT },
072                            { "classPK", Types.BIGINT },
073                            { "workflowInstanceId", Types.BIGINT }
074                    };
075            public static final String TABLE_SQL_CREATE = "create table WorkflowInstanceLink (workflowInstanceLinkId LONG not null primary key,groupId LONG,companyId LONG,userId LONG,userName VARCHAR(75) null,createDate DATE null,modifiedDate DATE null,classNameId LONG,classPK LONG,workflowInstanceId LONG)";
076            public static final String TABLE_SQL_DROP = "drop table WorkflowInstanceLink";
077            public static final String ORDER_BY_JPQL = " ORDER BY workflowInstanceLink.createDate DESC";
078            public static final String ORDER_BY_SQL = " ORDER BY WorkflowInstanceLink.createDate DESC";
079            public static final String DATA_SOURCE = "liferayDataSource";
080            public static final String SESSION_FACTORY = "liferaySessionFactory";
081            public static final String TX_MANAGER = "liferayTransactionManager";
082            public static final boolean ENTITY_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
083                                    "value.object.entity.cache.enabled.com.liferay.portal.model.WorkflowInstanceLink"),
084                            true);
085            public static final boolean FINDER_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
086                                    "value.object.finder.cache.enabled.com.liferay.portal.model.WorkflowInstanceLink"),
087                            true);
088            public static final boolean COLUMN_BITMASK_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
089                                    "value.object.column.bitmask.enabled.com.liferay.portal.model.WorkflowInstanceLink"),
090                            true);
091            public static long CLASSNAMEID_COLUMN_BITMASK = 1L;
092            public static long CLASSPK_COLUMN_BITMASK = 2L;
093            public static long COMPANYID_COLUMN_BITMASK = 4L;
094            public static long GROUPID_COLUMN_BITMASK = 8L;
095            public static long CREATEDATE_COLUMN_BITMASK = 16L;
096            public static final long LOCK_EXPIRATION_TIME = GetterUtil.getLong(com.liferay.portal.util.PropsUtil.get(
097                                    "lock.expiration.time.com.liferay.portal.model.WorkflowInstanceLink"));
098    
099            public WorkflowInstanceLinkModelImpl() {
100            }
101    
102            public long getPrimaryKey() {
103                    return _workflowInstanceLinkId;
104            }
105    
106            public void setPrimaryKey(long primaryKey) {
107                    setWorkflowInstanceLinkId(primaryKey);
108            }
109    
110            public Serializable getPrimaryKeyObj() {
111                    return _workflowInstanceLinkId;
112            }
113    
114            public void setPrimaryKeyObj(Serializable primaryKeyObj) {
115                    setPrimaryKey(((Long)primaryKeyObj).longValue());
116            }
117    
118            public Class<?> getModelClass() {
119                    return WorkflowInstanceLink.class;
120            }
121    
122            public String getModelClassName() {
123                    return WorkflowInstanceLink.class.getName();
124            }
125    
126            @Override
127            public Map<String, Object> getModelAttributes() {
128                    Map<String, Object> attributes = new HashMap<String, Object>();
129    
130                    attributes.put("workflowInstanceLinkId", getWorkflowInstanceLinkId());
131                    attributes.put("groupId", getGroupId());
132                    attributes.put("companyId", getCompanyId());
133                    attributes.put("userId", getUserId());
134                    attributes.put("userName", getUserName());
135                    attributes.put("createDate", getCreateDate());
136                    attributes.put("modifiedDate", getModifiedDate());
137                    attributes.put("classNameId", getClassNameId());
138                    attributes.put("classPK", getClassPK());
139                    attributes.put("workflowInstanceId", getWorkflowInstanceId());
140    
141                    return attributes;
142            }
143    
144            @Override
145            public void setModelAttributes(Map<String, Object> attributes) {
146                    Long workflowInstanceLinkId = (Long)attributes.get(
147                                    "workflowInstanceLinkId");
148    
149                    if (workflowInstanceLinkId != null) {
150                            setWorkflowInstanceLinkId(workflowInstanceLinkId);
151                    }
152    
153                    Long groupId = (Long)attributes.get("groupId");
154    
155                    if (groupId != null) {
156                            setGroupId(groupId);
157                    }
158    
159                    Long companyId = (Long)attributes.get("companyId");
160    
161                    if (companyId != null) {
162                            setCompanyId(companyId);
163                    }
164    
165                    Long userId = (Long)attributes.get("userId");
166    
167                    if (userId != null) {
168                            setUserId(userId);
169                    }
170    
171                    String userName = (String)attributes.get("userName");
172    
173                    if (userName != null) {
174                            setUserName(userName);
175                    }
176    
177                    Date createDate = (Date)attributes.get("createDate");
178    
179                    if (createDate != null) {
180                            setCreateDate(createDate);
181                    }
182    
183                    Date modifiedDate = (Date)attributes.get("modifiedDate");
184    
185                    if (modifiedDate != null) {
186                            setModifiedDate(modifiedDate);
187                    }
188    
189                    Long classNameId = (Long)attributes.get("classNameId");
190    
191                    if (classNameId != null) {
192                            setClassNameId(classNameId);
193                    }
194    
195                    Long classPK = (Long)attributes.get("classPK");
196    
197                    if (classPK != null) {
198                            setClassPK(classPK);
199                    }
200    
201                    Long workflowInstanceId = (Long)attributes.get("workflowInstanceId");
202    
203                    if (workflowInstanceId != null) {
204                            setWorkflowInstanceId(workflowInstanceId);
205                    }
206            }
207    
208            public long getWorkflowInstanceLinkId() {
209                    return _workflowInstanceLinkId;
210            }
211    
212            public void setWorkflowInstanceLinkId(long workflowInstanceLinkId) {
213                    _workflowInstanceLinkId = workflowInstanceLinkId;
214            }
215    
216            public long getGroupId() {
217                    return _groupId;
218            }
219    
220            public void setGroupId(long groupId) {
221                    _columnBitmask |= GROUPID_COLUMN_BITMASK;
222    
223                    if (!_setOriginalGroupId) {
224                            _setOriginalGroupId = true;
225    
226                            _originalGroupId = _groupId;
227                    }
228    
229                    _groupId = groupId;
230            }
231    
232            public long getOriginalGroupId() {
233                    return _originalGroupId;
234            }
235    
236            public long getCompanyId() {
237                    return _companyId;
238            }
239    
240            public void setCompanyId(long companyId) {
241                    _columnBitmask |= COMPANYID_COLUMN_BITMASK;
242    
243                    if (!_setOriginalCompanyId) {
244                            _setOriginalCompanyId = true;
245    
246                            _originalCompanyId = _companyId;
247                    }
248    
249                    _companyId = companyId;
250            }
251    
252            public long getOriginalCompanyId() {
253                    return _originalCompanyId;
254            }
255    
256            public long getUserId() {
257                    return _userId;
258            }
259    
260            public void setUserId(long userId) {
261                    _userId = userId;
262            }
263    
264            public String getUserUuid() throws SystemException {
265                    return PortalUtil.getUserValue(getUserId(), "uuid", _userUuid);
266            }
267    
268            public void setUserUuid(String userUuid) {
269                    _userUuid = userUuid;
270            }
271    
272            public String getUserName() {
273                    if (_userName == null) {
274                            return StringPool.BLANK;
275                    }
276                    else {
277                            return _userName;
278                    }
279            }
280    
281            public void setUserName(String userName) {
282                    _userName = userName;
283            }
284    
285            public Date getCreateDate() {
286                    return _createDate;
287            }
288    
289            public void setCreateDate(Date createDate) {
290                    _columnBitmask = -1L;
291    
292                    _createDate = createDate;
293            }
294    
295            public Date getModifiedDate() {
296                    return _modifiedDate;
297            }
298    
299            public void setModifiedDate(Date modifiedDate) {
300                    _modifiedDate = modifiedDate;
301            }
302    
303            public String getClassName() {
304                    if (getClassNameId() <= 0) {
305                            return StringPool.BLANK;
306                    }
307    
308                    return PortalUtil.getClassName(getClassNameId());
309            }
310    
311            public void setClassName(String className) {
312                    long classNameId = 0;
313    
314                    if (Validator.isNotNull(className)) {
315                            classNameId = PortalUtil.getClassNameId(className);
316                    }
317    
318                    setClassNameId(classNameId);
319            }
320    
321            public long getClassNameId() {
322                    return _classNameId;
323            }
324    
325            public void setClassNameId(long classNameId) {
326                    _columnBitmask |= CLASSNAMEID_COLUMN_BITMASK;
327    
328                    if (!_setOriginalClassNameId) {
329                            _setOriginalClassNameId = true;
330    
331                            _originalClassNameId = _classNameId;
332                    }
333    
334                    _classNameId = classNameId;
335            }
336    
337            public long getOriginalClassNameId() {
338                    return _originalClassNameId;
339            }
340    
341            public long getClassPK() {
342                    return _classPK;
343            }
344    
345            public void setClassPK(long classPK) {
346                    _columnBitmask |= CLASSPK_COLUMN_BITMASK;
347    
348                    if (!_setOriginalClassPK) {
349                            _setOriginalClassPK = true;
350    
351                            _originalClassPK = _classPK;
352                    }
353    
354                    _classPK = classPK;
355            }
356    
357            public long getOriginalClassPK() {
358                    return _originalClassPK;
359            }
360    
361            public long getWorkflowInstanceId() {
362                    return _workflowInstanceId;
363            }
364    
365            public void setWorkflowInstanceId(long workflowInstanceId) {
366                    _workflowInstanceId = workflowInstanceId;
367            }
368    
369            public long getColumnBitmask() {
370                    return _columnBitmask;
371            }
372    
373            @Override
374            public ExpandoBridge getExpandoBridge() {
375                    return ExpandoBridgeFactoryUtil.getExpandoBridge(getCompanyId(),
376                            WorkflowInstanceLink.class.getName(), getPrimaryKey());
377            }
378    
379            @Override
380            public void setExpandoBridgeAttributes(ServiceContext serviceContext) {
381                    ExpandoBridge expandoBridge = getExpandoBridge();
382    
383                    expandoBridge.setAttributes(serviceContext);
384            }
385    
386            @Override
387            public WorkflowInstanceLink toEscapedModel() {
388                    if (_escapedModel == null) {
389                            _escapedModel = (WorkflowInstanceLink)ProxyUtil.newProxyInstance(_classLoader,
390                                            _escapedModelInterfaces, new AutoEscapeBeanHandler(this));
391                    }
392    
393                    return _escapedModel;
394            }
395    
396            @Override
397            public Object clone() {
398                    WorkflowInstanceLinkImpl workflowInstanceLinkImpl = new WorkflowInstanceLinkImpl();
399    
400                    workflowInstanceLinkImpl.setWorkflowInstanceLinkId(getWorkflowInstanceLinkId());
401                    workflowInstanceLinkImpl.setGroupId(getGroupId());
402                    workflowInstanceLinkImpl.setCompanyId(getCompanyId());
403                    workflowInstanceLinkImpl.setUserId(getUserId());
404                    workflowInstanceLinkImpl.setUserName(getUserName());
405                    workflowInstanceLinkImpl.setCreateDate(getCreateDate());
406                    workflowInstanceLinkImpl.setModifiedDate(getModifiedDate());
407                    workflowInstanceLinkImpl.setClassNameId(getClassNameId());
408                    workflowInstanceLinkImpl.setClassPK(getClassPK());
409                    workflowInstanceLinkImpl.setWorkflowInstanceId(getWorkflowInstanceId());
410    
411                    workflowInstanceLinkImpl.resetOriginalValues();
412    
413                    return workflowInstanceLinkImpl;
414            }
415    
416            public int compareTo(WorkflowInstanceLink workflowInstanceLink) {
417                    int value = 0;
418    
419                    value = DateUtil.compareTo(getCreateDate(),
420                                    workflowInstanceLink.getCreateDate());
421    
422                    value = value * -1;
423    
424                    if (value != 0) {
425                            return value;
426                    }
427    
428                    return 0;
429            }
430    
431            @Override
432            public boolean equals(Object obj) {
433                    if (obj == null) {
434                            return false;
435                    }
436    
437                    WorkflowInstanceLink workflowInstanceLink = null;
438    
439                    try {
440                            workflowInstanceLink = (WorkflowInstanceLink)obj;
441                    }
442                    catch (ClassCastException cce) {
443                            return false;
444                    }
445    
446                    long primaryKey = workflowInstanceLink.getPrimaryKey();
447    
448                    if (getPrimaryKey() == primaryKey) {
449                            return true;
450                    }
451                    else {
452                            return false;
453                    }
454            }
455    
456            @Override
457            public int hashCode() {
458                    return (int)getPrimaryKey();
459            }
460    
461            @Override
462            public void resetOriginalValues() {
463                    WorkflowInstanceLinkModelImpl workflowInstanceLinkModelImpl = this;
464    
465                    workflowInstanceLinkModelImpl._originalGroupId = workflowInstanceLinkModelImpl._groupId;
466    
467                    workflowInstanceLinkModelImpl._setOriginalGroupId = false;
468    
469                    workflowInstanceLinkModelImpl._originalCompanyId = workflowInstanceLinkModelImpl._companyId;
470    
471                    workflowInstanceLinkModelImpl._setOriginalCompanyId = false;
472    
473                    workflowInstanceLinkModelImpl._originalClassNameId = workflowInstanceLinkModelImpl._classNameId;
474    
475                    workflowInstanceLinkModelImpl._setOriginalClassNameId = false;
476    
477                    workflowInstanceLinkModelImpl._originalClassPK = workflowInstanceLinkModelImpl._classPK;
478    
479                    workflowInstanceLinkModelImpl._setOriginalClassPK = false;
480    
481                    workflowInstanceLinkModelImpl._columnBitmask = 0;
482            }
483    
484            @Override
485            public CacheModel<WorkflowInstanceLink> toCacheModel() {
486                    WorkflowInstanceLinkCacheModel workflowInstanceLinkCacheModel = new WorkflowInstanceLinkCacheModel();
487    
488                    workflowInstanceLinkCacheModel.workflowInstanceLinkId = getWorkflowInstanceLinkId();
489    
490                    workflowInstanceLinkCacheModel.groupId = getGroupId();
491    
492                    workflowInstanceLinkCacheModel.companyId = getCompanyId();
493    
494                    workflowInstanceLinkCacheModel.userId = getUserId();
495    
496                    workflowInstanceLinkCacheModel.userName = getUserName();
497    
498                    String userName = workflowInstanceLinkCacheModel.userName;
499    
500                    if ((userName != null) && (userName.length() == 0)) {
501                            workflowInstanceLinkCacheModel.userName = null;
502                    }
503    
504                    Date createDate = getCreateDate();
505    
506                    if (createDate != null) {
507                            workflowInstanceLinkCacheModel.createDate = createDate.getTime();
508                    }
509                    else {
510                            workflowInstanceLinkCacheModel.createDate = Long.MIN_VALUE;
511                    }
512    
513                    Date modifiedDate = getModifiedDate();
514    
515                    if (modifiedDate != null) {
516                            workflowInstanceLinkCacheModel.modifiedDate = modifiedDate.getTime();
517                    }
518                    else {
519                            workflowInstanceLinkCacheModel.modifiedDate = Long.MIN_VALUE;
520                    }
521    
522                    workflowInstanceLinkCacheModel.classNameId = getClassNameId();
523    
524                    workflowInstanceLinkCacheModel.classPK = getClassPK();
525    
526                    workflowInstanceLinkCacheModel.workflowInstanceId = getWorkflowInstanceId();
527    
528                    return workflowInstanceLinkCacheModel;
529            }
530    
531            @Override
532            public String toString() {
533                    StringBundler sb = new StringBundler(21);
534    
535                    sb.append("{workflowInstanceLinkId=");
536                    sb.append(getWorkflowInstanceLinkId());
537                    sb.append(", groupId=");
538                    sb.append(getGroupId());
539                    sb.append(", companyId=");
540                    sb.append(getCompanyId());
541                    sb.append(", userId=");
542                    sb.append(getUserId());
543                    sb.append(", userName=");
544                    sb.append(getUserName());
545                    sb.append(", createDate=");
546                    sb.append(getCreateDate());
547                    sb.append(", modifiedDate=");
548                    sb.append(getModifiedDate());
549                    sb.append(", classNameId=");
550                    sb.append(getClassNameId());
551                    sb.append(", classPK=");
552                    sb.append(getClassPK());
553                    sb.append(", workflowInstanceId=");
554                    sb.append(getWorkflowInstanceId());
555                    sb.append("}");
556    
557                    return sb.toString();
558            }
559    
560            public String toXmlString() {
561                    StringBundler sb = new StringBundler(34);
562    
563                    sb.append("<model><model-name>");
564                    sb.append("com.liferay.portal.model.WorkflowInstanceLink");
565                    sb.append("</model-name>");
566    
567                    sb.append(
568                            "<column><column-name>workflowInstanceLinkId</column-name><column-value><![CDATA[");
569                    sb.append(getWorkflowInstanceLinkId());
570                    sb.append("]]></column-value></column>");
571                    sb.append(
572                            "<column><column-name>groupId</column-name><column-value><![CDATA[");
573                    sb.append(getGroupId());
574                    sb.append("]]></column-value></column>");
575                    sb.append(
576                            "<column><column-name>companyId</column-name><column-value><![CDATA[");
577                    sb.append(getCompanyId());
578                    sb.append("]]></column-value></column>");
579                    sb.append(
580                            "<column><column-name>userId</column-name><column-value><![CDATA[");
581                    sb.append(getUserId());
582                    sb.append("]]></column-value></column>");
583                    sb.append(
584                            "<column><column-name>userName</column-name><column-value><![CDATA[");
585                    sb.append(getUserName());
586                    sb.append("]]></column-value></column>");
587                    sb.append(
588                            "<column><column-name>createDate</column-name><column-value><![CDATA[");
589                    sb.append(getCreateDate());
590                    sb.append("]]></column-value></column>");
591                    sb.append(
592                            "<column><column-name>modifiedDate</column-name><column-value><![CDATA[");
593                    sb.append(getModifiedDate());
594                    sb.append("]]></column-value></column>");
595                    sb.append(
596                            "<column><column-name>classNameId</column-name><column-value><![CDATA[");
597                    sb.append(getClassNameId());
598                    sb.append("]]></column-value></column>");
599                    sb.append(
600                            "<column><column-name>classPK</column-name><column-value><![CDATA[");
601                    sb.append(getClassPK());
602                    sb.append("]]></column-value></column>");
603                    sb.append(
604                            "<column><column-name>workflowInstanceId</column-name><column-value><![CDATA[");
605                    sb.append(getWorkflowInstanceId());
606                    sb.append("]]></column-value></column>");
607    
608                    sb.append("</model>");
609    
610                    return sb.toString();
611            }
612    
613            private static ClassLoader _classLoader = WorkflowInstanceLink.class.getClassLoader();
614            private static Class<?>[] _escapedModelInterfaces = new Class[] {
615                            WorkflowInstanceLink.class
616                    };
617            private long _workflowInstanceLinkId;
618            private long _groupId;
619            private long _originalGroupId;
620            private boolean _setOriginalGroupId;
621            private long _companyId;
622            private long _originalCompanyId;
623            private boolean _setOriginalCompanyId;
624            private long _userId;
625            private String _userUuid;
626            private String _userName;
627            private Date _createDate;
628            private Date _modifiedDate;
629            private long _classNameId;
630            private long _originalClassNameId;
631            private boolean _setOriginalClassNameId;
632            private long _classPK;
633            private long _originalClassPK;
634            private boolean _setOriginalClassPK;
635            private long _workflowInstanceId;
636            private long _columnBitmask;
637            private WorkflowInstanceLink _escapedModel;
638    }