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