001    /**
002     * Copyright (c) 2000-2013 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.json.JSON;
020    import com.liferay.portal.kernel.util.GetterUtil;
021    import com.liferay.portal.kernel.util.ProxyUtil;
022    import com.liferay.portal.kernel.util.StringBundler;
023    import com.liferay.portal.kernel.util.StringPool;
024    import com.liferay.portal.kernel.util.Validator;
025    import com.liferay.portal.model.CacheModel;
026    import com.liferay.portal.model.Group;
027    import com.liferay.portal.model.GroupModel;
028    import com.liferay.portal.model.GroupSoap;
029    import com.liferay.portal.service.ServiceContext;
030    import com.liferay.portal.util.PortalUtil;
031    
032    import com.liferay.portlet.expando.model.ExpandoBridge;
033    import com.liferay.portlet.expando.util.ExpandoBridgeFactoryUtil;
034    
035    import java.io.Serializable;
036    
037    import java.sql.Types;
038    
039    import java.util.ArrayList;
040    import java.util.HashMap;
041    import java.util.List;
042    import java.util.Map;
043    
044    /**
045     * The base model implementation for the Group service. Represents a row in the "Group_" database table, with each column mapped to a property of this class.
046     *
047     * <p>
048     * This implementation and its corresponding interface {@link com.liferay.portal.model.GroupModel} exist only as a container for the default property accessors generated by ServiceBuilder. Helper methods and all application logic should be put in {@link GroupImpl}.
049     * </p>
050     *
051     * @author Brian Wing Shun Chan
052     * @see GroupImpl
053     * @see com.liferay.portal.model.Group
054     * @see com.liferay.portal.model.GroupModel
055     * @generated
056     */
057    @JSON(strict = true)
058    public class GroupModelImpl extends BaseModelImpl<Group> implements GroupModel {
059            /*
060             * NOTE FOR DEVELOPERS:
061             *
062             * Never modify or reference this class directly. All methods that expect a group model instance should use the {@link com.liferay.portal.model.Group} interface instead.
063             */
064            public static final String TABLE_NAME = "Group_";
065            public static final Object[][] TABLE_COLUMNS = {
066                            { "uuid_", Types.VARCHAR },
067                            { "groupId", Types.BIGINT },
068                            { "companyId", Types.BIGINT },
069                            { "creatorUserId", Types.BIGINT },
070                            { "classNameId", Types.BIGINT },
071                            { "classPK", Types.BIGINT },
072                            { "parentGroupId", Types.BIGINT },
073                            { "liveGroupId", Types.BIGINT },
074                            { "treePath", Types.VARCHAR },
075                            { "name", Types.VARCHAR },
076                            { "description", Types.VARCHAR },
077                            { "type_", Types.INTEGER },
078                            { "typeSettings", Types.CLOB },
079                            { "manualMembership", Types.BOOLEAN },
080                            { "membershipRestriction", Types.INTEGER },
081                            { "friendlyURL", Types.VARCHAR },
082                            { "site", Types.BOOLEAN },
083                            { "remoteStagingGroupCount", Types.INTEGER },
084                            { "active_", Types.BOOLEAN }
085                    };
086            public static final String TABLE_SQL_CREATE = "create table Group_ (uuid_ VARCHAR(75) null,groupId LONG not null primary key,companyId LONG,creatorUserId LONG,classNameId LONG,classPK LONG,parentGroupId LONG,liveGroupId LONG,treePath STRING null,name VARCHAR(150) null,description STRING null,type_ INTEGER,typeSettings TEXT null,manualMembership BOOLEAN,membershipRestriction INTEGER,friendlyURL VARCHAR(255) null,site BOOLEAN,remoteStagingGroupCount INTEGER,active_ BOOLEAN)";
087            public static final String TABLE_SQL_DROP = "drop table Group_";
088            public static final String ORDER_BY_JPQL = " ORDER BY group_.name ASC";
089            public static final String ORDER_BY_SQL = " ORDER BY Group_.name ASC";
090            public static final String DATA_SOURCE = "liferayDataSource";
091            public static final String SESSION_FACTORY = "liferaySessionFactory";
092            public static final String TX_MANAGER = "liferayTransactionManager";
093            public static final boolean ENTITY_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
094                                    "value.object.entity.cache.enabled.com.liferay.portal.model.Group"),
095                            true);
096            public static final boolean FINDER_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
097                                    "value.object.finder.cache.enabled.com.liferay.portal.model.Group"),
098                            true);
099            public static final boolean COLUMN_BITMASK_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
100                                    "value.object.column.bitmask.enabled.com.liferay.portal.model.Group"),
101                            true);
102            public static long ACTIVE_COLUMN_BITMASK = 1L;
103            public static long CLASSNAMEID_COLUMN_BITMASK = 2L;
104            public static long CLASSPK_COLUMN_BITMASK = 4L;
105            public static long COMPANYID_COLUMN_BITMASK = 8L;
106            public static long FRIENDLYURL_COLUMN_BITMASK = 16L;
107            public static long GROUPID_COLUMN_BITMASK = 32L;
108            public static long LIVEGROUPID_COLUMN_BITMASK = 64L;
109            public static long NAME_COLUMN_BITMASK = 128L;
110            public static long PARENTGROUPID_COLUMN_BITMASK = 256L;
111            public static long SITE_COLUMN_BITMASK = 512L;
112            public static long TYPE_COLUMN_BITMASK = 1024L;
113            public static long UUID_COLUMN_BITMASK = 2048L;
114    
115            /**
116             * Converts the soap model instance into a normal model instance.
117             *
118             * @param soapModel the soap model instance to convert
119             * @return the normal model instance
120             */
121            public static Group toModel(GroupSoap soapModel) {
122                    if (soapModel == null) {
123                            return null;
124                    }
125    
126                    Group model = new GroupImpl();
127    
128                    model.setUuid(soapModel.getUuid());
129                    model.setGroupId(soapModel.getGroupId());
130                    model.setCompanyId(soapModel.getCompanyId());
131                    model.setCreatorUserId(soapModel.getCreatorUserId());
132                    model.setClassNameId(soapModel.getClassNameId());
133                    model.setClassPK(soapModel.getClassPK());
134                    model.setParentGroupId(soapModel.getParentGroupId());
135                    model.setLiveGroupId(soapModel.getLiveGroupId());
136                    model.setTreePath(soapModel.getTreePath());
137                    model.setName(soapModel.getName());
138                    model.setDescription(soapModel.getDescription());
139                    model.setType(soapModel.getType());
140                    model.setTypeSettings(soapModel.getTypeSettings());
141                    model.setManualMembership(soapModel.getManualMembership());
142                    model.setMembershipRestriction(soapModel.getMembershipRestriction());
143                    model.setFriendlyURL(soapModel.getFriendlyURL());
144                    model.setSite(soapModel.getSite());
145                    model.setRemoteStagingGroupCount(soapModel.getRemoteStagingGroupCount());
146                    model.setActive(soapModel.getActive());
147    
148                    return model;
149            }
150    
151            /**
152             * Converts the soap model instances into normal model instances.
153             *
154             * @param soapModels the soap model instances to convert
155             * @return the normal model instances
156             */
157            public static List<Group> toModels(GroupSoap[] soapModels) {
158                    if (soapModels == null) {
159                            return null;
160                    }
161    
162                    List<Group> models = new ArrayList<Group>(soapModels.length);
163    
164                    for (GroupSoap soapModel : soapModels) {
165                            models.add(toModel(soapModel));
166                    }
167    
168                    return models;
169            }
170    
171            public static final String MAPPING_TABLE_GROUPS_ORGS_NAME = "Groups_Orgs";
172            public static final Object[][] MAPPING_TABLE_GROUPS_ORGS_COLUMNS = {
173                            { "groupId", Types.BIGINT },
174                            { "organizationId", Types.BIGINT }
175                    };
176            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))";
177            public static final boolean FINDER_CACHE_ENABLED_GROUPS_ORGS = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
178                                    "value.object.finder.cache.enabled.Groups_Orgs"), true);
179            public static final String MAPPING_TABLE_GROUPS_ROLES_NAME = "Groups_Roles";
180            public static final Object[][] MAPPING_TABLE_GROUPS_ROLES_COLUMNS = {
181                            { "groupId", Types.BIGINT },
182                            { "roleId", Types.BIGINT }
183                    };
184            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))";
185            public static final boolean FINDER_CACHE_ENABLED_GROUPS_ROLES = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
186                                    "value.object.finder.cache.enabled.Groups_Roles"), true);
187            public static final String MAPPING_TABLE_GROUPS_USERGROUPS_NAME = "Groups_UserGroups";
188            public static final Object[][] MAPPING_TABLE_GROUPS_USERGROUPS_COLUMNS = {
189                            { "groupId", Types.BIGINT },
190                            { "userGroupId", Types.BIGINT }
191                    };
192            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))";
193            public static final boolean FINDER_CACHE_ENABLED_GROUPS_USERGROUPS = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
194                                    "value.object.finder.cache.enabled.Groups_UserGroups"), true);
195            public static final String MAPPING_TABLE_USERS_GROUPS_NAME = "Users_Groups";
196            public static final Object[][] MAPPING_TABLE_USERS_GROUPS_COLUMNS = {
197                            { "userId", Types.BIGINT },
198                            { "groupId", Types.BIGINT }
199                    };
200            public static final String MAPPING_TABLE_USERS_GROUPS_SQL_CREATE = "create table Users_Groups (groupId LONG not null,userId LONG not null,primary key (groupId, userId))";
201            public static final boolean FINDER_CACHE_ENABLED_USERS_GROUPS = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
202                                    "value.object.finder.cache.enabled.Users_Groups"), true);
203            public static final long LOCK_EXPIRATION_TIME = GetterUtil.getLong(com.liferay.portal.util.PropsUtil.get(
204                                    "lock.expiration.time.com.liferay.portal.model.Group"));
205    
206            public GroupModelImpl() {
207            }
208    
209            @Override
210            public long getPrimaryKey() {
211                    return _groupId;
212            }
213    
214            @Override
215            public void setPrimaryKey(long primaryKey) {
216                    setGroupId(primaryKey);
217            }
218    
219            @Override
220            public Serializable getPrimaryKeyObj() {
221                    return _groupId;
222            }
223    
224            @Override
225            public void setPrimaryKeyObj(Serializable primaryKeyObj) {
226                    setPrimaryKey(((Long)primaryKeyObj).longValue());
227            }
228    
229            @Override
230            public Class<?> getModelClass() {
231                    return Group.class;
232            }
233    
234            @Override
235            public String getModelClassName() {
236                    return Group.class.getName();
237            }
238    
239            @Override
240            public Map<String, Object> getModelAttributes() {
241                    Map<String, Object> attributes = new HashMap<String, Object>();
242    
243                    attributes.put("uuid", getUuid());
244                    attributes.put("groupId", getGroupId());
245                    attributes.put("companyId", getCompanyId());
246                    attributes.put("creatorUserId", getCreatorUserId());
247                    attributes.put("classNameId", getClassNameId());
248                    attributes.put("classPK", getClassPK());
249                    attributes.put("parentGroupId", getParentGroupId());
250                    attributes.put("liveGroupId", getLiveGroupId());
251                    attributes.put("treePath", getTreePath());
252                    attributes.put("name", getName());
253                    attributes.put("description", getDescription());
254                    attributes.put("type", getType());
255                    attributes.put("typeSettings", getTypeSettings());
256                    attributes.put("manualMembership", getManualMembership());
257                    attributes.put("membershipRestriction", getMembershipRestriction());
258                    attributes.put("friendlyURL", getFriendlyURL());
259                    attributes.put("site", getSite());
260                    attributes.put("remoteStagingGroupCount", getRemoteStagingGroupCount());
261                    attributes.put("active", getActive());
262    
263                    return attributes;
264            }
265    
266            @Override
267            public void setModelAttributes(Map<String, Object> attributes) {
268                    String uuid = (String)attributes.get("uuid");
269    
270                    if (uuid != null) {
271                            setUuid(uuid);
272                    }
273    
274                    Long groupId = (Long)attributes.get("groupId");
275    
276                    if (groupId != null) {
277                            setGroupId(groupId);
278                    }
279    
280                    Long companyId = (Long)attributes.get("companyId");
281    
282                    if (companyId != null) {
283                            setCompanyId(companyId);
284                    }
285    
286                    Long creatorUserId = (Long)attributes.get("creatorUserId");
287    
288                    if (creatorUserId != null) {
289                            setCreatorUserId(creatorUserId);
290                    }
291    
292                    Long classNameId = (Long)attributes.get("classNameId");
293    
294                    if (classNameId != null) {
295                            setClassNameId(classNameId);
296                    }
297    
298                    Long classPK = (Long)attributes.get("classPK");
299    
300                    if (classPK != null) {
301                            setClassPK(classPK);
302                    }
303    
304                    Long parentGroupId = (Long)attributes.get("parentGroupId");
305    
306                    if (parentGroupId != null) {
307                            setParentGroupId(parentGroupId);
308                    }
309    
310                    Long liveGroupId = (Long)attributes.get("liveGroupId");
311    
312                    if (liveGroupId != null) {
313                            setLiveGroupId(liveGroupId);
314                    }
315    
316                    String treePath = (String)attributes.get("treePath");
317    
318                    if (treePath != null) {
319                            setTreePath(treePath);
320                    }
321    
322                    String name = (String)attributes.get("name");
323    
324                    if (name != null) {
325                            setName(name);
326                    }
327    
328                    String description = (String)attributes.get("description");
329    
330                    if (description != null) {
331                            setDescription(description);
332                    }
333    
334                    Integer type = (Integer)attributes.get("type");
335    
336                    if (type != null) {
337                            setType(type);
338                    }
339    
340                    String typeSettings = (String)attributes.get("typeSettings");
341    
342                    if (typeSettings != null) {
343                            setTypeSettings(typeSettings);
344                    }
345    
346                    Boolean manualMembership = (Boolean)attributes.get("manualMembership");
347    
348                    if (manualMembership != null) {
349                            setManualMembership(manualMembership);
350                    }
351    
352                    Integer membershipRestriction = (Integer)attributes.get(
353                                    "membershipRestriction");
354    
355                    if (membershipRestriction != null) {
356                            setMembershipRestriction(membershipRestriction);
357                    }
358    
359                    String friendlyURL = (String)attributes.get("friendlyURL");
360    
361                    if (friendlyURL != null) {
362                            setFriendlyURL(friendlyURL);
363                    }
364    
365                    Boolean site = (Boolean)attributes.get("site");
366    
367                    if (site != null) {
368                            setSite(site);
369                    }
370    
371                    Integer remoteStagingGroupCount = (Integer)attributes.get(
372                                    "remoteStagingGroupCount");
373    
374                    if (remoteStagingGroupCount != null) {
375                            setRemoteStagingGroupCount(remoteStagingGroupCount);
376                    }
377    
378                    Boolean active = (Boolean)attributes.get("active");
379    
380                    if (active != null) {
381                            setActive(active);
382                    }
383            }
384    
385            @JSON
386            @Override
387            public String getUuid() {
388                    if (_uuid == null) {
389                            return StringPool.BLANK;
390                    }
391                    else {
392                            return _uuid;
393                    }
394            }
395    
396            @Override
397            public void setUuid(String uuid) {
398                    if (_originalUuid == null) {
399                            _originalUuid = _uuid;
400                    }
401    
402                    _uuid = uuid;
403            }
404    
405            public String getOriginalUuid() {
406                    return GetterUtil.getString(_originalUuid);
407            }
408    
409            @JSON
410            @Override
411            public long getGroupId() {
412                    return _groupId;
413            }
414    
415            @Override
416            public void setGroupId(long groupId) {
417                    _columnBitmask |= GROUPID_COLUMN_BITMASK;
418    
419                    if (!_setOriginalGroupId) {
420                            _setOriginalGroupId = true;
421    
422                            _originalGroupId = _groupId;
423                    }
424    
425                    _groupId = groupId;
426            }
427    
428            public long getOriginalGroupId() {
429                    return _originalGroupId;
430            }
431    
432            @JSON
433            @Override
434            public long getCompanyId() {
435                    return _companyId;
436            }
437    
438            @Override
439            public void setCompanyId(long companyId) {
440                    _columnBitmask |= COMPANYID_COLUMN_BITMASK;
441    
442                    if (!_setOriginalCompanyId) {
443                            _setOriginalCompanyId = true;
444    
445                            _originalCompanyId = _companyId;
446                    }
447    
448                    _companyId = companyId;
449            }
450    
451            public long getOriginalCompanyId() {
452                    return _originalCompanyId;
453            }
454    
455            @JSON
456            @Override
457            public long getCreatorUserId() {
458                    return _creatorUserId;
459            }
460    
461            @Override
462            public void setCreatorUserId(long creatorUserId) {
463                    _creatorUserId = creatorUserId;
464            }
465    
466            @Override
467            public String getCreatorUserUuid() throws SystemException {
468                    return PortalUtil.getUserValue(getCreatorUserId(), "uuid",
469                            _creatorUserUuid);
470            }
471    
472            @Override
473            public void setCreatorUserUuid(String creatorUserUuid) {
474                    _creatorUserUuid = creatorUserUuid;
475            }
476    
477            @Override
478            public String getClassName() {
479                    if (getClassNameId() <= 0) {
480                            return StringPool.BLANK;
481                    }
482    
483                    return PortalUtil.getClassName(getClassNameId());
484            }
485    
486            @Override
487            public void setClassName(String className) {
488                    long classNameId = 0;
489    
490                    if (Validator.isNotNull(className)) {
491                            classNameId = PortalUtil.getClassNameId(className);
492                    }
493    
494                    setClassNameId(classNameId);
495            }
496    
497            @JSON
498            @Override
499            public long getClassNameId() {
500                    return _classNameId;
501            }
502    
503            @Override
504            public void setClassNameId(long classNameId) {
505                    _columnBitmask |= CLASSNAMEID_COLUMN_BITMASK;
506    
507                    if (!_setOriginalClassNameId) {
508                            _setOriginalClassNameId = true;
509    
510                            _originalClassNameId = _classNameId;
511                    }
512    
513                    _classNameId = classNameId;
514            }
515    
516            public long getOriginalClassNameId() {
517                    return _originalClassNameId;
518            }
519    
520            @JSON
521            @Override
522            public long getClassPK() {
523                    return _classPK;
524            }
525    
526            @Override
527            public void setClassPK(long classPK) {
528                    _columnBitmask |= CLASSPK_COLUMN_BITMASK;
529    
530                    if (!_setOriginalClassPK) {
531                            _setOriginalClassPK = true;
532    
533                            _originalClassPK = _classPK;
534                    }
535    
536                    _classPK = classPK;
537            }
538    
539            public long getOriginalClassPK() {
540                    return _originalClassPK;
541            }
542    
543            @JSON
544            @Override
545            public long getParentGroupId() {
546                    return _parentGroupId;
547            }
548    
549            @Override
550            public void setParentGroupId(long parentGroupId) {
551                    _columnBitmask |= PARENTGROUPID_COLUMN_BITMASK;
552    
553                    if (!_setOriginalParentGroupId) {
554                            _setOriginalParentGroupId = true;
555    
556                            _originalParentGroupId = _parentGroupId;
557                    }
558    
559                    _parentGroupId = parentGroupId;
560            }
561    
562            public long getOriginalParentGroupId() {
563                    return _originalParentGroupId;
564            }
565    
566            @JSON
567            @Override
568            public long getLiveGroupId() {
569                    return _liveGroupId;
570            }
571    
572            @Override
573            public void setLiveGroupId(long liveGroupId) {
574                    _columnBitmask |= LIVEGROUPID_COLUMN_BITMASK;
575    
576                    if (!_setOriginalLiveGroupId) {
577                            _setOriginalLiveGroupId = true;
578    
579                            _originalLiveGroupId = _liveGroupId;
580                    }
581    
582                    _liveGroupId = liveGroupId;
583            }
584    
585            public long getOriginalLiveGroupId() {
586                    return _originalLiveGroupId;
587            }
588    
589            @JSON
590            @Override
591            public String getTreePath() {
592                    if (_treePath == null) {
593                            return StringPool.BLANK;
594                    }
595                    else {
596                            return _treePath;
597                    }
598            }
599    
600            @Override
601            public void setTreePath(String treePath) {
602                    _treePath = treePath;
603            }
604    
605            @JSON
606            @Override
607            public String getName() {
608                    if (_name == null) {
609                            return StringPool.BLANK;
610                    }
611                    else {
612                            return _name;
613                    }
614            }
615    
616            @Override
617            public void setName(String name) {
618                    _columnBitmask = -1L;
619    
620                    if (_originalName == null) {
621                            _originalName = _name;
622                    }
623    
624                    _name = name;
625            }
626    
627            public String getOriginalName() {
628                    return GetterUtil.getString(_originalName);
629            }
630    
631            @JSON
632            @Override
633            public String getDescription() {
634                    if (_description == null) {
635                            return StringPool.BLANK;
636                    }
637                    else {
638                            return _description;
639                    }
640            }
641    
642            @Override
643            public void setDescription(String description) {
644                    _description = description;
645            }
646    
647            @JSON
648            @Override
649            public int getType() {
650                    return _type;
651            }
652    
653            @Override
654            public void setType(int type) {
655                    _columnBitmask |= TYPE_COLUMN_BITMASK;
656    
657                    if (!_setOriginalType) {
658                            _setOriginalType = true;
659    
660                            _originalType = _type;
661                    }
662    
663                    _type = type;
664            }
665    
666            public int getOriginalType() {
667                    return _originalType;
668            }
669    
670            @JSON
671            @Override
672            public String getTypeSettings() {
673                    if (_typeSettings == null) {
674                            return StringPool.BLANK;
675                    }
676                    else {
677                            return _typeSettings;
678                    }
679            }
680    
681            @Override
682            public void setTypeSettings(String typeSettings) {
683                    _typeSettings = typeSettings;
684            }
685    
686            @JSON
687            @Override
688            public boolean getManualMembership() {
689                    return _manualMembership;
690            }
691    
692            @Override
693            public boolean isManualMembership() {
694                    return _manualMembership;
695            }
696    
697            @Override
698            public void setManualMembership(boolean manualMembership) {
699                    _manualMembership = manualMembership;
700            }
701    
702            @JSON
703            @Override
704            public int getMembershipRestriction() {
705                    return _membershipRestriction;
706            }
707    
708            @Override
709            public void setMembershipRestriction(int membershipRestriction) {
710                    _membershipRestriction = membershipRestriction;
711            }
712    
713            @JSON
714            @Override
715            public String getFriendlyURL() {
716                    if (_friendlyURL == null) {
717                            return StringPool.BLANK;
718                    }
719                    else {
720                            return _friendlyURL;
721                    }
722            }
723    
724            @Override
725            public void setFriendlyURL(String friendlyURL) {
726                    _columnBitmask |= FRIENDLYURL_COLUMN_BITMASK;
727    
728                    if (_originalFriendlyURL == null) {
729                            _originalFriendlyURL = _friendlyURL;
730                    }
731    
732                    _friendlyURL = friendlyURL;
733            }
734    
735            public String getOriginalFriendlyURL() {
736                    return GetterUtil.getString(_originalFriendlyURL);
737            }
738    
739            @JSON
740            @Override
741            public boolean getSite() {
742                    return _site;
743            }
744    
745            @Override
746            public boolean isSite() {
747                    return _site;
748            }
749    
750            @Override
751            public void setSite(boolean site) {
752                    _columnBitmask |= SITE_COLUMN_BITMASK;
753    
754                    if (!_setOriginalSite) {
755                            _setOriginalSite = true;
756    
757                            _originalSite = _site;
758                    }
759    
760                    _site = site;
761            }
762    
763            public boolean getOriginalSite() {
764                    return _originalSite;
765            }
766    
767            @JSON
768            @Override
769            public int getRemoteStagingGroupCount() {
770                    return _remoteStagingGroupCount;
771            }
772    
773            @Override
774            public void setRemoteStagingGroupCount(int remoteStagingGroupCount) {
775                    _remoteStagingGroupCount = remoteStagingGroupCount;
776            }
777    
778            @JSON
779            @Override
780            public boolean getActive() {
781                    return _active;
782            }
783    
784            @Override
785            public boolean isActive() {
786                    return _active;
787            }
788    
789            @Override
790            public void setActive(boolean active) {
791                    _columnBitmask |= ACTIVE_COLUMN_BITMASK;
792    
793                    if (!_setOriginalActive) {
794                            _setOriginalActive = true;
795    
796                            _originalActive = _active;
797                    }
798    
799                    _active = active;
800            }
801    
802            public boolean getOriginalActive() {
803                    return _originalActive;
804            }
805    
806            public long getColumnBitmask() {
807                    return _columnBitmask;
808            }
809    
810            @Override
811            public ExpandoBridge getExpandoBridge() {
812                    return ExpandoBridgeFactoryUtil.getExpandoBridge(getCompanyId(),
813                            Group.class.getName(), getPrimaryKey());
814            }
815    
816            @Override
817            public void setExpandoBridgeAttributes(ServiceContext serviceContext) {
818                    ExpandoBridge expandoBridge = getExpandoBridge();
819    
820                    expandoBridge.setAttributes(serviceContext);
821            }
822    
823            @Override
824            public Group toEscapedModel() {
825                    if (_escapedModel == null) {
826                            _escapedModel = (Group)ProxyUtil.newProxyInstance(_classLoader,
827                                            _escapedModelInterfaces, new AutoEscapeBeanHandler(this));
828                    }
829    
830                    return _escapedModel;
831            }
832    
833            @Override
834            public Object clone() {
835                    GroupImpl groupImpl = new GroupImpl();
836    
837                    groupImpl.setUuid(getUuid());
838                    groupImpl.setGroupId(getGroupId());
839                    groupImpl.setCompanyId(getCompanyId());
840                    groupImpl.setCreatorUserId(getCreatorUserId());
841                    groupImpl.setClassNameId(getClassNameId());
842                    groupImpl.setClassPK(getClassPK());
843                    groupImpl.setParentGroupId(getParentGroupId());
844                    groupImpl.setLiveGroupId(getLiveGroupId());
845                    groupImpl.setTreePath(getTreePath());
846                    groupImpl.setName(getName());
847                    groupImpl.setDescription(getDescription());
848                    groupImpl.setType(getType());
849                    groupImpl.setTypeSettings(getTypeSettings());
850                    groupImpl.setManualMembership(getManualMembership());
851                    groupImpl.setMembershipRestriction(getMembershipRestriction());
852                    groupImpl.setFriendlyURL(getFriendlyURL());
853                    groupImpl.setSite(getSite());
854                    groupImpl.setRemoteStagingGroupCount(getRemoteStagingGroupCount());
855                    groupImpl.setActive(getActive());
856    
857                    groupImpl.resetOriginalValues();
858    
859                    return groupImpl;
860            }
861    
862            @Override
863            public int compareTo(Group group) {
864                    int value = 0;
865    
866                    value = getName().compareToIgnoreCase(group.getName());
867    
868                    if (value != 0) {
869                            return value;
870                    }
871    
872                    return 0;
873            }
874    
875            @Override
876            public boolean equals(Object obj) {
877                    if (this == obj) {
878                            return true;
879                    }
880    
881                    if (!(obj instanceof Group)) {
882                            return false;
883                    }
884    
885                    Group group = (Group)obj;
886    
887                    long primaryKey = group.getPrimaryKey();
888    
889                    if (getPrimaryKey() == primaryKey) {
890                            return true;
891                    }
892                    else {
893                            return false;
894                    }
895            }
896    
897            @Override
898            public int hashCode() {
899                    return (int)getPrimaryKey();
900            }
901    
902            @Override
903            public void resetOriginalValues() {
904                    GroupModelImpl groupModelImpl = this;
905    
906                    groupModelImpl._originalUuid = groupModelImpl._uuid;
907    
908                    groupModelImpl._originalGroupId = groupModelImpl._groupId;
909    
910                    groupModelImpl._setOriginalGroupId = false;
911    
912                    groupModelImpl._originalCompanyId = groupModelImpl._companyId;
913    
914                    groupModelImpl._setOriginalCompanyId = false;
915    
916                    groupModelImpl._originalClassNameId = groupModelImpl._classNameId;
917    
918                    groupModelImpl._setOriginalClassNameId = false;
919    
920                    groupModelImpl._originalClassPK = groupModelImpl._classPK;
921    
922                    groupModelImpl._setOriginalClassPK = false;
923    
924                    groupModelImpl._originalParentGroupId = groupModelImpl._parentGroupId;
925    
926                    groupModelImpl._setOriginalParentGroupId = false;
927    
928                    groupModelImpl._originalLiveGroupId = groupModelImpl._liveGroupId;
929    
930                    groupModelImpl._setOriginalLiveGroupId = false;
931    
932                    groupModelImpl._originalName = groupModelImpl._name;
933    
934                    groupModelImpl._originalType = groupModelImpl._type;
935    
936                    groupModelImpl._setOriginalType = false;
937    
938                    groupModelImpl._originalFriendlyURL = groupModelImpl._friendlyURL;
939    
940                    groupModelImpl._originalSite = groupModelImpl._site;
941    
942                    groupModelImpl._setOriginalSite = false;
943    
944                    groupModelImpl._originalActive = groupModelImpl._active;
945    
946                    groupModelImpl._setOriginalActive = false;
947    
948                    groupModelImpl._columnBitmask = 0;
949            }
950    
951            @Override
952            public CacheModel<Group> toCacheModel() {
953                    GroupCacheModel groupCacheModel = new GroupCacheModel();
954    
955                    groupCacheModel.uuid = getUuid();
956    
957                    String uuid = groupCacheModel.uuid;
958    
959                    if ((uuid != null) && (uuid.length() == 0)) {
960                            groupCacheModel.uuid = null;
961                    }
962    
963                    groupCacheModel.groupId = getGroupId();
964    
965                    groupCacheModel.companyId = getCompanyId();
966    
967                    groupCacheModel.creatorUserId = getCreatorUserId();
968    
969                    groupCacheModel.classNameId = getClassNameId();
970    
971                    groupCacheModel.classPK = getClassPK();
972    
973                    groupCacheModel.parentGroupId = getParentGroupId();
974    
975                    groupCacheModel.liveGroupId = getLiveGroupId();
976    
977                    groupCacheModel.treePath = getTreePath();
978    
979                    String treePath = groupCacheModel.treePath;
980    
981                    if ((treePath != null) && (treePath.length() == 0)) {
982                            groupCacheModel.treePath = null;
983                    }
984    
985                    groupCacheModel.name = getName();
986    
987                    String name = groupCacheModel.name;
988    
989                    if ((name != null) && (name.length() == 0)) {
990                            groupCacheModel.name = null;
991                    }
992    
993                    groupCacheModel.description = getDescription();
994    
995                    String description = groupCacheModel.description;
996    
997                    if ((description != null) && (description.length() == 0)) {
998                            groupCacheModel.description = null;
999                    }
1000    
1001                    groupCacheModel.type = getType();
1002    
1003                    groupCacheModel.typeSettings = getTypeSettings();
1004    
1005                    String typeSettings = groupCacheModel.typeSettings;
1006    
1007                    if ((typeSettings != null) && (typeSettings.length() == 0)) {
1008                            groupCacheModel.typeSettings = null;
1009                    }
1010    
1011                    groupCacheModel.manualMembership = getManualMembership();
1012    
1013                    groupCacheModel.membershipRestriction = getMembershipRestriction();
1014    
1015                    groupCacheModel.friendlyURL = getFriendlyURL();
1016    
1017                    String friendlyURL = groupCacheModel.friendlyURL;
1018    
1019                    if ((friendlyURL != null) && (friendlyURL.length() == 0)) {
1020                            groupCacheModel.friendlyURL = null;
1021                    }
1022    
1023                    groupCacheModel.site = getSite();
1024    
1025                    groupCacheModel.remoteStagingGroupCount = getRemoteStagingGroupCount();
1026    
1027                    groupCacheModel.active = getActive();
1028    
1029                    return groupCacheModel;
1030            }
1031    
1032            @Override
1033            public String toString() {
1034                    StringBundler sb = new StringBundler(39);
1035    
1036                    sb.append("{uuid=");
1037                    sb.append(getUuid());
1038                    sb.append(", groupId=");
1039                    sb.append(getGroupId());
1040                    sb.append(", companyId=");
1041                    sb.append(getCompanyId());
1042                    sb.append(", creatorUserId=");
1043                    sb.append(getCreatorUserId());
1044                    sb.append(", classNameId=");
1045                    sb.append(getClassNameId());
1046                    sb.append(", classPK=");
1047                    sb.append(getClassPK());
1048                    sb.append(", parentGroupId=");
1049                    sb.append(getParentGroupId());
1050                    sb.append(", liveGroupId=");
1051                    sb.append(getLiveGroupId());
1052                    sb.append(", treePath=");
1053                    sb.append(getTreePath());
1054                    sb.append(", name=");
1055                    sb.append(getName());
1056                    sb.append(", description=");
1057                    sb.append(getDescription());
1058                    sb.append(", type=");
1059                    sb.append(getType());
1060                    sb.append(", typeSettings=");
1061                    sb.append(getTypeSettings());
1062                    sb.append(", manualMembership=");
1063                    sb.append(getManualMembership());
1064                    sb.append(", membershipRestriction=");
1065                    sb.append(getMembershipRestriction());
1066                    sb.append(", friendlyURL=");
1067                    sb.append(getFriendlyURL());
1068                    sb.append(", site=");
1069                    sb.append(getSite());
1070                    sb.append(", remoteStagingGroupCount=");
1071                    sb.append(getRemoteStagingGroupCount());
1072                    sb.append(", active=");
1073                    sb.append(getActive());
1074                    sb.append("}");
1075    
1076                    return sb.toString();
1077            }
1078    
1079            @Override
1080            public String toXmlString() {
1081                    StringBundler sb = new StringBundler(61);
1082    
1083                    sb.append("<model><model-name>");
1084                    sb.append("com.liferay.portal.model.Group");
1085                    sb.append("</model-name>");
1086    
1087                    sb.append(
1088                            "<column><column-name>uuid</column-name><column-value><![CDATA[");
1089                    sb.append(getUuid());
1090                    sb.append("]]></column-value></column>");
1091                    sb.append(
1092                            "<column><column-name>groupId</column-name><column-value><![CDATA[");
1093                    sb.append(getGroupId());
1094                    sb.append("]]></column-value></column>");
1095                    sb.append(
1096                            "<column><column-name>companyId</column-name><column-value><![CDATA[");
1097                    sb.append(getCompanyId());
1098                    sb.append("]]></column-value></column>");
1099                    sb.append(
1100                            "<column><column-name>creatorUserId</column-name><column-value><![CDATA[");
1101                    sb.append(getCreatorUserId());
1102                    sb.append("]]></column-value></column>");
1103                    sb.append(
1104                            "<column><column-name>classNameId</column-name><column-value><![CDATA[");
1105                    sb.append(getClassNameId());
1106                    sb.append("]]></column-value></column>");
1107                    sb.append(
1108                            "<column><column-name>classPK</column-name><column-value><![CDATA[");
1109                    sb.append(getClassPK());
1110                    sb.append("]]></column-value></column>");
1111                    sb.append(
1112                            "<column><column-name>parentGroupId</column-name><column-value><![CDATA[");
1113                    sb.append(getParentGroupId());
1114                    sb.append("]]></column-value></column>");
1115                    sb.append(
1116                            "<column><column-name>liveGroupId</column-name><column-value><![CDATA[");
1117                    sb.append(getLiveGroupId());
1118                    sb.append("]]></column-value></column>");
1119                    sb.append(
1120                            "<column><column-name>treePath</column-name><column-value><![CDATA[");
1121                    sb.append(getTreePath());
1122                    sb.append("]]></column-value></column>");
1123                    sb.append(
1124                            "<column><column-name>name</column-name><column-value><![CDATA[");
1125                    sb.append(getName());
1126                    sb.append("]]></column-value></column>");
1127                    sb.append(
1128                            "<column><column-name>description</column-name><column-value><![CDATA[");
1129                    sb.append(getDescription());
1130                    sb.append("]]></column-value></column>");
1131                    sb.append(
1132                            "<column><column-name>type</column-name><column-value><![CDATA[");
1133                    sb.append(getType());
1134                    sb.append("]]></column-value></column>");
1135                    sb.append(
1136                            "<column><column-name>typeSettings</column-name><column-value><![CDATA[");
1137                    sb.append(getTypeSettings());
1138                    sb.append("]]></column-value></column>");
1139                    sb.append(
1140                            "<column><column-name>manualMembership</column-name><column-value><![CDATA[");
1141                    sb.append(getManualMembership());
1142                    sb.append("]]></column-value></column>");
1143                    sb.append(
1144                            "<column><column-name>membershipRestriction</column-name><column-value><![CDATA[");
1145                    sb.append(getMembershipRestriction());
1146                    sb.append("]]></column-value></column>");
1147                    sb.append(
1148                            "<column><column-name>friendlyURL</column-name><column-value><![CDATA[");
1149                    sb.append(getFriendlyURL());
1150                    sb.append("]]></column-value></column>");
1151                    sb.append(
1152                            "<column><column-name>site</column-name><column-value><![CDATA[");
1153                    sb.append(getSite());
1154                    sb.append("]]></column-value></column>");
1155                    sb.append(
1156                            "<column><column-name>remoteStagingGroupCount</column-name><column-value><![CDATA[");
1157                    sb.append(getRemoteStagingGroupCount());
1158                    sb.append("]]></column-value></column>");
1159                    sb.append(
1160                            "<column><column-name>active</column-name><column-value><![CDATA[");
1161                    sb.append(getActive());
1162                    sb.append("]]></column-value></column>");
1163    
1164                    sb.append("</model>");
1165    
1166                    return sb.toString();
1167            }
1168    
1169            private static ClassLoader _classLoader = Group.class.getClassLoader();
1170            private static Class<?>[] _escapedModelInterfaces = new Class[] { Group.class };
1171            private String _uuid;
1172            private String _originalUuid;
1173            private long _groupId;
1174            private long _originalGroupId;
1175            private boolean _setOriginalGroupId;
1176            private long _companyId;
1177            private long _originalCompanyId;
1178            private boolean _setOriginalCompanyId;
1179            private long _creatorUserId;
1180            private String _creatorUserUuid;
1181            private long _classNameId;
1182            private long _originalClassNameId;
1183            private boolean _setOriginalClassNameId;
1184            private long _classPK;
1185            private long _originalClassPK;
1186            private boolean _setOriginalClassPK;
1187            private long _parentGroupId;
1188            private long _originalParentGroupId;
1189            private boolean _setOriginalParentGroupId;
1190            private long _liveGroupId;
1191            private long _originalLiveGroupId;
1192            private boolean _setOriginalLiveGroupId;
1193            private String _treePath;
1194            private String _name;
1195            private String _originalName;
1196            private String _description;
1197            private int _type;
1198            private int _originalType;
1199            private boolean _setOriginalType;
1200            private String _typeSettings;
1201            private boolean _manualMembership;
1202            private int _membershipRestriction;
1203            private String _friendlyURL;
1204            private String _originalFriendlyURL;
1205            private boolean _site;
1206            private boolean _originalSite;
1207            private boolean _setOriginalSite;
1208            private int _remoteStagingGroupCount;
1209            private boolean _active;
1210            private boolean _originalActive;
1211            private boolean _setOriginalActive;
1212            private long _columnBitmask;
1213            private Group _escapedModel;
1214    }