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