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.demo.todo.model.impl; import aQute.bnd.annotation.ProviderType; import com.liferay.demo.todo.model.Todo; import com.liferay.demo.todo.model.TodoModel; import com.liferay.demo.todo.model.TodoSoap; import com.liferay.expando.kernel.model.ExpandoBridge; import com.liferay.expando.kernel.util.ExpandoBridgeFactoryUtil; import com.liferay.exportimport.kernel.lar.StagedModelType; 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 Todo service. Represents a row in the "todo_Todo" database table, with each column mapped to a property of this class. * * <p> * This implementation and its corresponding interface {@link TodoModel} exist only as a container for the default property accessors generated by ServiceBuilder. Helper methods and all application logic should be put in {@link TodoImpl}. * </p> * * @author Brian Wing Shun Chan * @see TodoImpl * @see Todo * @see TodoModel * @generated */ @JSON(strict = true) @ProviderType public class TodoModelImpl extends BaseModelImpl<Todo> implements TodoModel { /* * NOTE FOR DEVELOPERS: * * Never modify or reference this class directly. All methods that expect a todo model instance should use the {@link Todo} interface instead. */ public static final String TABLE_NAME = "todo_Todo"; public static final Object[][] TABLE_COLUMNS = { { "uuid_", Types.VARCHAR }, { "todoId", Types.BIGINT }, { "groupId", Types.BIGINT }, { "companyId", Types.BIGINT }, { "userId", Types.BIGINT }, { "userName", Types.VARCHAR }, { "createDate", Types.TIMESTAMP }, { "modifiedDate", Types.TIMESTAMP }, { "description", Types.VARCHAR }, { "done", Types.BOOLEAN } }; 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("todoId", Types.BIGINT); TABLE_COLUMNS_MAP.put("groupId", Types.BIGINT); TABLE_COLUMNS_MAP.put("companyId", Types.BIGINT); TABLE_COLUMNS_MAP.put("userId", 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("description", Types.VARCHAR); TABLE_COLUMNS_MAP.put("done", Types.BOOLEAN); } public static final String TABLE_SQL_CREATE = "create table todo_Todo (uuid_ VARCHAR(75) null,todoId LONG not null primary key,groupId LONG,companyId LONG,userId LONG,userName VARCHAR(75) null,createDate DATE null,modifiedDate DATE null,description VARCHAR(75) null,done BOOLEAN)"; public static final String TABLE_SQL_DROP = "drop table todo_Todo"; public static final String ORDER_BY_JPQL = " ORDER BY todo.modifiedDate ASC"; public static final String ORDER_BY_SQL = " ORDER BY todo_Todo.modifiedDate 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.demo.todo.service.util.PropsUtil .get("value.object.entity.cache.enabled.com.liferay.demo.todo.model.Todo"), true); public static final boolean FINDER_CACHE_ENABLED = GetterUtil .getBoolean(com.liferay.demo.todo.service.util.PropsUtil .get("value.object.finder.cache.enabled.com.liferay.demo.todo.model.Todo"), true); public static final boolean COLUMN_BITMASK_ENABLED = GetterUtil .getBoolean(com.liferay.demo.todo.service.util.PropsUtil .get("value.object.column.bitmask.enabled.com.liferay.demo.todo.model.Todo"), true); public static final long COMPANYID_COLUMN_BITMASK = 1L; public static final long DONE_COLUMN_BITMASK = 2L; public static final long GROUPID_COLUMN_BITMASK = 4L; public static final long UUID_COLUMN_BITMASK = 8L; public static final long MODIFIEDDATE_COLUMN_BITMASK = 16L; /** * 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 Todo toModel(TodoSoap soapModel) { if (soapModel == null) { return null; } Todo model = new TodoImpl(); model.setUuid(soapModel.getUuid()); model.setTodoId(soapModel.getTodoId()); model.setGroupId(soapModel.getGroupId()); model.setCompanyId(soapModel.getCompanyId()); model.setUserId(soapModel.getUserId()); model.setUserName(soapModel.getUserName()); model.setCreateDate(soapModel.getCreateDate()); model.setModifiedDate(soapModel.getModifiedDate()); model.setDescription(soapModel.getDescription()); model.setDone(soapModel.getDone()); 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<Todo> toModels(TodoSoap[] soapModels) { if (soapModels == null) { return null; } List<Todo> models = new ArrayList<Todo>(soapModels.length); for (TodoSoap soapModel : soapModels) { models.add(toModel(soapModel)); } return models; } public static final long LOCK_EXPIRATION_TIME = GetterUtil.getLong(com.liferay.demo.todo.service.util.PropsUtil .get("lock.expiration.time.com.liferay.demo.todo.model.Todo")); public TodoModelImpl() { } @Override public long getPrimaryKey() { return _todoId; } @Override public void setPrimaryKey(long primaryKey) { setTodoId(primaryKey); } @Override public Serializable getPrimaryKeyObj() { return _todoId; } @Override public void setPrimaryKeyObj(Serializable primaryKeyObj) { setPrimaryKey(((Long) primaryKeyObj).longValue()); } @Override public Class<?> getModelClass() { return Todo.class; } @Override public String getModelClassName() { return Todo.class.getName(); } @Override public Map<String, Object> getModelAttributes() { Map<String, Object> attributes = new HashMap<String, Object>(); attributes.put("uuid", getUuid()); attributes.put("todoId", getTodoId()); attributes.put("groupId", getGroupId()); attributes.put("companyId", getCompanyId()); attributes.put("userId", getUserId()); attributes.put("userName", getUserName()); attributes.put("createDate", getCreateDate()); attributes.put("modifiedDate", getModifiedDate()); attributes.put("description", getDescription()); attributes.put("done", getDone()); 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 todoId = (Long) attributes.get("todoId"); if (todoId != null) { setTodoId(todoId); } Long groupId = (Long) attributes.get("groupId"); if (groupId != null) { setGroupId(groupId); } Long companyId = (Long) attributes.get("companyId"); if (companyId != null) { setCompanyId(companyId); } Long userId = (Long) attributes.get("userId"); if (userId != null) { setUserId(userId); } 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); } String description = (String) attributes.get("description"); if (description != null) { setDescription(description); } Boolean done = (Boolean) attributes.get("done"); if (done != null) { setDone(done); } } @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 getTodoId() { return _todoId; } @Override public void setTodoId(long todoId) { _todoId = todoId; } @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 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 long getUserId() { return _userId; } @Override public void setUserId(long 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) { } @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; _columnBitmask = -1L; _modifiedDate = modifiedDate; } @JSON @Override public String getDescription() { if (_description == null) { return StringPool.BLANK; } else { return _description; } } @Override public void setDescription(String description) { _description = description; } @JSON @Override public boolean getDone() { return _done; } @JSON @Override public boolean isDone() { return _done; } @Override public void setDone(boolean done) { _columnBitmask |= DONE_COLUMN_BITMASK; if (!_setOriginalDone) { _setOriginalDone = true; _originalDone = _done; } _done = done; } public boolean getOriginalDone() { return _originalDone; } @Override public StagedModelType getStagedModelType() { return new StagedModelType(PortalUtil.getClassNameId(Todo.class.getName())); } public long getColumnBitmask() { return _columnBitmask; } @Override public ExpandoBridge getExpandoBridge() { return ExpandoBridgeFactoryUtil.getExpandoBridge(getCompanyId(), Todo.class.getName(), getPrimaryKey()); } @Override public void setExpandoBridgeAttributes(ServiceContext serviceContext) { ExpandoBridge expandoBridge = getExpandoBridge(); expandoBridge.setAttributes(serviceContext); } @Override public Todo toEscapedModel() { if (_escapedModel == null) { _escapedModel = (Todo) ProxyUtil.newProxyInstance(_classLoader, _escapedModelInterfaces, new AutoEscapeBeanHandler(this)); } return _escapedModel; } @Override public Object clone() { TodoImpl todoImpl = new TodoImpl(); todoImpl.setUuid(getUuid()); todoImpl.setTodoId(getTodoId()); todoImpl.setGroupId(getGroupId()); todoImpl.setCompanyId(getCompanyId()); todoImpl.setUserId(getUserId()); todoImpl.setUserName(getUserName()); todoImpl.setCreateDate(getCreateDate()); todoImpl.setModifiedDate(getModifiedDate()); todoImpl.setDescription(getDescription()); todoImpl.setDone(getDone()); todoImpl.resetOriginalValues(); return todoImpl; } @Override public int compareTo(Todo todo) { int value = 0; value = DateUtil.compareTo(getModifiedDate(), todo.getModifiedDate()); if (value != 0) { return value; } return 0; } @Override public boolean equals(Object obj) { if (this == obj) { return true; } if (!(obj instanceof Todo)) { return false; } Todo todo = (Todo) obj; long primaryKey = todo.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() { TodoModelImpl todoModelImpl = this; todoModelImpl._originalUuid = todoModelImpl._uuid; todoModelImpl._originalGroupId = todoModelImpl._groupId; todoModelImpl._setOriginalGroupId = false; todoModelImpl._originalCompanyId = todoModelImpl._companyId; todoModelImpl._setOriginalCompanyId = false; todoModelImpl._setModifiedDate = false; todoModelImpl._originalDone = todoModelImpl._done; todoModelImpl._setOriginalDone = false; todoModelImpl._columnBitmask = 0; } @Override public CacheModel<Todo> toCacheModel() { TodoCacheModel todoCacheModel = new TodoCacheModel(); todoCacheModel.uuid = getUuid(); String uuid = todoCacheModel.uuid; if ((uuid != null) && (uuid.length() == 0)) { todoCacheModel.uuid = null; } todoCacheModel.todoId = getTodoId(); todoCacheModel.groupId = getGroupId(); todoCacheModel.companyId = getCompanyId(); todoCacheModel.userId = getUserId(); todoCacheModel.userName = getUserName(); String userName = todoCacheModel.userName; if ((userName != null) && (userName.length() == 0)) { todoCacheModel.userName = null; } Date createDate = getCreateDate(); if (createDate != null) { todoCacheModel.createDate = createDate.getTime(); } else { todoCacheModel.createDate = Long.MIN_VALUE; } Date modifiedDate = getModifiedDate(); if (modifiedDate != null) { todoCacheModel.modifiedDate = modifiedDate.getTime(); } else { todoCacheModel.modifiedDate = Long.MIN_VALUE; } todoCacheModel.description = getDescription(); String description = todoCacheModel.description; if ((description != null) && (description.length() == 0)) { todoCacheModel.description = null; } todoCacheModel.done = getDone(); return todoCacheModel; } @Override public String toString() { StringBundler sb = new StringBundler(21); sb.append("{uuid="); sb.append(getUuid()); sb.append(", todoId="); sb.append(getTodoId()); sb.append(", groupId="); sb.append(getGroupId()); sb.append(", companyId="); sb.append(getCompanyId()); sb.append(", userId="); sb.append(getUserId()); sb.append(", userName="); sb.append(getUserName()); sb.append(", createDate="); sb.append(getCreateDate()); sb.append(", modifiedDate="); sb.append(getModifiedDate()); sb.append(", description="); sb.append(getDescription()); sb.append(", done="); sb.append(getDone()); sb.append("}"); return sb.toString(); } @Override public String toXmlString() { StringBundler sb = new StringBundler(34); sb.append("<model><model-name>"); sb.append("com.liferay.demo.todo.model.Todo"); 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>todoId</column-name><column-value><![CDATA["); sb.append(getTodoId()); 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>companyId</column-name><column-value><![CDATA["); sb.append(getCompanyId()); 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>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>description</column-name><column-value><![CDATA["); sb.append(getDescription()); sb.append("]]></column-value></column>"); sb.append("<column><column-name>done</column-name><column-value><![CDATA["); sb.append(getDone()); sb.append("]]></column-value></column>"); sb.append("</model>"); return sb.toString(); } private static final ClassLoader _classLoader = Todo.class.getClassLoader(); private static final Class<?>[] _escapedModelInterfaces = new Class[] { Todo.class }; private String _uuid; private String _originalUuid; private long _todoId; private long _groupId; private long _originalGroupId; private boolean _setOriginalGroupId; private long _companyId; private long _originalCompanyId; private boolean _setOriginalCompanyId; private long _userId; private String _userName; private Date _createDate; private Date _modifiedDate; private boolean _setModifiedDate; private String _description; private boolean _done; private boolean _originalDone; private boolean _setOriginalDone; private long _columnBitmask; private Todo _escapedModel; }