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