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