1   /**
2    * Copyright (c) 2000-2010 Liferay, Inc. All rights reserved.
3    *
4    * This library is free software; you can redistribute it and/or modify it under
5    * the terms of the GNU Lesser General Public License as published by the Free
6    * Software Foundation; either version 2.1 of the License, or (at your option)
7    * any later version.
8    *
9    * This library is distributed in the hope that it will be useful, but WITHOUT
10   * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
11   * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
12   * details.
13   */
14  
15  package com.liferay.portal.model.impl;
16  
17  import com.liferay.portal.kernel.bean.ReadOnlyBeanHandler;
18  import com.liferay.portal.kernel.exception.SystemException;
19  import com.liferay.portal.kernel.util.GetterUtil;
20  import com.liferay.portal.kernel.util.HtmlUtil;
21  import com.liferay.portal.kernel.util.StringBundler;
22  import com.liferay.portal.kernel.util.StringPool;
23  import com.liferay.portal.model.Group;
24  import com.liferay.portal.model.GroupSoap;
25  import com.liferay.portal.service.ServiceContext;
26  import com.liferay.portal.util.PortalUtil;
27  
28  import com.liferay.portlet.expando.model.ExpandoBridge;
29  import com.liferay.portlet.expando.util.ExpandoBridgeFactoryUtil;
30  
31  import java.io.Serializable;
32  
33  import java.lang.reflect.Proxy;
34  
35  import java.sql.Types;
36  
37  import java.util.ArrayList;
38  import java.util.List;
39  
40  /**
41   * <a href="GroupModelImpl.java.html"><b><i>View Source</i></b></a>
42   *
43   * <p>
44   * ServiceBuilder generated this class. Modifications in this class will be
45   * overwritten the next time is generated.
46   * </p>
47   *
48   * <p>
49   * This interface is a model that represents the Group_ table in the
50   * database.
51   * </p>
52   *
53   * @author    Brian Wing Shun Chan
54   * @see       GroupImpl
55   * @see       com.liferay.portal.model.Group
56   * @see       com.liferay.portal.model.GroupModel
57   * @generated
58   */
59  public class GroupModelImpl extends BaseModelImpl<Group> {
60      public static final String TABLE_NAME = "Group_";
61      public static final Object[][] TABLE_COLUMNS = {
62              { "groupId", new Integer(Types.BIGINT) },
63              { "companyId", new Integer(Types.BIGINT) },
64              { "creatorUserId", new Integer(Types.BIGINT) },
65              { "classNameId", new Integer(Types.BIGINT) },
66              { "classPK", new Integer(Types.BIGINT) },
67              { "parentGroupId", new Integer(Types.BIGINT) },
68              { "liveGroupId", new Integer(Types.BIGINT) },
69              { "name", new Integer(Types.VARCHAR) },
70              { "description", new Integer(Types.VARCHAR) },
71              { "type_", new Integer(Types.INTEGER) },
72              { "typeSettings", new Integer(Types.VARCHAR) },
73              { "friendlyURL", new Integer(Types.VARCHAR) },
74              { "active_", new Integer(Types.BOOLEAN) }
75          };
76      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)";
77      public static final String TABLE_SQL_DROP = "drop table Group_";
78      public static final String ORDER_BY_JPQL = " ORDER BY group_.name ASC";
79      public static final String ORDER_BY_SQL = " ORDER BY Group_.name ASC";
80      public static final String DATA_SOURCE = "liferayDataSource";
81      public static final String SESSION_FACTORY = "liferaySessionFactory";
82      public static final String TX_MANAGER = "liferayTransactionManager";
83      public static final boolean ENTITY_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
84                  "value.object.entity.cache.enabled.com.liferay.portal.model.Group"),
85              true);
86      public static final boolean FINDER_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
87                  "value.object.finder.cache.enabled.com.liferay.portal.model.Group"),
88              true);
89  
90      public static Group toModel(GroupSoap soapModel) {
91          Group model = new GroupImpl();
92  
93          model.setGroupId(soapModel.getGroupId());
94          model.setCompanyId(soapModel.getCompanyId());
95          model.setCreatorUserId(soapModel.getCreatorUserId());
96          model.setClassNameId(soapModel.getClassNameId());
97          model.setClassPK(soapModel.getClassPK());
98          model.setParentGroupId(soapModel.getParentGroupId());
99          model.setLiveGroupId(soapModel.getLiveGroupId());
100         model.setName(soapModel.getName());
101         model.setDescription(soapModel.getDescription());
102         model.setType(soapModel.getType());
103         model.setTypeSettings(soapModel.getTypeSettings());
104         model.setFriendlyURL(soapModel.getFriendlyURL());
105         model.setActive(soapModel.getActive());
106 
107         return model;
108     }
109 
110     public static List<Group> toModels(GroupSoap[] soapModels) {
111         List<Group> models = new ArrayList<Group>(soapModels.length);
112 
113         for (GroupSoap soapModel : soapModels) {
114             models.add(toModel(soapModel));
115         }
116 
117         return models;
118     }
119 
120     public static final String MAPPING_TABLE_GROUPS_ORGS_NAME = "Groups_Orgs";
121     public static final Object[][] MAPPING_TABLE_GROUPS_ORGS_COLUMNS = {
122             { "groupId", new Integer(Types.BIGINT) },
123             { "organizationId", new Integer(Types.BIGINT) }
124         };
125     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))";
126     public static final boolean FINDER_CACHE_ENABLED_GROUPS_ORGS = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
127                 "value.object.finder.cache.enabled.Groups_Orgs"), true);
128     public static final String MAPPING_TABLE_GROUPS_PERMISSIONS_NAME = "Groups_Permissions";
129     public static final Object[][] MAPPING_TABLE_GROUPS_PERMISSIONS_COLUMNS = {
130             { "groupId", new Integer(Types.BIGINT) },
131             { "permissionId", new Integer(Types.BIGINT) }
132         };
133     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))";
134     public static final boolean FINDER_CACHE_ENABLED_GROUPS_PERMISSIONS = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
135                 "value.object.finder.cache.enabled.Groups_Permissions"), true);
136     public static final String MAPPING_TABLE_GROUPS_ROLES_NAME = "Groups_Roles";
137     public static final Object[][] MAPPING_TABLE_GROUPS_ROLES_COLUMNS = {
138             { "groupId", new Integer(Types.BIGINT) },
139             { "roleId", new Integer(Types.BIGINT) }
140         };
141     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))";
142     public static final boolean FINDER_CACHE_ENABLED_GROUPS_ROLES = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
143                 "value.object.finder.cache.enabled.Groups_Roles"), true);
144     public static final String MAPPING_TABLE_GROUPS_USERGROUPS_NAME = "Groups_UserGroups";
145     public static final Object[][] MAPPING_TABLE_GROUPS_USERGROUPS_COLUMNS = {
146             { "groupId", new Integer(Types.BIGINT) },
147             { "userGroupId", new Integer(Types.BIGINT) }
148         };
149     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))";
150     public static final boolean FINDER_CACHE_ENABLED_GROUPS_USERGROUPS = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
151                 "value.object.finder.cache.enabled.Groups_UserGroups"), true);
152     public static final String MAPPING_TABLE_USERS_GROUPS_NAME = com.liferay.portal.model.impl.UserModelImpl.MAPPING_TABLE_USERS_GROUPS_NAME;
153     public static final boolean FINDER_CACHE_ENABLED_USERS_GROUPS = com.liferay.portal.model.impl.UserModelImpl.FINDER_CACHE_ENABLED_USERS_GROUPS;
154     public static final long LOCK_EXPIRATION_TIME = GetterUtil.getLong(com.liferay.portal.util.PropsUtil.get(
155                 "lock.expiration.time.com.liferay.portal.model.Group"));
156 
157     public GroupModelImpl() {
158     }
159 
160     public long getPrimaryKey() {
161         return _groupId;
162     }
163 
164     public void setPrimaryKey(long pk) {
165         setGroupId(pk);
166     }
167 
168     public Serializable getPrimaryKeyObj() {
169         return new Long(_groupId);
170     }
171 
172     public long getGroupId() {
173         return _groupId;
174     }
175 
176     public void setGroupId(long groupId) {
177         _groupId = groupId;
178     }
179 
180     public long getCompanyId() {
181         return _companyId;
182     }
183 
184     public void setCompanyId(long companyId) {
185         _companyId = companyId;
186 
187         if (!_setOriginalCompanyId) {
188             _setOriginalCompanyId = true;
189 
190             _originalCompanyId = companyId;
191         }
192     }
193 
194     public long getOriginalCompanyId() {
195         return _originalCompanyId;
196     }
197 
198     public long getCreatorUserId() {
199         return _creatorUserId;
200     }
201 
202     public void setCreatorUserId(long creatorUserId) {
203         _creatorUserId = creatorUserId;
204     }
205 
206     public String getCreatorUserUuid() throws SystemException {
207         return PortalUtil.getUserValue(getCreatorUserId(), "uuid",
208             _creatorUserUuid);
209     }
210 
211     public void setCreatorUserUuid(String creatorUserUuid) {
212         _creatorUserUuid = creatorUserUuid;
213     }
214 
215     public String getClassName() {
216         if (getClassNameId() <= 0) {
217             return StringPool.BLANK;
218         }
219 
220         return PortalUtil.getClassName(getClassNameId());
221     }
222 
223     public long getClassNameId() {
224         return _classNameId;
225     }
226 
227     public void setClassNameId(long classNameId) {
228         _classNameId = classNameId;
229 
230         if (!_setOriginalClassNameId) {
231             _setOriginalClassNameId = true;
232 
233             _originalClassNameId = classNameId;
234         }
235     }
236 
237     public long getOriginalClassNameId() {
238         return _originalClassNameId;
239     }
240 
241     public long getClassPK() {
242         return _classPK;
243     }
244 
245     public void setClassPK(long classPK) {
246         _classPK = classPK;
247 
248         if (!_setOriginalClassPK) {
249             _setOriginalClassPK = true;
250 
251             _originalClassPK = classPK;
252         }
253     }
254 
255     public long getOriginalClassPK() {
256         return _originalClassPK;
257     }
258 
259     public long getParentGroupId() {
260         return _parentGroupId;
261     }
262 
263     public void setParentGroupId(long parentGroupId) {
264         _parentGroupId = parentGroupId;
265     }
266 
267     public long getLiveGroupId() {
268         return _liveGroupId;
269     }
270 
271     public void setLiveGroupId(long liveGroupId) {
272         _liveGroupId = liveGroupId;
273 
274         if (!_setOriginalLiveGroupId) {
275             _setOriginalLiveGroupId = true;
276 
277             _originalLiveGroupId = liveGroupId;
278         }
279     }
280 
281     public long getOriginalLiveGroupId() {
282         return _originalLiveGroupId;
283     }
284 
285     public String getName() {
286         return GetterUtil.getString(_name);
287     }
288 
289     public void setName(String name) {
290         _name = name;
291 
292         if (_originalName == null) {
293             _originalName = name;
294         }
295     }
296 
297     public String getOriginalName() {
298         return GetterUtil.getString(_originalName);
299     }
300 
301     public String getDescription() {
302         return GetterUtil.getString(_description);
303     }
304 
305     public void setDescription(String description) {
306         _description = description;
307     }
308 
309     public int getType() {
310         return _type;
311     }
312 
313     public void setType(int type) {
314         _type = type;
315     }
316 
317     public String getTypeSettings() {
318         return GetterUtil.getString(_typeSettings);
319     }
320 
321     public void setTypeSettings(String typeSettings) {
322         _typeSettings = typeSettings;
323     }
324 
325     public String getFriendlyURL() {
326         return GetterUtil.getString(_friendlyURL);
327     }
328 
329     public void setFriendlyURL(String friendlyURL) {
330         _friendlyURL = friendlyURL;
331 
332         if (_originalFriendlyURL == null) {
333             _originalFriendlyURL = friendlyURL;
334         }
335     }
336 
337     public String getOriginalFriendlyURL() {
338         return GetterUtil.getString(_originalFriendlyURL);
339     }
340 
341     public boolean getActive() {
342         return _active;
343     }
344 
345     public boolean isActive() {
346         return _active;
347     }
348 
349     public void setActive(boolean active) {
350         _active = active;
351     }
352 
353     public Group toEscapedModel() {
354         if (isEscapedModel()) {
355             return (Group)this;
356         }
357         else {
358             Group model = new GroupImpl();
359 
360             model.setNew(isNew());
361             model.setEscapedModel(true);
362 
363             model.setGroupId(getGroupId());
364             model.setCompanyId(getCompanyId());
365             model.setCreatorUserId(getCreatorUserId());
366             model.setClassNameId(getClassNameId());
367             model.setClassPK(getClassPK());
368             model.setParentGroupId(getParentGroupId());
369             model.setLiveGroupId(getLiveGroupId());
370             model.setName(HtmlUtil.escape(getName()));
371             model.setDescription(HtmlUtil.escape(getDescription()));
372             model.setType(getType());
373             model.setTypeSettings(HtmlUtil.escape(getTypeSettings()));
374             model.setFriendlyURL(HtmlUtil.escape(getFriendlyURL()));
375             model.setActive(getActive());
376 
377             model = (Group)Proxy.newProxyInstance(Group.class.getClassLoader(),
378                     new Class[] { Group.class }, new ReadOnlyBeanHandler(model));
379 
380             return model;
381         }
382     }
383 
384     public ExpandoBridge getExpandoBridge() {
385         if (_expandoBridge == null) {
386             _expandoBridge = ExpandoBridgeFactoryUtil.getExpandoBridge(getCompanyId(),
387                     Group.class.getName(), getPrimaryKey());
388         }
389 
390         return _expandoBridge;
391     }
392 
393     public void setExpandoBridgeAttributes(ServiceContext serviceContext) {
394         getExpandoBridge().setAttributes(serviceContext);
395     }
396 
397     public Object clone() {
398         GroupImpl clone = new GroupImpl();
399 
400         clone.setGroupId(getGroupId());
401         clone.setCompanyId(getCompanyId());
402         clone.setCreatorUserId(getCreatorUserId());
403         clone.setClassNameId(getClassNameId());
404         clone.setClassPK(getClassPK());
405         clone.setParentGroupId(getParentGroupId());
406         clone.setLiveGroupId(getLiveGroupId());
407         clone.setName(getName());
408         clone.setDescription(getDescription());
409         clone.setType(getType());
410         clone.setTypeSettings(getTypeSettings());
411         clone.setFriendlyURL(getFriendlyURL());
412         clone.setActive(getActive());
413 
414         return clone;
415     }
416 
417     public int compareTo(Group group) {
418         int value = 0;
419 
420         value = getName().toLowerCase().compareTo(group.getName().toLowerCase());
421 
422         if (value != 0) {
423             return value;
424         }
425 
426         return 0;
427     }
428 
429     public boolean equals(Object obj) {
430         if (obj == null) {
431             return false;
432         }
433 
434         Group group = null;
435 
436         try {
437             group = (Group)obj;
438         }
439         catch (ClassCastException cce) {
440             return false;
441         }
442 
443         long pk = group.getPrimaryKey();
444 
445         if (getPrimaryKey() == pk) {
446             return true;
447         }
448         else {
449             return false;
450         }
451     }
452 
453     public int hashCode() {
454         return (int)getPrimaryKey();
455     }
456 
457     public String toString() {
458         StringBundler sb = new StringBundler(27);
459 
460         sb.append("{groupId=");
461         sb.append(getGroupId());
462         sb.append(", companyId=");
463         sb.append(getCompanyId());
464         sb.append(", creatorUserId=");
465         sb.append(getCreatorUserId());
466         sb.append(", classNameId=");
467         sb.append(getClassNameId());
468         sb.append(", classPK=");
469         sb.append(getClassPK());
470         sb.append(", parentGroupId=");
471         sb.append(getParentGroupId());
472         sb.append(", liveGroupId=");
473         sb.append(getLiveGroupId());
474         sb.append(", name=");
475         sb.append(getName());
476         sb.append(", description=");
477         sb.append(getDescription());
478         sb.append(", type=");
479         sb.append(getType());
480         sb.append(", typeSettings=");
481         sb.append(getTypeSettings());
482         sb.append(", friendlyURL=");
483         sb.append(getFriendlyURL());
484         sb.append(", active=");
485         sb.append(getActive());
486         sb.append("}");
487 
488         return sb.toString();
489     }
490 
491     public String toXmlString() {
492         StringBundler sb = new StringBundler(43);
493 
494         sb.append("<model><model-name>");
495         sb.append("com.liferay.portal.model.Group");
496         sb.append("</model-name>");
497 
498         sb.append(
499             "<column><column-name>groupId</column-name><column-value><![CDATA[");
500         sb.append(getGroupId());
501         sb.append("]]></column-value></column>");
502         sb.append(
503             "<column><column-name>companyId</column-name><column-value><![CDATA[");
504         sb.append(getCompanyId());
505         sb.append("]]></column-value></column>");
506         sb.append(
507             "<column><column-name>creatorUserId</column-name><column-value><![CDATA[");
508         sb.append(getCreatorUserId());
509         sb.append("]]></column-value></column>");
510         sb.append(
511             "<column><column-name>classNameId</column-name><column-value><![CDATA[");
512         sb.append(getClassNameId());
513         sb.append("]]></column-value></column>");
514         sb.append(
515             "<column><column-name>classPK</column-name><column-value><![CDATA[");
516         sb.append(getClassPK());
517         sb.append("]]></column-value></column>");
518         sb.append(
519             "<column><column-name>parentGroupId</column-name><column-value><![CDATA[");
520         sb.append(getParentGroupId());
521         sb.append("]]></column-value></column>");
522         sb.append(
523             "<column><column-name>liveGroupId</column-name><column-value><![CDATA[");
524         sb.append(getLiveGroupId());
525         sb.append("]]></column-value></column>");
526         sb.append(
527             "<column><column-name>name</column-name><column-value><![CDATA[");
528         sb.append(getName());
529         sb.append("]]></column-value></column>");
530         sb.append(
531             "<column><column-name>description</column-name><column-value><![CDATA[");
532         sb.append(getDescription());
533         sb.append("]]></column-value></column>");
534         sb.append(
535             "<column><column-name>type</column-name><column-value><![CDATA[");
536         sb.append(getType());
537         sb.append("]]></column-value></column>");
538         sb.append(
539             "<column><column-name>typeSettings</column-name><column-value><![CDATA[");
540         sb.append(getTypeSettings());
541         sb.append("]]></column-value></column>");
542         sb.append(
543             "<column><column-name>friendlyURL</column-name><column-value><![CDATA[");
544         sb.append(getFriendlyURL());
545         sb.append("]]></column-value></column>");
546         sb.append(
547             "<column><column-name>active</column-name><column-value><![CDATA[");
548         sb.append(getActive());
549         sb.append("]]></column-value></column>");
550 
551         sb.append("</model>");
552 
553         return sb.toString();
554     }
555 
556     private long _groupId;
557     private long _companyId;
558     private long _originalCompanyId;
559     private boolean _setOriginalCompanyId;
560     private long _creatorUserId;
561     private String _creatorUserUuid;
562     private long _classNameId;
563     private long _originalClassNameId;
564     private boolean _setOriginalClassNameId;
565     private long _classPK;
566     private long _originalClassPK;
567     private boolean _setOriginalClassPK;
568     private long _parentGroupId;
569     private long _liveGroupId;
570     private long _originalLiveGroupId;
571     private boolean _setOriginalLiveGroupId;
572     private String _name;
573     private String _originalName;
574     private String _description;
575     private int _type;
576     private String _typeSettings;
577     private String _friendlyURL;
578     private String _originalFriendlyURL;
579     private boolean _active;
580     private transient ExpandoBridge _expandoBridge;
581 }