Java tutorial
/** * Copyright (c) 2000-present Liferay, Inc. All rights reserved. * * This library is free software; you can redistribute it and/or modify it under * the terms of the GNU Lesser General Public License as published by the Free * Software Foundation; either version 2.1 of the License, or (at your option) * any later version. * * This library is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more * details. */ package com.liferay.gs.hack.model.impl; import aQute.bnd.annotation.ProviderType; import com.liferay.expando.kernel.model.ExpandoBridge; import com.liferay.expando.kernel.util.ExpandoBridgeFactoryUtil; import com.liferay.exportimport.kernel.lar.StagedModelType; import com.liferay.gs.hack.model.Timesheet; import com.liferay.gs.hack.model.TimesheetModel; import com.liferay.gs.hack.model.TimesheetSoap; import com.liferay.portal.kernel.bean.AutoEscapeBeanHandler; import com.liferay.portal.kernel.exception.PortalException; import com.liferay.portal.kernel.json.JSON; import com.liferay.portal.kernel.model.CacheModel; import com.liferay.portal.kernel.model.User; import com.liferay.portal.kernel.model.impl.BaseModelImpl; import com.liferay.portal.kernel.service.ServiceContext; import com.liferay.portal.kernel.service.UserLocalServiceUtil; import com.liferay.portal.kernel.util.DateUtil; import com.liferay.portal.kernel.util.GetterUtil; import com.liferay.portal.kernel.util.PortalUtil; import com.liferay.portal.kernel.util.ProxyUtil; import com.liferay.portal.kernel.util.StringBundler; import com.liferay.portal.kernel.util.StringPool; import java.io.Serializable; import java.sql.Types; import java.util.ArrayList; import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; /** * The base model implementation for the Timesheet service. Represents a row in the "gw_Timesheet" database table, with each column mapped to a property of this class. * * <p> * This implementation and its corresponding interface {@link TimesheetModel} exist only as a container for the default property accessors generated by ServiceBuilder. Helper methods and all application logic should be put in {@link TimesheetImpl}. * </p> * * @author Brian Wing Shun Chan * @see TimesheetImpl * @see Timesheet * @see TimesheetModel * @generated */ @JSON(strict = true) @ProviderType public class TimesheetModelImpl extends BaseModelImpl<Timesheet> implements TimesheetModel { /* * NOTE FOR DEVELOPERS: * * Never modify or reference this class directly. All methods that expect a timesheet model instance should use the {@link Timesheet} interface instead. */ public static final String TABLE_NAME = "gw_Timesheet"; public static final Object[][] TABLE_COLUMNS = { { "uuid_", Types.VARCHAR }, { "timesheetId", Types.BIGINT }, { "groupId", Types.BIGINT }, { "userId", Types.BIGINT }, { "companyId", Types.BIGINT }, { "userName", Types.VARCHAR }, { "createDate", Types.TIMESTAMP }, { "modifiedDate", Types.TIMESTAMP }, { "startDate", Types.TIMESTAMP }, { "endDate", Types.TIMESTAMP }, { "status", Types.VARCHAR } }; public static final Map<String, Integer> TABLE_COLUMNS_MAP = new HashMap<String, Integer>(); static { TABLE_COLUMNS_MAP.put("uuid_", Types.VARCHAR); TABLE_COLUMNS_MAP.put("timesheetId", Types.BIGINT); TABLE_COLUMNS_MAP.put("groupId", Types.BIGINT); TABLE_COLUMNS_MAP.put("userId", Types.BIGINT); TABLE_COLUMNS_MAP.put("companyId", Types.BIGINT); TABLE_COLUMNS_MAP.put("userName", Types.VARCHAR); TABLE_COLUMNS_MAP.put("createDate", Types.TIMESTAMP); TABLE_COLUMNS_MAP.put("modifiedDate", Types.TIMESTAMP); TABLE_COLUMNS_MAP.put("startDate", Types.TIMESTAMP); TABLE_COLUMNS_MAP.put("endDate", Types.TIMESTAMP); TABLE_COLUMNS_MAP.put("status", Types.VARCHAR); } public static final String TABLE_SQL_CREATE = "create table gw_Timesheet (uuid_ VARCHAR(75) null,timesheetId LONG not null primary key,groupId LONG,userId LONG,companyId LONG,userName VARCHAR(75) null,createDate DATE null,modifiedDate DATE null,startDate DATE null,endDate DATE null,status VARCHAR(75) null)"; public static final String TABLE_SQL_DROP = "drop table gw_Timesheet"; public static final String ORDER_BY_JPQL = " ORDER BY timesheet.startDate ASC"; public static final String ORDER_BY_SQL = " ORDER BY gw_Timesheet.startDate ASC"; public static final String DATA_SOURCE = "liferayDataSource"; public static final String SESSION_FACTORY = "liferaySessionFactory"; public static final String TX_MANAGER = "liferayTransactionManager"; public static final boolean ENTITY_CACHE_ENABLED = GetterUtil .getBoolean(com.liferay.gs.hack.service.util.ServiceProps .get("value.object.entity.cache.enabled.com.liferay.gs.hack.model.Timesheet"), true); public static final boolean FINDER_CACHE_ENABLED = GetterUtil .getBoolean(com.liferay.gs.hack.service.util.ServiceProps .get("value.object.finder.cache.enabled.com.liferay.gs.hack.model.Timesheet"), true); public static final boolean COLUMN_BITMASK_ENABLED = GetterUtil .getBoolean(com.liferay.gs.hack.service.util.ServiceProps .get("value.object.column.bitmask.enabled.com.liferay.gs.hack.model.Timesheet"), true); public static final long COMPANYID_COLUMN_BITMASK = 1L; public static final long ENDDATE_COLUMN_BITMASK = 2L; public static final long GROUPID_COLUMN_BITMASK = 4L; public static final long STARTDATE_COLUMN_BITMASK = 8L; public static final long STATUS_COLUMN_BITMASK = 16L; public static final long USERID_COLUMN_BITMASK = 32L; public static final long UUID_COLUMN_BITMASK = 64L; /** * Converts the soap model instance into a normal model instance. * * @param soapModel the soap model instance to convert * @return the normal model instance */ public static Timesheet toModel(TimesheetSoap soapModel) { if (soapModel == null) { return null; } Timesheet model = new TimesheetImpl(); model.setUuid(soapModel.getUuid()); model.setTimesheetId(soapModel.getTimesheetId()); model.setGroupId(soapModel.getGroupId()); model.setUserId(soapModel.getUserId()); model.setCompanyId(soapModel.getCompanyId()); model.setUserName(soapModel.getUserName()); model.setCreateDate(soapModel.getCreateDate()); model.setModifiedDate(soapModel.getModifiedDate()); model.setStartDate(soapModel.getStartDate()); model.setEndDate(soapModel.getEndDate()); model.setStatus(soapModel.getStatus()); return model; } /** * Converts the soap model instances into normal model instances. * * @param soapModels the soap model instances to convert * @return the normal model instances */ public static List<Timesheet> toModels(TimesheetSoap[] soapModels) { if (soapModels == null) { return null; } List<Timesheet> models = new ArrayList<Timesheet>(soapModels.length); for (TimesheetSoap soapModel : soapModels) { models.add(toModel(soapModel)); } return models; } public static final long LOCK_EXPIRATION_TIME = GetterUtil.getLong(com.liferay.gs.hack.service.util.ServiceProps .get("lock.expiration.time.com.liferay.gs.hack.model.Timesheet")); public TimesheetModelImpl() { } @Override public long getPrimaryKey() { return _timesheetId; } @Override public void setPrimaryKey(long primaryKey) { setTimesheetId(primaryKey); } @Override public Serializable getPrimaryKeyObj() { return _timesheetId; } @Override public void setPrimaryKeyObj(Serializable primaryKeyObj) { setPrimaryKey(((Long) primaryKeyObj).longValue()); } @Override public Class<?> getModelClass() { return Timesheet.class; } @Override public String getModelClassName() { return Timesheet.class.getName(); } @Override public Map<String, Object> getModelAttributes() { Map<String, Object> attributes = new HashMap<String, Object>(); attributes.put("uuid", getUuid()); attributes.put("timesheetId", getTimesheetId()); attributes.put("groupId", getGroupId()); attributes.put("userId", getUserId()); attributes.put("companyId", getCompanyId()); attributes.put("userName", getUserName()); attributes.put("createDate", getCreateDate()); attributes.put("modifiedDate", getModifiedDate()); attributes.put("startDate", getStartDate()); attributes.put("endDate", getEndDate()); attributes.put("status", getStatus()); attributes.put("entityCacheEnabled", isEntityCacheEnabled()); attributes.put("finderCacheEnabled", isFinderCacheEnabled()); return attributes; } @Override public void setModelAttributes(Map<String, Object> attributes) { String uuid = (String) attributes.get("uuid"); if (uuid != null) { setUuid(uuid); } Long timesheetId = (Long) attributes.get("timesheetId"); if (timesheetId != null) { setTimesheetId(timesheetId); } Long groupId = (Long) attributes.get("groupId"); if (groupId != null) { setGroupId(groupId); } Long userId = (Long) attributes.get("userId"); if (userId != null) { setUserId(userId); } Long companyId = (Long) attributes.get("companyId"); if (companyId != null) { setCompanyId(companyId); } String userName = (String) attributes.get("userName"); if (userName != null) { setUserName(userName); } Date createDate = (Date) attributes.get("createDate"); if (createDate != null) { setCreateDate(createDate); } Date modifiedDate = (Date) attributes.get("modifiedDate"); if (modifiedDate != null) { setModifiedDate(modifiedDate); } Date startDate = (Date) attributes.get("startDate"); if (startDate != null) { setStartDate(startDate); } Date endDate = (Date) attributes.get("endDate"); if (endDate != null) { setEndDate(endDate); } String status = (String) attributes.get("status"); if (status != null) { setStatus(status); } } @JSON @Override public String getUuid() { if (_uuid == null) { return StringPool.BLANK; } else { return _uuid; } } @Override public void setUuid(String uuid) { if (_originalUuid == null) { _originalUuid = _uuid; } _uuid = uuid; } public String getOriginalUuid() { return GetterUtil.getString(_originalUuid); } @JSON @Override public long getTimesheetId() { return _timesheetId; } @Override public void setTimesheetId(long timesheetId) { _timesheetId = timesheetId; } @JSON @Override public long getGroupId() { return _groupId; } @Override public void setGroupId(long groupId) { _columnBitmask |= GROUPID_COLUMN_BITMASK; if (!_setOriginalGroupId) { _setOriginalGroupId = true; _originalGroupId = _groupId; } _groupId = groupId; } public long getOriginalGroupId() { return _originalGroupId; } @JSON @Override public long getUserId() { return _userId; } @Override public void setUserId(long userId) { _columnBitmask |= USERID_COLUMN_BITMASK; if (!_setOriginalUserId) { _setOriginalUserId = true; _originalUserId = _userId; } _userId = userId; } @Override public String getUserUuid() { try { User user = UserLocalServiceUtil.getUserById(getUserId()); return user.getUuid(); } catch (PortalException pe) { return StringPool.BLANK; } } @Override public void setUserUuid(String userUuid) { } public long getOriginalUserId() { return _originalUserId; } @JSON @Override public long getCompanyId() { return _companyId; } @Override public void setCompanyId(long companyId) { _columnBitmask |= COMPANYID_COLUMN_BITMASK; if (!_setOriginalCompanyId) { _setOriginalCompanyId = true; _originalCompanyId = _companyId; } _companyId = companyId; } public long getOriginalCompanyId() { return _originalCompanyId; } @JSON @Override public String getUserName() { if (_userName == null) { return StringPool.BLANK; } else { return _userName; } } @Override public void setUserName(String userName) { _userName = userName; } @JSON @Override public Date getCreateDate() { return _createDate; } @Override public void setCreateDate(Date createDate) { _createDate = createDate; } @JSON @Override public Date getModifiedDate() { return _modifiedDate; } public boolean hasSetModifiedDate() { return _setModifiedDate; } @Override public void setModifiedDate(Date modifiedDate) { _setModifiedDate = true; _modifiedDate = modifiedDate; } @JSON @Override public Date getStartDate() { return _startDate; } @Override public void setStartDate(Date startDate) { _columnBitmask = -1L; if (_originalStartDate == null) { _originalStartDate = _startDate; } _startDate = startDate; } public Date getOriginalStartDate() { return _originalStartDate; } @JSON @Override public Date getEndDate() { return _endDate; } @Override public void setEndDate(Date endDate) { _columnBitmask |= ENDDATE_COLUMN_BITMASK; if (_originalEndDate == null) { _originalEndDate = _endDate; } _endDate = endDate; } public Date getOriginalEndDate() { return _originalEndDate; } @JSON @Override public String getStatus() { if (_status == null) { return StringPool.BLANK; } else { return _status; } } @Override public void setStatus(String status) { _columnBitmask |= STATUS_COLUMN_BITMASK; if (_originalStatus == null) { _originalStatus = _status; } _status = status; } public String getOriginalStatus() { return GetterUtil.getString(_originalStatus); } @Override public StagedModelType getStagedModelType() { return new StagedModelType(PortalUtil.getClassNameId(Timesheet.class.getName())); } public long getColumnBitmask() { return _columnBitmask; } @Override public ExpandoBridge getExpandoBridge() { return ExpandoBridgeFactoryUtil.getExpandoBridge(getCompanyId(), Timesheet.class.getName(), getPrimaryKey()); } @Override public void setExpandoBridgeAttributes(ServiceContext serviceContext) { ExpandoBridge expandoBridge = getExpandoBridge(); expandoBridge.setAttributes(serviceContext); } @Override public Timesheet toEscapedModel() { if (_escapedModel == null) { _escapedModel = (Timesheet) ProxyUtil.newProxyInstance(_classLoader, _escapedModelInterfaces, new AutoEscapeBeanHandler(this)); } return _escapedModel; } @Override public Object clone() { TimesheetImpl timesheetImpl = new TimesheetImpl(); timesheetImpl.setUuid(getUuid()); timesheetImpl.setTimesheetId(getTimesheetId()); timesheetImpl.setGroupId(getGroupId()); timesheetImpl.setUserId(getUserId()); timesheetImpl.setCompanyId(getCompanyId()); timesheetImpl.setUserName(getUserName()); timesheetImpl.setCreateDate(getCreateDate()); timesheetImpl.setModifiedDate(getModifiedDate()); timesheetImpl.setStartDate(getStartDate()); timesheetImpl.setEndDate(getEndDate()); timesheetImpl.setStatus(getStatus()); timesheetImpl.resetOriginalValues(); return timesheetImpl; } @Override public int compareTo(Timesheet timesheet) { int value = 0; value = DateUtil.compareTo(getStartDate(), timesheet.getStartDate()); if (value != 0) { return value; } return 0; } @Override public boolean equals(Object obj) { if (this == obj) { return true; } if (!(obj instanceof Timesheet)) { return false; } Timesheet timesheet = (Timesheet) obj; long primaryKey = timesheet.getPrimaryKey(); if (getPrimaryKey() == primaryKey) { return true; } else { return false; } } @Override public int hashCode() { return (int) getPrimaryKey(); } @Override public boolean isEntityCacheEnabled() { return ENTITY_CACHE_ENABLED; } @Override public boolean isFinderCacheEnabled() { return FINDER_CACHE_ENABLED; } @Override public void resetOriginalValues() { TimesheetModelImpl timesheetModelImpl = this; timesheetModelImpl._originalUuid = timesheetModelImpl._uuid; timesheetModelImpl._originalGroupId = timesheetModelImpl._groupId; timesheetModelImpl._setOriginalGroupId = false; timesheetModelImpl._originalUserId = timesheetModelImpl._userId; timesheetModelImpl._setOriginalUserId = false; timesheetModelImpl._originalCompanyId = timesheetModelImpl._companyId; timesheetModelImpl._setOriginalCompanyId = false; timesheetModelImpl._setModifiedDate = false; timesheetModelImpl._originalStartDate = timesheetModelImpl._startDate; timesheetModelImpl._originalEndDate = timesheetModelImpl._endDate; timesheetModelImpl._originalStatus = timesheetModelImpl._status; timesheetModelImpl._columnBitmask = 0; } @Override public CacheModel<Timesheet> toCacheModel() { TimesheetCacheModel timesheetCacheModel = new TimesheetCacheModel(); timesheetCacheModel.uuid = getUuid(); String uuid = timesheetCacheModel.uuid; if ((uuid != null) && (uuid.length() == 0)) { timesheetCacheModel.uuid = null; } timesheetCacheModel.timesheetId = getTimesheetId(); timesheetCacheModel.groupId = getGroupId(); timesheetCacheModel.userId = getUserId(); timesheetCacheModel.companyId = getCompanyId(); timesheetCacheModel.userName = getUserName(); String userName = timesheetCacheModel.userName; if ((userName != null) && (userName.length() == 0)) { timesheetCacheModel.userName = null; } Date createDate = getCreateDate(); if (createDate != null) { timesheetCacheModel.createDate = createDate.getTime(); } else { timesheetCacheModel.createDate = Long.MIN_VALUE; } Date modifiedDate = getModifiedDate(); if (modifiedDate != null) { timesheetCacheModel.modifiedDate = modifiedDate.getTime(); } else { timesheetCacheModel.modifiedDate = Long.MIN_VALUE; } Date startDate = getStartDate(); if (startDate != null) { timesheetCacheModel.startDate = startDate.getTime(); } else { timesheetCacheModel.startDate = Long.MIN_VALUE; } Date endDate = getEndDate(); if (endDate != null) { timesheetCacheModel.endDate = endDate.getTime(); } else { timesheetCacheModel.endDate = Long.MIN_VALUE; } timesheetCacheModel.status = getStatus(); String status = timesheetCacheModel.status; if ((status != null) && (status.length() == 0)) { timesheetCacheModel.status = null; } return timesheetCacheModel; } @Override public String toString() { StringBundler sb = new StringBundler(23); sb.append("{uuid="); sb.append(getUuid()); sb.append(", timesheetId="); sb.append(getTimesheetId()); sb.append(", groupId="); sb.append(getGroupId()); sb.append(", userId="); sb.append(getUserId()); sb.append(", companyId="); sb.append(getCompanyId()); sb.append(", userName="); sb.append(getUserName()); sb.append(", createDate="); sb.append(getCreateDate()); sb.append(", modifiedDate="); sb.append(getModifiedDate()); sb.append(", startDate="); sb.append(getStartDate()); sb.append(", endDate="); sb.append(getEndDate()); sb.append(", status="); sb.append(getStatus()); sb.append("}"); return sb.toString(); } @Override public String toXmlString() { StringBundler sb = new StringBundler(37); sb.append("<model><model-name>"); sb.append("com.liferay.gs.hack.model.Timesheet"); sb.append("</model-name>"); sb.append("<column><column-name>uuid</column-name><column-value><![CDATA["); sb.append(getUuid()); sb.append("]]></column-value></column>"); sb.append("<column><column-name>timesheetId</column-name><column-value><![CDATA["); sb.append(getTimesheetId()); sb.append("]]></column-value></column>"); sb.append("<column><column-name>groupId</column-name><column-value><![CDATA["); sb.append(getGroupId()); sb.append("]]></column-value></column>"); sb.append("<column><column-name>userId</column-name><column-value><![CDATA["); sb.append(getUserId()); sb.append("]]></column-value></column>"); sb.append("<column><column-name>companyId</column-name><column-value><![CDATA["); sb.append(getCompanyId()); sb.append("]]></column-value></column>"); sb.append("<column><column-name>userName</column-name><column-value><![CDATA["); sb.append(getUserName()); sb.append("]]></column-value></column>"); sb.append("<column><column-name>createDate</column-name><column-value><![CDATA["); sb.append(getCreateDate()); sb.append("]]></column-value></column>"); sb.append("<column><column-name>modifiedDate</column-name><column-value><![CDATA["); sb.append(getModifiedDate()); sb.append("]]></column-value></column>"); sb.append("<column><column-name>startDate</column-name><column-value><![CDATA["); sb.append(getStartDate()); sb.append("]]></column-value></column>"); sb.append("<column><column-name>endDate</column-name><column-value><![CDATA["); sb.append(getEndDate()); sb.append("]]></column-value></column>"); sb.append("<column><column-name>status</column-name><column-value><![CDATA["); sb.append(getStatus()); sb.append("]]></column-value></column>"); sb.append("</model>"); return sb.toString(); } private static final ClassLoader _classLoader = Timesheet.class.getClassLoader(); private static final Class<?>[] _escapedModelInterfaces = new Class[] { Timesheet.class }; private String _uuid; private String _originalUuid; private long _timesheetId; private long _groupId; private long _originalGroupId; private boolean _setOriginalGroupId; private long _userId; private long _originalUserId; private boolean _setOriginalUserId; private long _companyId; private long _originalCompanyId; private boolean _setOriginalCompanyId; private String _userName; private Date _createDate; private Date _modifiedDate; private boolean _setModifiedDate; private Date _startDate; private Date _originalStartDate; private Date _endDate; private Date _originalEndDate; private String _status; private String _originalStatus; private long _columnBitmask; private Timesheet _escapedModel; }