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.portal.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.model.CacheModel;
025    import com.liferay.portal.model.UserGroupGroupRole;
026    import com.liferay.portal.model.UserGroupGroupRoleModel;
027    import com.liferay.portal.model.UserGroupGroupRoleSoap;
028    import com.liferay.portal.service.persistence.UserGroupGroupRolePK;
029    
030    import java.io.Serializable;
031    
032    import java.sql.Types;
033    
034    import java.util.ArrayList;
035    import java.util.HashMap;
036    import java.util.List;
037    import java.util.Map;
038    
039    /**
040     * The base model implementation for the UserGroupGroupRole service. Represents a row in the "UserGroupGroupRole" database table, with each column mapped to a property of this class.
041     *
042     * <p>
043     * This implementation and its corresponding interface {@link UserGroupGroupRoleModel} exist only as a container for the default property accessors generated by ServiceBuilder. Helper methods and all application logic should be put in {@link UserGroupGroupRoleImpl}.
044     * </p>
045     *
046     * @author Brian Wing Shun Chan
047     * @see UserGroupGroupRoleImpl
048     * @see UserGroupGroupRole
049     * @see UserGroupGroupRoleModel
050     * @generated
051     */
052    @JSON(strict = true)
053    @ProviderType
054    public class UserGroupGroupRoleModelImpl extends BaseModelImpl<UserGroupGroupRole>
055            implements UserGroupGroupRoleModel {
056            /*
057             * NOTE FOR DEVELOPERS:
058             *
059             * Never modify or reference this class directly. All methods that expect a user group group role model instance should use the {@link UserGroupGroupRole} interface instead.
060             */
061            public static final String TABLE_NAME = "UserGroupGroupRole";
062            public static final Object[][] TABLE_COLUMNS = {
063                            { "mvccVersion", Types.BIGINT },
064                            { "userGroupId", Types.BIGINT },
065                            { "groupId", Types.BIGINT },
066                            { "roleId", Types.BIGINT },
067                            { "companyId", Types.BIGINT }
068                    };
069            public static final Map<String, Integer> TABLE_COLUMNS_MAP = new HashMap<String, Integer>();
070    
071            static {
072                    TABLE_COLUMNS_MAP.put("mvccVersion", Types.BIGINT);
073                    TABLE_COLUMNS_MAP.put("userGroupId", Types.BIGINT);
074                    TABLE_COLUMNS_MAP.put("groupId", Types.BIGINT);
075                    TABLE_COLUMNS_MAP.put("roleId", Types.BIGINT);
076                    TABLE_COLUMNS_MAP.put("companyId", Types.BIGINT);
077            }
078    
079            public static final String TABLE_SQL_CREATE = "create table UserGroupGroupRole (mvccVersion LONG default 0,userGroupId LONG not null,groupId LONG not null,roleId LONG not null,companyId LONG,primary key (userGroupId, groupId, roleId))";
080            public static final String TABLE_SQL_DROP = "drop table UserGroupGroupRole";
081            public static final String ORDER_BY_JPQL = " ORDER BY userGroupGroupRole.id.userGroupId ASC, userGroupGroupRole.id.groupId ASC, userGroupGroupRole.id.roleId ASC";
082            public static final String ORDER_BY_SQL = " ORDER BY UserGroupGroupRole.userGroupId ASC, UserGroupGroupRole.groupId ASC, UserGroupGroupRole.roleId ASC";
083            public static final String DATA_SOURCE = "liferayDataSource";
084            public static final String SESSION_FACTORY = "liferaySessionFactory";
085            public static final String TX_MANAGER = "liferayTransactionManager";
086            public static final boolean ENTITY_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
087                                    "value.object.entity.cache.enabled.com.liferay.portal.model.UserGroupGroupRole"),
088                            true);
089            public static final boolean FINDER_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
090                                    "value.object.finder.cache.enabled.com.liferay.portal.model.UserGroupGroupRole"),
091                            true);
092            public static final boolean COLUMN_BITMASK_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
093                                    "value.object.column.bitmask.enabled.com.liferay.portal.model.UserGroupGroupRole"),
094                            true);
095            public static final long GROUPID_COLUMN_BITMASK = 1L;
096            public static final long ROLEID_COLUMN_BITMASK = 2L;
097            public static final long USERGROUPID_COLUMN_BITMASK = 4L;
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 UserGroupGroupRole toModel(UserGroupGroupRoleSoap soapModel) {
106                    if (soapModel == null) {
107                            return null;
108                    }
109    
110                    UserGroupGroupRole model = new UserGroupGroupRoleImpl();
111    
112                    model.setMvccVersion(soapModel.getMvccVersion());
113                    model.setUserGroupId(soapModel.getUserGroupId());
114                    model.setGroupId(soapModel.getGroupId());
115                    model.setRoleId(soapModel.getRoleId());
116                    model.setCompanyId(soapModel.getCompanyId());
117    
118                    return model;
119            }
120    
121            /**
122             * Converts the soap model instances into normal model instances.
123             *
124             * @param soapModels the soap model instances to convert
125             * @return the normal model instances
126             */
127            public static List<UserGroupGroupRole> toModels(
128                    UserGroupGroupRoleSoap[] soapModels) {
129                    if (soapModels == null) {
130                            return null;
131                    }
132    
133                    List<UserGroupGroupRole> models = new ArrayList<UserGroupGroupRole>(soapModels.length);
134    
135                    for (UserGroupGroupRoleSoap soapModel : soapModels) {
136                            models.add(toModel(soapModel));
137                    }
138    
139                    return models;
140            }
141    
142            public static final long LOCK_EXPIRATION_TIME = GetterUtil.getLong(com.liferay.portal.util.PropsUtil.get(
143                                    "lock.expiration.time.com.liferay.portal.model.UserGroupGroupRole"));
144    
145            public UserGroupGroupRoleModelImpl() {
146            }
147    
148            @Override
149            public UserGroupGroupRolePK getPrimaryKey() {
150                    return new UserGroupGroupRolePK(_userGroupId, _groupId, _roleId);
151            }
152    
153            @Override
154            public void setPrimaryKey(UserGroupGroupRolePK primaryKey) {
155                    setUserGroupId(primaryKey.userGroupId);
156                    setGroupId(primaryKey.groupId);
157                    setRoleId(primaryKey.roleId);
158            }
159    
160            @Override
161            public Serializable getPrimaryKeyObj() {
162                    return new UserGroupGroupRolePK(_userGroupId, _groupId, _roleId);
163            }
164    
165            @Override
166            public void setPrimaryKeyObj(Serializable primaryKeyObj) {
167                    setPrimaryKey((UserGroupGroupRolePK)primaryKeyObj);
168            }
169    
170            @Override
171            public Class<?> getModelClass() {
172                    return UserGroupGroupRole.class;
173            }
174    
175            @Override
176            public String getModelClassName() {
177                    return UserGroupGroupRole.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("mvccVersion", getMvccVersion());
185                    attributes.put("userGroupId", getUserGroupId());
186                    attributes.put("groupId", getGroupId());
187                    attributes.put("roleId", getRoleId());
188                    attributes.put("companyId", getCompanyId());
189    
190                    attributes.put("entityCacheEnabled", isEntityCacheEnabled());
191                    attributes.put("finderCacheEnabled", isFinderCacheEnabled());
192    
193                    return attributes;
194            }
195    
196            @Override
197            public void setModelAttributes(Map<String, Object> attributes) {
198                    Long mvccVersion = (Long)attributes.get("mvccVersion");
199    
200                    if (mvccVersion != null) {
201                            setMvccVersion(mvccVersion);
202                    }
203    
204                    Long userGroupId = (Long)attributes.get("userGroupId");
205    
206                    if (userGroupId != null) {
207                            setUserGroupId(userGroupId);
208                    }
209    
210                    Long groupId = (Long)attributes.get("groupId");
211    
212                    if (groupId != null) {
213                            setGroupId(groupId);
214                    }
215    
216                    Long roleId = (Long)attributes.get("roleId");
217    
218                    if (roleId != null) {
219                            setRoleId(roleId);
220                    }
221    
222                    Long companyId = (Long)attributes.get("companyId");
223    
224                    if (companyId != null) {
225                            setCompanyId(companyId);
226                    }
227            }
228    
229            @JSON
230            @Override
231            public long getMvccVersion() {
232                    return _mvccVersion;
233            }
234    
235            @Override
236            public void setMvccVersion(long mvccVersion) {
237                    _mvccVersion = mvccVersion;
238            }
239    
240            @JSON
241            @Override
242            public long getUserGroupId() {
243                    return _userGroupId;
244            }
245    
246            @Override
247            public void setUserGroupId(long userGroupId) {
248                    _columnBitmask |= USERGROUPID_COLUMN_BITMASK;
249    
250                    if (!_setOriginalUserGroupId) {
251                            _setOriginalUserGroupId = true;
252    
253                            _originalUserGroupId = _userGroupId;
254                    }
255    
256                    _userGroupId = userGroupId;
257            }
258    
259            public long getOriginalUserGroupId() {
260                    return _originalUserGroupId;
261            }
262    
263            @JSON
264            @Override
265            public long getGroupId() {
266                    return _groupId;
267            }
268    
269            @Override
270            public void setGroupId(long groupId) {
271                    _columnBitmask |= GROUPID_COLUMN_BITMASK;
272    
273                    if (!_setOriginalGroupId) {
274                            _setOriginalGroupId = true;
275    
276                            _originalGroupId = _groupId;
277                    }
278    
279                    _groupId = groupId;
280            }
281    
282            public long getOriginalGroupId() {
283                    return _originalGroupId;
284            }
285    
286            @JSON
287            @Override
288            public long getRoleId() {
289                    return _roleId;
290            }
291    
292            @Override
293            public void setRoleId(long roleId) {
294                    _columnBitmask |= ROLEID_COLUMN_BITMASK;
295    
296                    if (!_setOriginalRoleId) {
297                            _setOriginalRoleId = true;
298    
299                            _originalRoleId = _roleId;
300                    }
301    
302                    _roleId = roleId;
303            }
304    
305            public long getOriginalRoleId() {
306                    return _originalRoleId;
307            }
308    
309            @JSON
310            @Override
311            public long getCompanyId() {
312                    return _companyId;
313            }
314    
315            @Override
316            public void setCompanyId(long companyId) {
317                    _companyId = companyId;
318            }
319    
320            public long getColumnBitmask() {
321                    return _columnBitmask;
322            }
323    
324            @Override
325            public UserGroupGroupRole toEscapedModel() {
326                    if (_escapedModel == null) {
327                            _escapedModel = (UserGroupGroupRole)ProxyUtil.newProxyInstance(_classLoader,
328                                            _escapedModelInterfaces, new AutoEscapeBeanHandler(this));
329                    }
330    
331                    return _escapedModel;
332            }
333    
334            @Override
335            public Object clone() {
336                    UserGroupGroupRoleImpl userGroupGroupRoleImpl = new UserGroupGroupRoleImpl();
337    
338                    userGroupGroupRoleImpl.setMvccVersion(getMvccVersion());
339                    userGroupGroupRoleImpl.setUserGroupId(getUserGroupId());
340                    userGroupGroupRoleImpl.setGroupId(getGroupId());
341                    userGroupGroupRoleImpl.setRoleId(getRoleId());
342                    userGroupGroupRoleImpl.setCompanyId(getCompanyId());
343    
344                    userGroupGroupRoleImpl.resetOriginalValues();
345    
346                    return userGroupGroupRoleImpl;
347            }
348    
349            @Override
350            public int compareTo(UserGroupGroupRole userGroupGroupRole) {
351                    UserGroupGroupRolePK primaryKey = userGroupGroupRole.getPrimaryKey();
352    
353                    return getPrimaryKey().compareTo(primaryKey);
354            }
355    
356            @Override
357            public boolean equals(Object obj) {
358                    if (this == obj) {
359                            return true;
360                    }
361    
362                    if (!(obj instanceof UserGroupGroupRole)) {
363                            return false;
364                    }
365    
366                    UserGroupGroupRole userGroupGroupRole = (UserGroupGroupRole)obj;
367    
368                    UserGroupGroupRolePK primaryKey = userGroupGroupRole.getPrimaryKey();
369    
370                    if (getPrimaryKey().equals(primaryKey)) {
371                            return true;
372                    }
373                    else {
374                            return false;
375                    }
376            }
377    
378            @Override
379            public int hashCode() {
380                    return getPrimaryKey().hashCode();
381            }
382    
383            @Override
384            public boolean isEntityCacheEnabled() {
385                    return ENTITY_CACHE_ENABLED;
386            }
387    
388            @Override
389            public boolean isFinderCacheEnabled() {
390                    return FINDER_CACHE_ENABLED;
391            }
392    
393            @Override
394            public void resetOriginalValues() {
395                    UserGroupGroupRoleModelImpl userGroupGroupRoleModelImpl = this;
396    
397                    userGroupGroupRoleModelImpl._originalUserGroupId = userGroupGroupRoleModelImpl._userGroupId;
398    
399                    userGroupGroupRoleModelImpl._setOriginalUserGroupId = false;
400    
401                    userGroupGroupRoleModelImpl._originalGroupId = userGroupGroupRoleModelImpl._groupId;
402    
403                    userGroupGroupRoleModelImpl._setOriginalGroupId = false;
404    
405                    userGroupGroupRoleModelImpl._originalRoleId = userGroupGroupRoleModelImpl._roleId;
406    
407                    userGroupGroupRoleModelImpl._setOriginalRoleId = false;
408    
409                    userGroupGroupRoleModelImpl._columnBitmask = 0;
410            }
411    
412            @Override
413            public CacheModel<UserGroupGroupRole> toCacheModel() {
414                    UserGroupGroupRoleCacheModel userGroupGroupRoleCacheModel = new UserGroupGroupRoleCacheModel();
415    
416                    userGroupGroupRoleCacheModel.userGroupGroupRolePK = getPrimaryKey();
417    
418                    userGroupGroupRoleCacheModel.mvccVersion = getMvccVersion();
419    
420                    userGroupGroupRoleCacheModel.userGroupId = getUserGroupId();
421    
422                    userGroupGroupRoleCacheModel.groupId = getGroupId();
423    
424                    userGroupGroupRoleCacheModel.roleId = getRoleId();
425    
426                    userGroupGroupRoleCacheModel.companyId = getCompanyId();
427    
428                    return userGroupGroupRoleCacheModel;
429            }
430    
431            @Override
432            public String toString() {
433                    StringBundler sb = new StringBundler(11);
434    
435                    sb.append("{mvccVersion=");
436                    sb.append(getMvccVersion());
437                    sb.append(", userGroupId=");
438                    sb.append(getUserGroupId());
439                    sb.append(", groupId=");
440                    sb.append(getGroupId());
441                    sb.append(", roleId=");
442                    sb.append(getRoleId());
443                    sb.append(", companyId=");
444                    sb.append(getCompanyId());
445                    sb.append("}");
446    
447                    return sb.toString();
448            }
449    
450            @Override
451            public String toXmlString() {
452                    StringBundler sb = new StringBundler(19);
453    
454                    sb.append("<model><model-name>");
455                    sb.append("com.liferay.portal.model.UserGroupGroupRole");
456                    sb.append("</model-name>");
457    
458                    sb.append(
459                            "<column><column-name>mvccVersion</column-name><column-value><![CDATA[");
460                    sb.append(getMvccVersion());
461                    sb.append("]]></column-value></column>");
462                    sb.append(
463                            "<column><column-name>userGroupId</column-name><column-value><![CDATA[");
464                    sb.append(getUserGroupId());
465                    sb.append("]]></column-value></column>");
466                    sb.append(
467                            "<column><column-name>groupId</column-name><column-value><![CDATA[");
468                    sb.append(getGroupId());
469                    sb.append("]]></column-value></column>");
470                    sb.append(
471                            "<column><column-name>roleId</column-name><column-value><![CDATA[");
472                    sb.append(getRoleId());
473                    sb.append("]]></column-value></column>");
474                    sb.append(
475                            "<column><column-name>companyId</column-name><column-value><![CDATA[");
476                    sb.append(getCompanyId());
477                    sb.append("]]></column-value></column>");
478    
479                    sb.append("</model>");
480    
481                    return sb.toString();
482            }
483    
484            private static final ClassLoader _classLoader = UserGroupGroupRole.class.getClassLoader();
485            private static final Class<?>[] _escapedModelInterfaces = new Class[] {
486                            UserGroupGroupRole.class
487                    };
488            private long _mvccVersion;
489            private long _userGroupId;
490            private long _originalUserGroupId;
491            private boolean _setOriginalUserGroupId;
492            private long _groupId;
493            private long _originalGroupId;
494            private boolean _setOriginalGroupId;
495            private long _roleId;
496            private long _originalRoleId;
497            private boolean _setOriginalRoleId;
498            private long _companyId;
499            private long _columnBitmask;
500            private UserGroupGroupRole _escapedModel;
501    }