001    /**
002     * Copyright (c) 2000-present Liferay, Inc. All rights reserved.
003     *
004     * This library is free software; you can redistribute it and/or modify it under
005     * the terms of the GNU Lesser General Public License as published by the Free
006     * Software Foundation; either version 2.1 of the License, or (at your option)
007     * any later version.
008     *
009     * This library is distributed in the hope that it will be useful, but WITHOUT
010     * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
011     * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
012     * details.
013     */
014    
015    package com.liferay.portlet.expando.model.impl;
016    
017    import aQute.bnd.annotation.ProviderType;
018    
019    import com.liferay.portal.kernel.bean.AutoEscapeBeanHandler;
020    import com.liferay.portal.kernel.json.JSON;
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.kernel.util.Validator;
026    import com.liferay.portal.model.CacheModel;
027    import com.liferay.portal.model.impl.BaseModelImpl;
028    import com.liferay.portal.util.PortalUtil;
029    
030    import com.liferay.portlet.expando.model.ExpandoValue;
031    import com.liferay.portlet.expando.model.ExpandoValueModel;
032    import com.liferay.portlet.expando.model.ExpandoValueSoap;
033    
034    import java.io.Serializable;
035    
036    import java.sql.Types;
037    
038    import java.util.ArrayList;
039    import java.util.HashMap;
040    import java.util.List;
041    import java.util.Map;
042    
043    /**
044     * The base model implementation for the ExpandoValue service. Represents a row in the "ExpandoValue" 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.portlet.expando.model.ExpandoValueModel} exist only as a container for the default property accessors generated by ServiceBuilder. Helper methods and all application logic should be put in {@link ExpandoValueImpl}.
048     * </p>
049     *
050     * @author Brian Wing Shun Chan
051     * @see ExpandoValueImpl
052     * @see com.liferay.portlet.expando.model.ExpandoValue
053     * @see com.liferay.portlet.expando.model.ExpandoValueModel
054     * @generated
055     */
056    @JSON(strict = true)
057    @ProviderType
058    public class ExpandoValueModelImpl extends BaseModelImpl<ExpandoValue>
059            implements ExpandoValueModel {
060            /*
061             * NOTE FOR DEVELOPERS:
062             *
063             * Never modify or reference this class directly. All methods that expect a expando value model instance should use the {@link com.liferay.portlet.expando.model.ExpandoValue} interface instead.
064             */
065            public static final String TABLE_NAME = "ExpandoValue";
066            public static final Object[][] TABLE_COLUMNS = {
067                            { "valueId", Types.BIGINT },
068                            { "companyId", Types.BIGINT },
069                            { "tableId", Types.BIGINT },
070                            { "columnId", Types.BIGINT },
071                            { "rowId_", Types.BIGINT },
072                            { "classNameId", Types.BIGINT },
073                            { "classPK", Types.BIGINT },
074                            { "data_", Types.CLOB }
075                    };
076            public static final String TABLE_SQL_CREATE = "create table ExpandoValue (valueId LONG not null primary key,companyId LONG,tableId LONG,columnId LONG,rowId_ LONG,classNameId LONG,classPK LONG,data_ TEXT null)";
077            public static final String TABLE_SQL_DROP = "drop table ExpandoValue";
078            public static final String ORDER_BY_JPQL = " ORDER BY expandoValue.tableId ASC, expandoValue.rowId ASC, expandoValue.columnId ASC";
079            public static final String ORDER_BY_SQL = " ORDER BY ExpandoValue.tableId ASC, ExpandoValue.rowId_ ASC, ExpandoValue.columnId ASC";
080            public static final String DATA_SOURCE = "liferayDataSource";
081            public static final String SESSION_FACTORY = "liferaySessionFactory";
082            public static final String TX_MANAGER = "liferayTransactionManager";
083            public static final boolean ENTITY_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
084                                    "value.object.entity.cache.enabled.com.liferay.portlet.expando.model.ExpandoValue"),
085                            true);
086            public static final boolean FINDER_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
087                                    "value.object.finder.cache.enabled.com.liferay.portlet.expando.model.ExpandoValue"),
088                            true);
089            public static final boolean COLUMN_BITMASK_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
090                                    "value.object.column.bitmask.enabled.com.liferay.portlet.expando.model.ExpandoValue"),
091                            true);
092            public static final long CLASSNAMEID_COLUMN_BITMASK = 1L;
093            public static final long CLASSPK_COLUMN_BITMASK = 2L;
094            public static final long COLUMNID_COLUMN_BITMASK = 4L;
095            public static final long DATA_COLUMN_BITMASK = 8L;
096            public static final long ROWID_COLUMN_BITMASK = 16L;
097            public static final long TABLEID_COLUMN_BITMASK = 32L;
098    
099            /**
100             * Converts the soap model instance into a normal model instance.
101             *
102             * @param soapModel the soap model instance to convert
103             * @return the normal model instance
104             */
105            public static ExpandoValue toModel(ExpandoValueSoap soapModel) {
106                    if (soapModel == null) {
107                            return null;
108                    }
109    
110                    ExpandoValue model = new ExpandoValueImpl();
111    
112                    model.setValueId(soapModel.getValueId());
113                    model.setCompanyId(soapModel.getCompanyId());
114                    model.setTableId(soapModel.getTableId());
115                    model.setColumnId(soapModel.getColumnId());
116                    model.setRowId(soapModel.getRowId());
117                    model.setClassNameId(soapModel.getClassNameId());
118                    model.setClassPK(soapModel.getClassPK());
119                    model.setData(soapModel.getData());
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<ExpandoValue> toModels(ExpandoValueSoap[] soapModels) {
131                    if (soapModels == null) {
132                            return null;
133                    }
134    
135                    List<ExpandoValue> models = new ArrayList<ExpandoValue>(soapModels.length);
136    
137                    for (ExpandoValueSoap soapModel : soapModels) {
138                            models.add(toModel(soapModel));
139                    }
140    
141                    return models;
142            }
143    
144            public static final long LOCK_EXPIRATION_TIME = GetterUtil.getLong(com.liferay.portal.util.PropsUtil.get(
145                                    "lock.expiration.time.com.liferay.portlet.expando.model.ExpandoValue"));
146    
147            public ExpandoValueModelImpl() {
148            }
149    
150            @Override
151            public long getPrimaryKey() {
152                    return _valueId;
153            }
154    
155            @Override
156            public void setPrimaryKey(long primaryKey) {
157                    setValueId(primaryKey);
158            }
159    
160            @Override
161            public Serializable getPrimaryKeyObj() {
162                    return _valueId;
163            }
164    
165            @Override
166            public void setPrimaryKeyObj(Serializable primaryKeyObj) {
167                    setPrimaryKey(((Long)primaryKeyObj).longValue());
168            }
169    
170            @Override
171            public Class<?> getModelClass() {
172                    return ExpandoValue.class;
173            }
174    
175            @Override
176            public String getModelClassName() {
177                    return ExpandoValue.class.getName();
178            }
179    
180            @Override
181            public Map<String, Object> getModelAttributes() {
182                    Map<String, Object> attributes = new HashMap<String, Object>();
183    
184                    attributes.put("valueId", getValueId());
185                    attributes.put("companyId", getCompanyId());
186                    attributes.put("tableId", getTableId());
187                    attributes.put("columnId", getColumnId());
188                    attributes.put("rowId", getRowId());
189                    attributes.put("classNameId", getClassNameId());
190                    attributes.put("classPK", getClassPK());
191                    attributes.put("data", getData());
192    
193                    attributes.put("entityCacheEnabled", isEntityCacheEnabled());
194                    attributes.put("finderCacheEnabled", isFinderCacheEnabled());
195    
196                    return attributes;
197            }
198    
199            @Override
200            public void setModelAttributes(Map<String, Object> attributes) {
201                    Long valueId = (Long)attributes.get("valueId");
202    
203                    if (valueId != null) {
204                            setValueId(valueId);
205                    }
206    
207                    Long companyId = (Long)attributes.get("companyId");
208    
209                    if (companyId != null) {
210                            setCompanyId(companyId);
211                    }
212    
213                    Long tableId = (Long)attributes.get("tableId");
214    
215                    if (tableId != null) {
216                            setTableId(tableId);
217                    }
218    
219                    Long columnId = (Long)attributes.get("columnId");
220    
221                    if (columnId != null) {
222                            setColumnId(columnId);
223                    }
224    
225                    Long rowId = (Long)attributes.get("rowId");
226    
227                    if (rowId != null) {
228                            setRowId(rowId);
229                    }
230    
231                    Long classNameId = (Long)attributes.get("classNameId");
232    
233                    if (classNameId != null) {
234                            setClassNameId(classNameId);
235                    }
236    
237                    Long classPK = (Long)attributes.get("classPK");
238    
239                    if (classPK != null) {
240                            setClassPK(classPK);
241                    }
242    
243                    String data = (String)attributes.get("data");
244    
245                    if (data != null) {
246                            setData(data);
247                    }
248            }
249    
250            @JSON
251            @Override
252            public long getValueId() {
253                    return _valueId;
254            }
255    
256            @Override
257            public void setValueId(long valueId) {
258                    _valueId = valueId;
259            }
260    
261            @JSON
262            @Override
263            public long getCompanyId() {
264                    return _companyId;
265            }
266    
267            @Override
268            public void setCompanyId(long companyId) {
269                    _companyId = companyId;
270            }
271    
272            @JSON
273            @Override
274            public long getTableId() {
275                    return _tableId;
276            }
277    
278            @Override
279            public void setTableId(long tableId) {
280                    _columnBitmask = -1L;
281    
282                    if (!_setOriginalTableId) {
283                            _setOriginalTableId = true;
284    
285                            _originalTableId = _tableId;
286                    }
287    
288                    _tableId = tableId;
289            }
290    
291            public long getOriginalTableId() {
292                    return _originalTableId;
293            }
294    
295            @JSON
296            @Override
297            public long getColumnId() {
298                    return _columnId;
299            }
300    
301            @Override
302            public void setColumnId(long columnId) {
303                    _columnBitmask = -1L;
304    
305                    if (!_setOriginalColumnId) {
306                            _setOriginalColumnId = true;
307    
308                            _originalColumnId = _columnId;
309                    }
310    
311                    _columnId = columnId;
312            }
313    
314            public long getOriginalColumnId() {
315                    return _originalColumnId;
316            }
317    
318            @JSON
319            @Override
320            public long getRowId() {
321                    return _rowId;
322            }
323    
324            @Override
325            public void setRowId(long rowId) {
326                    _columnBitmask = -1L;
327    
328                    if (!_setOriginalRowId) {
329                            _setOriginalRowId = true;
330    
331                            _originalRowId = _rowId;
332                    }
333    
334                    _rowId = rowId;
335            }
336    
337            public long getOriginalRowId() {
338                    return _originalRowId;
339            }
340    
341            @Override
342            public String getClassName() {
343                    if (getClassNameId() <= 0) {
344                            return StringPool.BLANK;
345                    }
346    
347                    return PortalUtil.getClassName(getClassNameId());
348            }
349    
350            @Override
351            public void setClassName(String className) {
352                    long classNameId = 0;
353    
354                    if (Validator.isNotNull(className)) {
355                            classNameId = PortalUtil.getClassNameId(className);
356                    }
357    
358                    setClassNameId(classNameId);
359            }
360    
361            @JSON
362            @Override
363            public long getClassNameId() {
364                    return _classNameId;
365            }
366    
367            @Override
368            public void setClassNameId(long classNameId) {
369                    _columnBitmask |= CLASSNAMEID_COLUMN_BITMASK;
370    
371                    if (!_setOriginalClassNameId) {
372                            _setOriginalClassNameId = true;
373    
374                            _originalClassNameId = _classNameId;
375                    }
376    
377                    _classNameId = classNameId;
378            }
379    
380            public long getOriginalClassNameId() {
381                    return _originalClassNameId;
382            }
383    
384            @JSON
385            @Override
386            public long getClassPK() {
387                    return _classPK;
388            }
389    
390            @Override
391            public void setClassPK(long classPK) {
392                    _columnBitmask |= CLASSPK_COLUMN_BITMASK;
393    
394                    if (!_setOriginalClassPK) {
395                            _setOriginalClassPK = true;
396    
397                            _originalClassPK = _classPK;
398                    }
399    
400                    _classPK = classPK;
401            }
402    
403            public long getOriginalClassPK() {
404                    return _originalClassPK;
405            }
406    
407            @JSON
408            @Override
409            public String getData() {
410                    if (_data == null) {
411                            return StringPool.BLANK;
412                    }
413                    else {
414                            return _data;
415                    }
416            }
417    
418            @Override
419            public void setData(String data) {
420                    _columnBitmask |= DATA_COLUMN_BITMASK;
421    
422                    if (_originalData == null) {
423                            _originalData = _data;
424                    }
425    
426                    _data = data;
427            }
428    
429            public String getOriginalData() {
430                    return GetterUtil.getString(_originalData);
431            }
432    
433            public long getColumnBitmask() {
434                    return _columnBitmask;
435            }
436    
437            @Override
438            public ExpandoValue toEscapedModel() {
439                    if (_escapedModel == null) {
440                            _escapedModel = (ExpandoValue)ProxyUtil.newProxyInstance(_classLoader,
441                                            _escapedModelInterfaces, new AutoEscapeBeanHandler(this));
442                    }
443    
444                    return _escapedModel;
445            }
446    
447            @Override
448            public Object clone() {
449                    ExpandoValueImpl expandoValueImpl = new ExpandoValueImpl();
450    
451                    expandoValueImpl.setValueId(getValueId());
452                    expandoValueImpl.setCompanyId(getCompanyId());
453                    expandoValueImpl.setTableId(getTableId());
454                    expandoValueImpl.setColumnId(getColumnId());
455                    expandoValueImpl.setRowId(getRowId());
456                    expandoValueImpl.setClassNameId(getClassNameId());
457                    expandoValueImpl.setClassPK(getClassPK());
458                    expandoValueImpl.setData(getData());
459    
460                    expandoValueImpl.resetOriginalValues();
461    
462                    return expandoValueImpl;
463            }
464    
465            @Override
466            public int compareTo(ExpandoValue expandoValue) {
467                    int value = 0;
468    
469                    if (getTableId() < expandoValue.getTableId()) {
470                            value = -1;
471                    }
472                    else if (getTableId() > expandoValue.getTableId()) {
473                            value = 1;
474                    }
475                    else {
476                            value = 0;
477                    }
478    
479                    if (value != 0) {
480                            return value;
481                    }
482    
483                    if (getRowId() < expandoValue.getRowId()) {
484                            value = -1;
485                    }
486                    else if (getRowId() > expandoValue.getRowId()) {
487                            value = 1;
488                    }
489                    else {
490                            value = 0;
491                    }
492    
493                    if (value != 0) {
494                            return value;
495                    }
496    
497                    if (getColumnId() < expandoValue.getColumnId()) {
498                            value = -1;
499                    }
500                    else if (getColumnId() > expandoValue.getColumnId()) {
501                            value = 1;
502                    }
503                    else {
504                            value = 0;
505                    }
506    
507                    if (value != 0) {
508                            return value;
509                    }
510    
511                    return 0;
512            }
513    
514            @Override
515            public boolean equals(Object obj) {
516                    if (this == obj) {
517                            return true;
518                    }
519    
520                    if (!(obj instanceof ExpandoValue)) {
521                            return false;
522                    }
523    
524                    ExpandoValue expandoValue = (ExpandoValue)obj;
525    
526                    long primaryKey = expandoValue.getPrimaryKey();
527    
528                    if (getPrimaryKey() == primaryKey) {
529                            return true;
530                    }
531                    else {
532                            return false;
533                    }
534            }
535    
536            @Override
537            public int hashCode() {
538                    return (int)getPrimaryKey();
539            }
540    
541            @Override
542            public boolean isEntityCacheEnabled() {
543                    return ENTITY_CACHE_ENABLED;
544            }
545    
546            @Override
547            public boolean isFinderCacheEnabled() {
548                    return FINDER_CACHE_ENABLED;
549            }
550    
551            @Override
552            public void resetOriginalValues() {
553                    ExpandoValueModelImpl expandoValueModelImpl = this;
554    
555                    expandoValueModelImpl._originalTableId = expandoValueModelImpl._tableId;
556    
557                    expandoValueModelImpl._setOriginalTableId = false;
558    
559                    expandoValueModelImpl._originalColumnId = expandoValueModelImpl._columnId;
560    
561                    expandoValueModelImpl._setOriginalColumnId = false;
562    
563                    expandoValueModelImpl._originalRowId = expandoValueModelImpl._rowId;
564    
565                    expandoValueModelImpl._setOriginalRowId = false;
566    
567                    expandoValueModelImpl._originalClassNameId = expandoValueModelImpl._classNameId;
568    
569                    expandoValueModelImpl._setOriginalClassNameId = false;
570    
571                    expandoValueModelImpl._originalClassPK = expandoValueModelImpl._classPK;
572    
573                    expandoValueModelImpl._setOriginalClassPK = false;
574    
575                    expandoValueModelImpl._originalData = expandoValueModelImpl._data;
576    
577                    expandoValueModelImpl._columnBitmask = 0;
578            }
579    
580            @Override
581            public CacheModel<ExpandoValue> toCacheModel() {
582                    ExpandoValueCacheModel expandoValueCacheModel = new ExpandoValueCacheModel();
583    
584                    expandoValueCacheModel.valueId = getValueId();
585    
586                    expandoValueCacheModel.companyId = getCompanyId();
587    
588                    expandoValueCacheModel.tableId = getTableId();
589    
590                    expandoValueCacheModel.columnId = getColumnId();
591    
592                    expandoValueCacheModel.rowId = getRowId();
593    
594                    expandoValueCacheModel.classNameId = getClassNameId();
595    
596                    expandoValueCacheModel.classPK = getClassPK();
597    
598                    expandoValueCacheModel.data = getData();
599    
600                    String data = expandoValueCacheModel.data;
601    
602                    if ((data != null) && (data.length() == 0)) {
603                            expandoValueCacheModel.data = null;
604                    }
605    
606                    return expandoValueCacheModel;
607            }
608    
609            @Override
610            public String toString() {
611                    StringBundler sb = new StringBundler(17);
612    
613                    sb.append("{valueId=");
614                    sb.append(getValueId());
615                    sb.append(", companyId=");
616                    sb.append(getCompanyId());
617                    sb.append(", tableId=");
618                    sb.append(getTableId());
619                    sb.append(", columnId=");
620                    sb.append(getColumnId());
621                    sb.append(", rowId=");
622                    sb.append(getRowId());
623                    sb.append(", classNameId=");
624                    sb.append(getClassNameId());
625                    sb.append(", classPK=");
626                    sb.append(getClassPK());
627                    sb.append(", data=");
628                    sb.append(getData());
629                    sb.append("}");
630    
631                    return sb.toString();
632            }
633    
634            @Override
635            public String toXmlString() {
636                    StringBundler sb = new StringBundler(28);
637    
638                    sb.append("<model><model-name>");
639                    sb.append("com.liferay.portlet.expando.model.ExpandoValue");
640                    sb.append("</model-name>");
641    
642                    sb.append(
643                            "<column><column-name>valueId</column-name><column-value><![CDATA[");
644                    sb.append(getValueId());
645                    sb.append("]]></column-value></column>");
646                    sb.append(
647                            "<column><column-name>companyId</column-name><column-value><![CDATA[");
648                    sb.append(getCompanyId());
649                    sb.append("]]></column-value></column>");
650                    sb.append(
651                            "<column><column-name>tableId</column-name><column-value><![CDATA[");
652                    sb.append(getTableId());
653                    sb.append("]]></column-value></column>");
654                    sb.append(
655                            "<column><column-name>columnId</column-name><column-value><![CDATA[");
656                    sb.append(getColumnId());
657                    sb.append("]]></column-value></column>");
658                    sb.append(
659                            "<column><column-name>rowId</column-name><column-value><![CDATA[");
660                    sb.append(getRowId());
661                    sb.append("]]></column-value></column>");
662                    sb.append(
663                            "<column><column-name>classNameId</column-name><column-value><![CDATA[");
664                    sb.append(getClassNameId());
665                    sb.append("]]></column-value></column>");
666                    sb.append(
667                            "<column><column-name>classPK</column-name><column-value><![CDATA[");
668                    sb.append(getClassPK());
669                    sb.append("]]></column-value></column>");
670                    sb.append(
671                            "<column><column-name>data</column-name><column-value><![CDATA[");
672                    sb.append(getData());
673                    sb.append("]]></column-value></column>");
674    
675                    sb.append("</model>");
676    
677                    return sb.toString();
678            }
679    
680            private static final ClassLoader _classLoader = ExpandoValue.class.getClassLoader();
681            private static final Class<?>[] _escapedModelInterfaces = new Class[] {
682                            ExpandoValue.class
683                    };
684            private long _valueId;
685            private long _companyId;
686            private long _tableId;
687            private long _originalTableId;
688            private boolean _setOriginalTableId;
689            private long _columnId;
690            private long _originalColumnId;
691            private boolean _setOriginalColumnId;
692            private long _rowId;
693            private long _originalRowId;
694            private boolean _setOriginalRowId;
695            private long _classNameId;
696            private long _originalClassNameId;
697            private boolean _setOriginalClassNameId;
698            private long _classPK;
699            private long _originalClassPK;
700            private boolean _setOriginalClassPK;
701            private String _data;
702            private String _originalData;
703            private long _columnBitmask;
704            private ExpandoValue _escapedModel;
705    }