001    /**
002     * Copyright (c) 2000-2010 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.GetterUtil;
020    import com.liferay.portal.kernel.util.StringBundler;
021    import com.liferay.portal.kernel.util.StringPool;
022    import com.liferay.portal.model.Group;
023    import com.liferay.portal.model.GroupModel;
024    import com.liferay.portal.model.GroupSoap;
025    import com.liferay.portal.service.ServiceContext;
026    import com.liferay.portal.util.PortalUtil;
027    
028    import com.liferay.portlet.expando.model.ExpandoBridge;
029    import com.liferay.portlet.expando.util.ExpandoBridgeFactoryUtil;
030    
031    import java.io.Serializable;
032    
033    import java.lang.reflect.Proxy;
034    
035    import java.sql.Types;
036    
037    import java.util.ArrayList;
038    import java.util.List;
039    
040    /**
041     * <p>
042     * This interface is a model that represents the Group_ table in the
043     * database.
044     * </p>
045     *
046     * @author    Brian Wing Shun Chan
047     * @see       GroupImpl
048     * @see       com.liferay.portal.model.Group
049     * @see       com.liferay.portal.model.GroupModel
050     * @generated
051     */
052    public class GroupModelImpl extends BaseModelImpl<Group> implements GroupModel {
053            public static final String TABLE_NAME = "Group_";
054            public static final Object[][] TABLE_COLUMNS = {
055                            { "groupId", new Integer(Types.BIGINT) },
056                            { "companyId", new Integer(Types.BIGINT) },
057                            { "creatorUserId", new Integer(Types.BIGINT) },
058                            { "classNameId", new Integer(Types.BIGINT) },
059                            { "classPK", new Integer(Types.BIGINT) },
060                            { "parentGroupId", new Integer(Types.BIGINT) },
061                            { "liveGroupId", new Integer(Types.BIGINT) },
062                            { "name", new Integer(Types.VARCHAR) },
063                            { "description", new Integer(Types.VARCHAR) },
064                            { "type_", new Integer(Types.INTEGER) },
065                            { "typeSettings", new Integer(Types.VARCHAR) },
066                            { "friendlyURL", new Integer(Types.VARCHAR) },
067                            { "active_", new Integer(Types.BOOLEAN) }
068                    };
069            public static final String TABLE_SQL_CREATE = "create table Group_ (groupId LONG not null primary key,companyId LONG,creatorUserId LONG,classNameId LONG,classPK LONG,parentGroupId LONG,liveGroupId LONG,name VARCHAR(75) null,description STRING null,type_ INTEGER,typeSettings STRING null,friendlyURL VARCHAR(100) null,active_ BOOLEAN)";
070            public static final String TABLE_SQL_DROP = "drop table Group_";
071            public static final String ORDER_BY_JPQL = " ORDER BY group_.name ASC";
072            public static final String ORDER_BY_SQL = " ORDER BY Group_.name ASC";
073            public static final String DATA_SOURCE = "liferayDataSource";
074            public static final String SESSION_FACTORY = "liferaySessionFactory";
075            public static final String TX_MANAGER = "liferayTransactionManager";
076            public static final boolean ENTITY_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
077                                    "value.object.entity.cache.enabled.com.liferay.portal.model.Group"),
078                            true);
079            public static final boolean FINDER_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
080                                    "value.object.finder.cache.enabled.com.liferay.portal.model.Group"),
081                            true);
082    
083            public static Group toModel(GroupSoap soapModel) {
084                    Group model = new GroupImpl();
085    
086                    model.setGroupId(soapModel.getGroupId());
087                    model.setCompanyId(soapModel.getCompanyId());
088                    model.setCreatorUserId(soapModel.getCreatorUserId());
089                    model.setClassNameId(soapModel.getClassNameId());
090                    model.setClassPK(soapModel.getClassPK());
091                    model.setParentGroupId(soapModel.getParentGroupId());
092                    model.setLiveGroupId(soapModel.getLiveGroupId());
093                    model.setName(soapModel.getName());
094                    model.setDescription(soapModel.getDescription());
095                    model.setType(soapModel.getType());
096                    model.setTypeSettings(soapModel.getTypeSettings());
097                    model.setFriendlyURL(soapModel.getFriendlyURL());
098                    model.setActive(soapModel.getActive());
099    
100                    return model;
101            }
102    
103            public static List<Group> toModels(GroupSoap[] soapModels) {
104                    List<Group> models = new ArrayList<Group>(soapModels.length);
105    
106                    for (GroupSoap soapModel : soapModels) {
107                            models.add(toModel(soapModel));
108                    }
109    
110                    return models;
111            }
112    
113            public static final String MAPPING_TABLE_GROUPS_ORGS_NAME = "Groups_Orgs";
114            public static final Object[][] MAPPING_TABLE_GROUPS_ORGS_COLUMNS = {
115                            { "groupId", new Integer(Types.BIGINT) },
116                            { "organizationId", new Integer(Types.BIGINT) }
117                    };
118            public static final String MAPPING_TABLE_GROUPS_ORGS_SQL_CREATE = "create table Groups_Orgs (groupId LONG not null,organizationId LONG not null,primary key (groupId, organizationId))";
119            public static final boolean FINDER_CACHE_ENABLED_GROUPS_ORGS = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
120                                    "value.object.finder.cache.enabled.Groups_Orgs"), true);
121            public static final String MAPPING_TABLE_GROUPS_PERMISSIONS_NAME = "Groups_Permissions";
122            public static final Object[][] MAPPING_TABLE_GROUPS_PERMISSIONS_COLUMNS = {
123                            { "groupId", new Integer(Types.BIGINT) },
124                            { "permissionId", new Integer(Types.BIGINT) }
125                    };
126            public static final String MAPPING_TABLE_GROUPS_PERMISSIONS_SQL_CREATE = "create table Groups_Permissions (groupId LONG not null,permissionId LONG not null,primary key (groupId, permissionId))";
127            public static final boolean FINDER_CACHE_ENABLED_GROUPS_PERMISSIONS = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
128                                    "value.object.finder.cache.enabled.Groups_Permissions"), true);
129            public static final String MAPPING_TABLE_GROUPS_ROLES_NAME = "Groups_Roles";
130            public static final Object[][] MAPPING_TABLE_GROUPS_ROLES_COLUMNS = {
131                            { "groupId", new Integer(Types.BIGINT) },
132                            { "roleId", new Integer(Types.BIGINT) }
133                    };
134            public static final String MAPPING_TABLE_GROUPS_ROLES_SQL_CREATE = "create table Groups_Roles (groupId LONG not null,roleId LONG not null,primary key (groupId, roleId))";
135            public static final boolean FINDER_CACHE_ENABLED_GROUPS_ROLES = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
136                                    "value.object.finder.cache.enabled.Groups_Roles"), true);
137            public static final String MAPPING_TABLE_GROUPS_USERGROUPS_NAME = "Groups_UserGroups";
138            public static final Object[][] MAPPING_TABLE_GROUPS_USERGROUPS_COLUMNS = {
139                            { "groupId", new Integer(Types.BIGINT) },
140                            { "userGroupId", new Integer(Types.BIGINT) }
141                    };
142            public static final String MAPPING_TABLE_GROUPS_USERGROUPS_SQL_CREATE = "create table Groups_UserGroups (groupId LONG not null,userGroupId LONG not null,primary key (groupId, userGroupId))";
143            public static final boolean FINDER_CACHE_ENABLED_GROUPS_USERGROUPS = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
144                                    "value.object.finder.cache.enabled.Groups_UserGroups"), true);
145            public static final String MAPPING_TABLE_USERS_GROUPS_NAME = com.liferay.portal.model.impl.UserModelImpl.MAPPING_TABLE_USERS_GROUPS_NAME;
146            public static final boolean FINDER_CACHE_ENABLED_USERS_GROUPS = com.liferay.portal.model.impl.UserModelImpl.FINDER_CACHE_ENABLED_USERS_GROUPS;
147            public static final long LOCK_EXPIRATION_TIME = GetterUtil.getLong(com.liferay.portal.util.PropsUtil.get(
148                                    "lock.expiration.time.com.liferay.portal.model.Group"));
149    
150            public GroupModelImpl() {
151            }
152    
153            public long getPrimaryKey() {
154                    return _groupId;
155            }
156    
157            public void setPrimaryKey(long pk) {
158                    setGroupId(pk);
159            }
160    
161            public Serializable getPrimaryKeyObj() {
162                    return new Long(_groupId);
163            }
164    
165            public long getGroupId() {
166                    return _groupId;
167            }
168    
169            public void setGroupId(long groupId) {
170                    _groupId = groupId;
171            }
172    
173            public long getCompanyId() {
174                    return _companyId;
175            }
176    
177            public void setCompanyId(long companyId) {
178                    _companyId = companyId;
179    
180                    if (!_setOriginalCompanyId) {
181                            _setOriginalCompanyId = true;
182    
183                            _originalCompanyId = companyId;
184                    }
185            }
186    
187            public long getOriginalCompanyId() {
188                    return _originalCompanyId;
189            }
190    
191            public long getCreatorUserId() {
192                    return _creatorUserId;
193            }
194    
195            public void setCreatorUserId(long creatorUserId) {
196                    _creatorUserId = creatorUserId;
197            }
198    
199            public String getCreatorUserUuid() throws SystemException {
200                    return PortalUtil.getUserValue(getCreatorUserId(), "uuid",
201                            _creatorUserUuid);
202            }
203    
204            public void setCreatorUserUuid(String creatorUserUuid) {
205                    _creatorUserUuid = creatorUserUuid;
206            }
207    
208            public String getClassName() {
209                    if (getClassNameId() <= 0) {
210                            return StringPool.BLANK;
211                    }
212    
213                    return PortalUtil.getClassName(getClassNameId());
214            }
215    
216            public long getClassNameId() {
217                    return _classNameId;
218            }
219    
220            public void setClassNameId(long classNameId) {
221                    _classNameId = classNameId;
222    
223                    if (!_setOriginalClassNameId) {
224                            _setOriginalClassNameId = true;
225    
226                            _originalClassNameId = classNameId;
227                    }
228            }
229    
230            public long getOriginalClassNameId() {
231                    return _originalClassNameId;
232            }
233    
234            public long getClassPK() {
235                    return _classPK;
236            }
237    
238            public void setClassPK(long classPK) {
239                    _classPK = classPK;
240    
241                    if (!_setOriginalClassPK) {
242                            _setOriginalClassPK = true;
243    
244                            _originalClassPK = classPK;
245                    }
246            }
247    
248            public long getOriginalClassPK() {
249                    return _originalClassPK;
250            }
251    
252            public long getParentGroupId() {
253                    return _parentGroupId;
254            }
255    
256            public void setParentGroupId(long parentGroupId) {
257                    _parentGroupId = parentGroupId;
258            }
259    
260            public long getLiveGroupId() {
261                    return _liveGroupId;
262            }
263    
264            public void setLiveGroupId(long liveGroupId) {
265                    _liveGroupId = liveGroupId;
266    
267                    if (!_setOriginalLiveGroupId) {
268                            _setOriginalLiveGroupId = true;
269    
270                            _originalLiveGroupId = liveGroupId;
271                    }
272            }
273    
274            public long getOriginalLiveGroupId() {
275                    return _originalLiveGroupId;
276            }
277    
278            public String getName() {
279                    if (_name == null) {
280                            return StringPool.BLANK;
281                    }
282                    else {
283                            return _name;
284                    }
285            }
286    
287            public void setName(String name) {
288                    _name = name;
289    
290                    if (_originalName == null) {
291                            _originalName = name;
292                    }
293            }
294    
295            public String getOriginalName() {
296                    return GetterUtil.getString(_originalName);
297            }
298    
299            public String getDescription() {
300                    if (_description == null) {
301                            return StringPool.BLANK;
302                    }
303                    else {
304                            return _description;
305                    }
306            }
307    
308            public void setDescription(String description) {
309                    _description = description;
310            }
311    
312            public int getType() {
313                    return _type;
314            }
315    
316            public void setType(int type) {
317                    _type = type;
318            }
319    
320            public String getTypeSettings() {
321                    if (_typeSettings == null) {
322                            return StringPool.BLANK;
323                    }
324                    else {
325                            return _typeSettings;
326                    }
327            }
328    
329            public void setTypeSettings(String typeSettings) {
330                    _typeSettings = typeSettings;
331            }
332    
333            public String getFriendlyURL() {
334                    if (_friendlyURL == null) {
335                            return StringPool.BLANK;
336                    }
337                    else {
338                            return _friendlyURL;
339                    }
340            }
341    
342            public void setFriendlyURL(String friendlyURL) {
343                    _friendlyURL = friendlyURL;
344    
345                    if (_originalFriendlyURL == null) {
346                            _originalFriendlyURL = friendlyURL;
347                    }
348            }
349    
350            public String getOriginalFriendlyURL() {
351                    return GetterUtil.getString(_originalFriendlyURL);
352            }
353    
354            public boolean getActive() {
355                    return _active;
356            }
357    
358            public boolean isActive() {
359                    return _active;
360            }
361    
362            public void setActive(boolean active) {
363                    _active = active;
364            }
365    
366            public Group toEscapedModel() {
367                    if (isEscapedModel()) {
368                            return (Group)this;
369                    }
370                    else {
371                            return (Group)Proxy.newProxyInstance(Group.class.getClassLoader(),
372                                    new Class[] { Group.class }, new AutoEscapeBeanHandler(this));
373                    }
374            }
375    
376            public ExpandoBridge getExpandoBridge() {
377                    if (_expandoBridge == null) {
378                            _expandoBridge = ExpandoBridgeFactoryUtil.getExpandoBridge(getCompanyId(),
379                                            Group.class.getName(), getPrimaryKey());
380                    }
381    
382                    return _expandoBridge;
383            }
384    
385            public void setExpandoBridgeAttributes(ServiceContext serviceContext) {
386                    getExpandoBridge().setAttributes(serviceContext);
387            }
388    
389            public Object clone() {
390                    GroupImpl clone = new GroupImpl();
391    
392                    clone.setGroupId(getGroupId());
393                    clone.setCompanyId(getCompanyId());
394                    clone.setCreatorUserId(getCreatorUserId());
395                    clone.setClassNameId(getClassNameId());
396                    clone.setClassPK(getClassPK());
397                    clone.setParentGroupId(getParentGroupId());
398                    clone.setLiveGroupId(getLiveGroupId());
399                    clone.setName(getName());
400                    clone.setDescription(getDescription());
401                    clone.setType(getType());
402                    clone.setTypeSettings(getTypeSettings());
403                    clone.setFriendlyURL(getFriendlyURL());
404                    clone.setActive(getActive());
405    
406                    return clone;
407            }
408    
409            public int compareTo(Group group) {
410                    int value = 0;
411    
412                    value = getName().toLowerCase().compareTo(group.getName().toLowerCase());
413    
414                    if (value != 0) {
415                            return value;
416                    }
417    
418                    return 0;
419            }
420    
421            public boolean equals(Object obj) {
422                    if (obj == null) {
423                            return false;
424                    }
425    
426                    Group group = null;
427    
428                    try {
429                            group = (Group)obj;
430                    }
431                    catch (ClassCastException cce) {
432                            return false;
433                    }
434    
435                    long pk = group.getPrimaryKey();
436    
437                    if (getPrimaryKey() == pk) {
438                            return true;
439                    }
440                    else {
441                            return false;
442                    }
443            }
444    
445            public int hashCode() {
446                    return (int)getPrimaryKey();
447            }
448    
449            public String toString() {
450                    StringBundler sb = new StringBundler(27);
451    
452                    sb.append("{groupId=");
453                    sb.append(getGroupId());
454                    sb.append(", companyId=");
455                    sb.append(getCompanyId());
456                    sb.append(", creatorUserId=");
457                    sb.append(getCreatorUserId());
458                    sb.append(", classNameId=");
459                    sb.append(getClassNameId());
460                    sb.append(", classPK=");
461                    sb.append(getClassPK());
462                    sb.append(", parentGroupId=");
463                    sb.append(getParentGroupId());
464                    sb.append(", liveGroupId=");
465                    sb.append(getLiveGroupId());
466                    sb.append(", name=");
467                    sb.append(getName());
468                    sb.append(", description=");
469                    sb.append(getDescription());
470                    sb.append(", type=");
471                    sb.append(getType());
472                    sb.append(", typeSettings=");
473                    sb.append(getTypeSettings());
474                    sb.append(", friendlyURL=");
475                    sb.append(getFriendlyURL());
476                    sb.append(", active=");
477                    sb.append(getActive());
478                    sb.append("}");
479    
480                    return sb.toString();
481            }
482    
483            public String toXmlString() {
484                    StringBundler sb = new StringBundler(43);
485    
486                    sb.append("<model><model-name>");
487                    sb.append("com.liferay.portal.model.Group");
488                    sb.append("</model-name>");
489    
490                    sb.append(
491                            "<column><column-name>groupId</column-name><column-value><![CDATA[");
492                    sb.append(getGroupId());
493                    sb.append("]]></column-value></column>");
494                    sb.append(
495                            "<column><column-name>companyId</column-name><column-value><![CDATA[");
496                    sb.append(getCompanyId());
497                    sb.append("]]></column-value></column>");
498                    sb.append(
499                            "<column><column-name>creatorUserId</column-name><column-value><![CDATA[");
500                    sb.append(getCreatorUserId());
501                    sb.append("]]></column-value></column>");
502                    sb.append(
503                            "<column><column-name>classNameId</column-name><column-value><![CDATA[");
504                    sb.append(getClassNameId());
505                    sb.append("]]></column-value></column>");
506                    sb.append(
507                            "<column><column-name>classPK</column-name><column-value><![CDATA[");
508                    sb.append(getClassPK());
509                    sb.append("]]></column-value></column>");
510                    sb.append(
511                            "<column><column-name>parentGroupId</column-name><column-value><![CDATA[");
512                    sb.append(getParentGroupId());
513                    sb.append("]]></column-value></column>");
514                    sb.append(
515                            "<column><column-name>liveGroupId</column-name><column-value><![CDATA[");
516                    sb.append(getLiveGroupId());
517                    sb.append("]]></column-value></column>");
518                    sb.append(
519                            "<column><column-name>name</column-name><column-value><![CDATA[");
520                    sb.append(getName());
521                    sb.append("]]></column-value></column>");
522                    sb.append(
523                            "<column><column-name>description</column-name><column-value><![CDATA[");
524                    sb.append(getDescription());
525                    sb.append("]]></column-value></column>");
526                    sb.append(
527                            "<column><column-name>type</column-name><column-value><![CDATA[");
528                    sb.append(getType());
529                    sb.append("]]></column-value></column>");
530                    sb.append(
531                            "<column><column-name>typeSettings</column-name><column-value><![CDATA[");
532                    sb.append(getTypeSettings());
533                    sb.append("]]></column-value></column>");
534                    sb.append(
535                            "<column><column-name>friendlyURL</column-name><column-value><![CDATA[");
536                    sb.append(getFriendlyURL());
537                    sb.append("]]></column-value></column>");
538                    sb.append(
539                            "<column><column-name>active</column-name><column-value><![CDATA[");
540                    sb.append(getActive());
541                    sb.append("]]></column-value></column>");
542    
543                    sb.append("</model>");
544    
545                    return sb.toString();
546            }
547    
548            private long _groupId;
549            private long _companyId;
550            private long _originalCompanyId;
551            private boolean _setOriginalCompanyId;
552            private long _creatorUserId;
553            private String _creatorUserUuid;
554            private long _classNameId;
555            private long _originalClassNameId;
556            private boolean _setOriginalClassNameId;
557            private long _classPK;
558            private long _originalClassPK;
559            private boolean _setOriginalClassPK;
560            private long _parentGroupId;
561            private long _liveGroupId;
562            private long _originalLiveGroupId;
563            private boolean _setOriginalLiveGroupId;
564            private String _name;
565            private String _originalName;
566            private String _description;
567            private int _type;
568            private String _typeSettings;
569            private String _friendlyURL;
570            private String _originalFriendlyURL;
571            private boolean _active;
572            private transient ExpandoBridge _expandoBridge;
573    }