001    /**
002     * Copyright (c) 2000-2012 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.model.CacheModel;
025    import com.liferay.portal.model.Team;
026    import com.liferay.portal.model.TeamModel;
027    import com.liferay.portal.model.TeamSoap;
028    import com.liferay.portal.service.ServiceContext;
029    import com.liferay.portal.util.PortalUtil;
030    
031    import com.liferay.portlet.expando.model.ExpandoBridge;
032    import com.liferay.portlet.expando.util.ExpandoBridgeFactoryUtil;
033    
034    import java.io.Serializable;
035    
036    import java.sql.Types;
037    
038    import java.util.ArrayList;
039    import java.util.Date;
040    import java.util.List;
041    
042    /**
043     * The base model implementation for the Team service. Represents a row in the "Team" database table, with each column mapped to a property of this class.
044     *
045     * <p>
046     * This implementation and its corresponding interface {@link com.liferay.portal.model.TeamModel} exist only as a container for the default property accessors generated by ServiceBuilder. Helper methods and all application logic should be put in {@link TeamImpl}.
047     * </p>
048     *
049     * @author Brian Wing Shun Chan
050     * @see TeamImpl
051     * @see com.liferay.portal.model.Team
052     * @see com.liferay.portal.model.TeamModel
053     * @generated
054     */
055    @JSON(strict = true)
056    public class TeamModelImpl extends BaseModelImpl<Team> implements TeamModel {
057            /*
058             * NOTE FOR DEVELOPERS:
059             *
060             * Never modify or reference this class directly. All methods that expect a team model instance should use the {@link com.liferay.portal.model.Team} interface instead.
061             */
062            public static final String TABLE_NAME = "Team";
063            public static final Object[][] TABLE_COLUMNS = {
064                            { "teamId", Types.BIGINT },
065                            { "companyId", Types.BIGINT },
066                            { "userId", Types.BIGINT },
067                            { "userName", Types.VARCHAR },
068                            { "createDate", Types.TIMESTAMP },
069                            { "modifiedDate", Types.TIMESTAMP },
070                            { "groupId", Types.BIGINT },
071                            { "name", Types.VARCHAR },
072                            { "description", Types.VARCHAR }
073                    };
074            public static final String TABLE_SQL_CREATE = "create table Team (teamId LONG not null primary key,companyId LONG,userId LONG,userName VARCHAR(75) null,createDate DATE null,modifiedDate DATE null,groupId LONG,name VARCHAR(75) null,description STRING null)";
075            public static final String TABLE_SQL_DROP = "drop table Team";
076            public static final String ORDER_BY_JPQL = " ORDER BY team.name ASC";
077            public static final String ORDER_BY_SQL = " ORDER BY Team.name ASC";
078            public static final String DATA_SOURCE = "liferayDataSource";
079            public static final String SESSION_FACTORY = "liferaySessionFactory";
080            public static final String TX_MANAGER = "liferayTransactionManager";
081            public static final boolean ENTITY_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
082                                    "value.object.entity.cache.enabled.com.liferay.portal.model.Team"),
083                            true);
084            public static final boolean FINDER_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
085                                    "value.object.finder.cache.enabled.com.liferay.portal.model.Team"),
086                            true);
087            public static final boolean COLUMN_BITMASK_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
088                                    "value.object.column.bitmask.enabled.com.liferay.portal.model.Team"),
089                            true);
090            public static long GROUPID_COLUMN_BITMASK = 1L;
091            public static long NAME_COLUMN_BITMASK = 2L;
092    
093            /**
094             * Converts the soap model instance into a normal model instance.
095             *
096             * @param soapModel the soap model instance to convert
097             * @return the normal model instance
098             */
099            public static Team toModel(TeamSoap soapModel) {
100                    Team model = new TeamImpl();
101    
102                    model.setTeamId(soapModel.getTeamId());
103                    model.setCompanyId(soapModel.getCompanyId());
104                    model.setUserId(soapModel.getUserId());
105                    model.setUserName(soapModel.getUserName());
106                    model.setCreateDate(soapModel.getCreateDate());
107                    model.setModifiedDate(soapModel.getModifiedDate());
108                    model.setGroupId(soapModel.getGroupId());
109                    model.setName(soapModel.getName());
110                    model.setDescription(soapModel.getDescription());
111    
112                    return model;
113            }
114    
115            /**
116             * Converts the soap model instances into normal model instances.
117             *
118             * @param soapModels the soap model instances to convert
119             * @return the normal model instances
120             */
121            public static List<Team> toModels(TeamSoap[] soapModels) {
122                    List<Team> models = new ArrayList<Team>(soapModels.length);
123    
124                    for (TeamSoap soapModel : soapModels) {
125                            models.add(toModel(soapModel));
126                    }
127    
128                    return models;
129            }
130    
131            public static final String MAPPING_TABLE_USERS_TEAMS_NAME = "Users_Teams";
132            public static final Object[][] MAPPING_TABLE_USERS_TEAMS_COLUMNS = {
133                            { "userId", Types.BIGINT },
134                            { "teamId", Types.BIGINT }
135                    };
136            public static final String MAPPING_TABLE_USERS_TEAMS_SQL_CREATE = "create table Users_Teams (userId LONG not null,teamId LONG not null,primary key (userId, teamId))";
137            public static final boolean FINDER_CACHE_ENABLED_USERS_TEAMS = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
138                                    "value.object.finder.cache.enabled.Users_Teams"), true);
139            public static final String MAPPING_TABLE_USERGROUPS_TEAMS_NAME = "UserGroups_Teams";
140            public static final Object[][] MAPPING_TABLE_USERGROUPS_TEAMS_COLUMNS = {
141                            { "userGroupId", Types.BIGINT },
142                            { "teamId", Types.BIGINT }
143                    };
144            public static final String MAPPING_TABLE_USERGROUPS_TEAMS_SQL_CREATE = "create table UserGroups_Teams (userGroupId LONG not null,teamId LONG not null,primary key (userGroupId, teamId))";
145            public static final boolean FINDER_CACHE_ENABLED_USERGROUPS_TEAMS = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
146                                    "value.object.finder.cache.enabled.UserGroups_Teams"), true);
147            public static final long LOCK_EXPIRATION_TIME = GetterUtil.getLong(com.liferay.portal.util.PropsUtil.get(
148                                    "lock.expiration.time.com.liferay.portal.model.Team"));
149    
150            public TeamModelImpl() {
151            }
152    
153            public long getPrimaryKey() {
154                    return _teamId;
155            }
156    
157            public void setPrimaryKey(long primaryKey) {
158                    setTeamId(primaryKey);
159            }
160    
161            public Serializable getPrimaryKeyObj() {
162                    return new Long(_teamId);
163            }
164    
165            public void setPrimaryKeyObj(Serializable primaryKeyObj) {
166                    setPrimaryKey(((Long)primaryKeyObj).longValue());
167            }
168    
169            public Class<?> getModelClass() {
170                    return Team.class;
171            }
172    
173            public String getModelClassName() {
174                    return Team.class.getName();
175            }
176    
177            @JSON
178            public long getTeamId() {
179                    return _teamId;
180            }
181    
182            public void setTeamId(long teamId) {
183                    _teamId = teamId;
184            }
185    
186            @JSON
187            public long getCompanyId() {
188                    return _companyId;
189            }
190    
191            public void setCompanyId(long companyId) {
192                    _companyId = companyId;
193            }
194    
195            @JSON
196            public long getUserId() {
197                    return _userId;
198            }
199    
200            public void setUserId(long userId) {
201                    _userId = userId;
202            }
203    
204            public String getUserUuid() throws SystemException {
205                    return PortalUtil.getUserValue(getUserId(), "uuid", _userUuid);
206            }
207    
208            public void setUserUuid(String userUuid) {
209                    _userUuid = userUuid;
210            }
211    
212            @JSON
213            public String getUserName() {
214                    if (_userName == null) {
215                            return StringPool.BLANK;
216                    }
217                    else {
218                            return _userName;
219                    }
220            }
221    
222            public void setUserName(String userName) {
223                    _userName = userName;
224            }
225    
226            @JSON
227            public Date getCreateDate() {
228                    return _createDate;
229            }
230    
231            public void setCreateDate(Date createDate) {
232                    _createDate = createDate;
233            }
234    
235            @JSON
236            public Date getModifiedDate() {
237                    return _modifiedDate;
238            }
239    
240            public void setModifiedDate(Date modifiedDate) {
241                    _modifiedDate = modifiedDate;
242            }
243    
244            @JSON
245            public long getGroupId() {
246                    return _groupId;
247            }
248    
249            public void setGroupId(long groupId) {
250                    _columnBitmask |= GROUPID_COLUMN_BITMASK;
251    
252                    if (!_setOriginalGroupId) {
253                            _setOriginalGroupId = true;
254    
255                            _originalGroupId = _groupId;
256                    }
257    
258                    _groupId = groupId;
259            }
260    
261            public long getOriginalGroupId() {
262                    return _originalGroupId;
263            }
264    
265            @JSON
266            public String getName() {
267                    if (_name == null) {
268                            return StringPool.BLANK;
269                    }
270                    else {
271                            return _name;
272                    }
273            }
274    
275            public void setName(String name) {
276                    _columnBitmask = -1L;
277    
278                    if (_originalName == null) {
279                            _originalName = _name;
280                    }
281    
282                    _name = name;
283            }
284    
285            public String getOriginalName() {
286                    return GetterUtil.getString(_originalName);
287            }
288    
289            @JSON
290            public String getDescription() {
291                    if (_description == null) {
292                            return StringPool.BLANK;
293                    }
294                    else {
295                            return _description;
296                    }
297            }
298    
299            public void setDescription(String description) {
300                    _description = description;
301            }
302    
303            public long getColumnBitmask() {
304                    return _columnBitmask;
305            }
306    
307            @Override
308            public Team toEscapedModel() {
309                    if (_escapedModelProxy == null) {
310                            _escapedModelProxy = (Team)ProxyUtil.newProxyInstance(_classLoader,
311                                            _escapedModelProxyInterfaces,
312                                            new AutoEscapeBeanHandler(this));
313                    }
314    
315                    return _escapedModelProxy;
316            }
317    
318            @Override
319            public ExpandoBridge getExpandoBridge() {
320                    if (_expandoBridge == null) {
321                            _expandoBridge = ExpandoBridgeFactoryUtil.getExpandoBridge(getCompanyId(),
322                                            Team.class.getName(), getPrimaryKey());
323                    }
324    
325                    return _expandoBridge;
326            }
327    
328            @Override
329            public void setExpandoBridgeAttributes(ServiceContext serviceContext) {
330                    getExpandoBridge().setAttributes(serviceContext);
331            }
332    
333            @Override
334            public Object clone() {
335                    TeamImpl teamImpl = new TeamImpl();
336    
337                    teamImpl.setTeamId(getTeamId());
338                    teamImpl.setCompanyId(getCompanyId());
339                    teamImpl.setUserId(getUserId());
340                    teamImpl.setUserName(getUserName());
341                    teamImpl.setCreateDate(getCreateDate());
342                    teamImpl.setModifiedDate(getModifiedDate());
343                    teamImpl.setGroupId(getGroupId());
344                    teamImpl.setName(getName());
345                    teamImpl.setDescription(getDescription());
346    
347                    teamImpl.resetOriginalValues();
348    
349                    return teamImpl;
350            }
351    
352            public int compareTo(Team team) {
353                    int value = 0;
354    
355                    value = getName().compareTo(team.getName());
356    
357                    if (value != 0) {
358                            return value;
359                    }
360    
361                    return 0;
362            }
363    
364            @Override
365            public boolean equals(Object obj) {
366                    if (obj == null) {
367                            return false;
368                    }
369    
370                    Team team = null;
371    
372                    try {
373                            team = (Team)obj;
374                    }
375                    catch (ClassCastException cce) {
376                            return false;
377                    }
378    
379                    long primaryKey = team.getPrimaryKey();
380    
381                    if (getPrimaryKey() == primaryKey) {
382                            return true;
383                    }
384                    else {
385                            return false;
386                    }
387            }
388    
389            @Override
390            public int hashCode() {
391                    return (int)getPrimaryKey();
392            }
393    
394            @Override
395            public void resetOriginalValues() {
396                    TeamModelImpl teamModelImpl = this;
397    
398                    teamModelImpl._originalGroupId = teamModelImpl._groupId;
399    
400                    teamModelImpl._setOriginalGroupId = false;
401    
402                    teamModelImpl._originalName = teamModelImpl._name;
403    
404                    teamModelImpl._columnBitmask = 0;
405            }
406    
407            @Override
408            public CacheModel<Team> toCacheModel() {
409                    TeamCacheModel teamCacheModel = new TeamCacheModel();
410    
411                    teamCacheModel.teamId = getTeamId();
412    
413                    teamCacheModel.companyId = getCompanyId();
414    
415                    teamCacheModel.userId = getUserId();
416    
417                    teamCacheModel.userName = getUserName();
418    
419                    String userName = teamCacheModel.userName;
420    
421                    if ((userName != null) && (userName.length() == 0)) {
422                            teamCacheModel.userName = null;
423                    }
424    
425                    Date createDate = getCreateDate();
426    
427                    if (createDate != null) {
428                            teamCacheModel.createDate = createDate.getTime();
429                    }
430                    else {
431                            teamCacheModel.createDate = Long.MIN_VALUE;
432                    }
433    
434                    Date modifiedDate = getModifiedDate();
435    
436                    if (modifiedDate != null) {
437                            teamCacheModel.modifiedDate = modifiedDate.getTime();
438                    }
439                    else {
440                            teamCacheModel.modifiedDate = Long.MIN_VALUE;
441                    }
442    
443                    teamCacheModel.groupId = getGroupId();
444    
445                    teamCacheModel.name = getName();
446    
447                    String name = teamCacheModel.name;
448    
449                    if ((name != null) && (name.length() == 0)) {
450                            teamCacheModel.name = null;
451                    }
452    
453                    teamCacheModel.description = getDescription();
454    
455                    String description = teamCacheModel.description;
456    
457                    if ((description != null) && (description.length() == 0)) {
458                            teamCacheModel.description = null;
459                    }
460    
461                    return teamCacheModel;
462            }
463    
464            @Override
465            public String toString() {
466                    StringBundler sb = new StringBundler(19);
467    
468                    sb.append("{teamId=");
469                    sb.append(getTeamId());
470                    sb.append(", companyId=");
471                    sb.append(getCompanyId());
472                    sb.append(", userId=");
473                    sb.append(getUserId());
474                    sb.append(", userName=");
475                    sb.append(getUserName());
476                    sb.append(", createDate=");
477                    sb.append(getCreateDate());
478                    sb.append(", modifiedDate=");
479                    sb.append(getModifiedDate());
480                    sb.append(", groupId=");
481                    sb.append(getGroupId());
482                    sb.append(", name=");
483                    sb.append(getName());
484                    sb.append(", description=");
485                    sb.append(getDescription());
486                    sb.append("}");
487    
488                    return sb.toString();
489            }
490    
491            public String toXmlString() {
492                    StringBundler sb = new StringBundler(31);
493    
494                    sb.append("<model><model-name>");
495                    sb.append("com.liferay.portal.model.Team");
496                    sb.append("</model-name>");
497    
498                    sb.append(
499                            "<column><column-name>teamId</column-name><column-value><![CDATA[");
500                    sb.append(getTeamId());
501                    sb.append("]]></column-value></column>");
502                    sb.append(
503                            "<column><column-name>companyId</column-name><column-value><![CDATA[");
504                    sb.append(getCompanyId());
505                    sb.append("]]></column-value></column>");
506                    sb.append(
507                            "<column><column-name>userId</column-name><column-value><![CDATA[");
508                    sb.append(getUserId());
509                    sb.append("]]></column-value></column>");
510                    sb.append(
511                            "<column><column-name>userName</column-name><column-value><![CDATA[");
512                    sb.append(getUserName());
513                    sb.append("]]></column-value></column>");
514                    sb.append(
515                            "<column><column-name>createDate</column-name><column-value><![CDATA[");
516                    sb.append(getCreateDate());
517                    sb.append("]]></column-value></column>");
518                    sb.append(
519                            "<column><column-name>modifiedDate</column-name><column-value><![CDATA[");
520                    sb.append(getModifiedDate());
521                    sb.append("]]></column-value></column>");
522                    sb.append(
523                            "<column><column-name>groupId</column-name><column-value><![CDATA[");
524                    sb.append(getGroupId());
525                    sb.append("]]></column-value></column>");
526                    sb.append(
527                            "<column><column-name>name</column-name><column-value><![CDATA[");
528                    sb.append(getName());
529                    sb.append("]]></column-value></column>");
530                    sb.append(
531                            "<column><column-name>description</column-name><column-value><![CDATA[");
532                    sb.append(getDescription());
533                    sb.append("]]></column-value></column>");
534    
535                    sb.append("</model>");
536    
537                    return sb.toString();
538            }
539    
540            private static ClassLoader _classLoader = Team.class.getClassLoader();
541            private static Class<?>[] _escapedModelProxyInterfaces = new Class[] {
542                            Team.class
543                    };
544            private long _teamId;
545            private long _companyId;
546            private long _userId;
547            private String _userUuid;
548            private String _userName;
549            private Date _createDate;
550            private Date _modifiedDate;
551            private long _groupId;
552            private long _originalGroupId;
553            private boolean _setOriginalGroupId;
554            private String _name;
555            private String _originalName;
556            private String _description;
557            private transient ExpandoBridge _expandoBridge;
558            private long _columnBitmask;
559            private Team _escapedModelProxy;
560    }