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.prjteam.usergroup.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.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.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 com.prjteam.usergroup.model.Product; import com.prjteam.usergroup.model.ProductModel; import com.prjteam.usergroup.model.ProductSoap; 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 Product service. Represents a row in the "CATALOG_Product" database table, with each column mapped to a property of this class. * * <p> * This implementation and its corresponding interface {@link ProductModel} exist only as a container for the default property accessors generated by ServiceBuilder. Helper methods and all application logic should be put in {@link ProductImpl}. * </p> * * @author Brian Wing Shun Chan * @see ProductImpl * @see Product * @see ProductModel * @generated */ @JSON(strict = true) @ProviderType public class ProductModelImpl extends BaseModelImpl<Product> implements ProductModel { /* * NOTE FOR DEVELOPERS: * * Never modify or reference this class directly. All methods that expect a product model instance should use the {@link Product} interface instead. */ public static final String TABLE_NAME = "CATALOG_Product"; public static final Object[][] TABLE_COLUMNS = { { "uuid_", Types.VARCHAR }, { "productId", Types.BIGINT }, { "groupId", Types.BIGINT }, { "companyId", Types.BIGINT }, { "userId", Types.BIGINT }, { "userName", Types.VARCHAR }, { "createDate", Types.TIMESTAMP }, { "modifiedDate", Types.TIMESTAMP }, { "name", Types.VARCHAR }, { "imageId", Types.BIGINT } }; 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("productId", 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("name", Types.VARCHAR); TABLE_COLUMNS_MAP.put("imageId", Types.BIGINT); } public static final String TABLE_SQL_CREATE = "create table CATALOG_Product (uuid_ VARCHAR(75) null,productId LONG not null primary key,groupId LONG,companyId LONG,userId LONG,userName VARCHAR(75) null,createDate DATE null,modifiedDate DATE null,name VARCHAR(75) null,imageId LONG)"; public static final String TABLE_SQL_DROP = "drop table CATALOG_Product"; public static final String ORDER_BY_JPQL = " ORDER BY product.name ASC"; public static final String ORDER_BY_SQL = " ORDER BY CATALOG_Product.name 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.prjteam.usergroup.service.util.PropsUtil .get("value.object.entity.cache.enabled.com.prjteam.usergroup.model.Product"), true); public static final boolean FINDER_CACHE_ENABLED = GetterUtil .getBoolean(com.prjteam.usergroup.service.util.PropsUtil .get("value.object.finder.cache.enabled.com.prjteam.usergroup.model.Product"), true); public static final boolean COLUMN_BITMASK_ENABLED = GetterUtil .getBoolean(com.prjteam.usergroup.service.util.PropsUtil .get("value.object.column.bitmask.enabled.com.prjteam.usergroup.model.Product"), true); public static final long COMPANYID_COLUMN_BITMASK = 1L; public static final long GROUPID_COLUMN_BITMASK = 2L; public static final long UUID_COLUMN_BITMASK = 4L; public static final long NAME_COLUMN_BITMASK = 8L; /** * 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 Product toModel(ProductSoap soapModel) { if (soapModel == null) { return null; } Product model = new ProductImpl(); model.setUuid(soapModel.getUuid()); model.setProductId(soapModel.getProductId()); 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.setName(soapModel.getName()); model.setImageId(soapModel.getImageId()); 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<Product> toModels(ProductSoap[] soapModels) { if (soapModels == null) { return null; } List<Product> models = new ArrayList<Product>(soapModels.length); for (ProductSoap soapModel : soapModels) { models.add(toModel(soapModel)); } return models; } public static final long LOCK_EXPIRATION_TIME = GetterUtil.getLong(com.prjteam.usergroup.service.util.PropsUtil .get("lock.expiration.time.com.prjteam.usergroup.model.Product")); public ProductModelImpl() { } @Override public long getPrimaryKey() { return _productId; } @Override public void setPrimaryKey(long primaryKey) { setProductId(primaryKey); } @Override public Serializable getPrimaryKeyObj() { return _productId; } @Override public void setPrimaryKeyObj(Serializable primaryKeyObj) { setPrimaryKey(((Long) primaryKeyObj).longValue()); } @Override public Class<?> getModelClass() { return Product.class; } @Override public String getModelClassName() { return Product.class.getName(); } @Override public Map<String, Object> getModelAttributes() { Map<String, Object> attributes = new HashMap<String, Object>(); attributes.put("uuid", getUuid()); attributes.put("productId", getProductId()); 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("name", getName()); attributes.put("imageId", getImageId()); 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 productId = (Long) attributes.get("productId"); if (productId != null) { setProductId(productId); } 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 name = (String) attributes.get("name"); if (name != null) { setName(name); } Long imageId = (Long) attributes.get("imageId"); if (imageId != null) { setImageId(imageId); } } @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 getProductId() { return _productId; } @Override public void setProductId(long productId) { _productId = productId; } @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; _modifiedDate = modifiedDate; } @JSON @Override public String getName() { if (_name == null) { return StringPool.BLANK; } else { return _name; } } @Override public void setName(String name) { _columnBitmask = -1L; _name = name; } @JSON @Override public long getImageId() { return _imageId; } @Override public void setImageId(long imageId) { _imageId = imageId; } @Override public StagedModelType getStagedModelType() { return new StagedModelType(PortalUtil.getClassNameId(Product.class.getName())); } public long getColumnBitmask() { return _columnBitmask; } @Override public ExpandoBridge getExpandoBridge() { return ExpandoBridgeFactoryUtil.getExpandoBridge(getCompanyId(), Product.class.getName(), getPrimaryKey()); } @Override public void setExpandoBridgeAttributes(ServiceContext serviceContext) { ExpandoBridge expandoBridge = getExpandoBridge(); expandoBridge.setAttributes(serviceContext); } @Override public Product toEscapedModel() { if (_escapedModel == null) { _escapedModel = (Product) ProxyUtil.newProxyInstance(_classLoader, _escapedModelInterfaces, new AutoEscapeBeanHandler(this)); } return _escapedModel; } @Override public Object clone() { ProductImpl productImpl = new ProductImpl(); productImpl.setUuid(getUuid()); productImpl.setProductId(getProductId()); productImpl.setGroupId(getGroupId()); productImpl.setCompanyId(getCompanyId()); productImpl.setUserId(getUserId()); productImpl.setUserName(getUserName()); productImpl.setCreateDate(getCreateDate()); productImpl.setModifiedDate(getModifiedDate()); productImpl.setName(getName()); productImpl.setImageId(getImageId()); productImpl.resetOriginalValues(); return productImpl; } @Override public int compareTo(Product product) { int value = 0; value = getName().compareTo(product.getName()); if (value != 0) { return value; } return 0; } @Override public boolean equals(Object obj) { if (this == obj) { return true; } if (!(obj instanceof Product)) { return false; } Product product = (Product) obj; long primaryKey = product.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() { ProductModelImpl productModelImpl = this; productModelImpl._originalUuid = productModelImpl._uuid; productModelImpl._originalGroupId = productModelImpl._groupId; productModelImpl._setOriginalGroupId = false; productModelImpl._originalCompanyId = productModelImpl._companyId; productModelImpl._setOriginalCompanyId = false; productModelImpl._setModifiedDate = false; productModelImpl._columnBitmask = 0; } @Override public CacheModel<Product> toCacheModel() { ProductCacheModel productCacheModel = new ProductCacheModel(); productCacheModel.uuid = getUuid(); String uuid = productCacheModel.uuid; if ((uuid != null) && (uuid.length() == 0)) { productCacheModel.uuid = null; } productCacheModel.productId = getProductId(); productCacheModel.groupId = getGroupId(); productCacheModel.companyId = getCompanyId(); productCacheModel.userId = getUserId(); productCacheModel.userName = getUserName(); String userName = productCacheModel.userName; if ((userName != null) && (userName.length() == 0)) { productCacheModel.userName = null; } Date createDate = getCreateDate(); if (createDate != null) { productCacheModel.createDate = createDate.getTime(); } else { productCacheModel.createDate = Long.MIN_VALUE; } Date modifiedDate = getModifiedDate(); if (modifiedDate != null) { productCacheModel.modifiedDate = modifiedDate.getTime(); } else { productCacheModel.modifiedDate = Long.MIN_VALUE; } productCacheModel.name = getName(); String name = productCacheModel.name; if ((name != null) && (name.length() == 0)) { productCacheModel.name = null; } productCacheModel.imageId = getImageId(); return productCacheModel; } @Override public String toString() { StringBundler sb = new StringBundler(21); sb.append("{uuid="); sb.append(getUuid()); sb.append(", productId="); sb.append(getProductId()); 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(", name="); sb.append(getName()); sb.append(", imageId="); sb.append(getImageId()); sb.append("}"); return sb.toString(); } @Override public String toXmlString() { StringBundler sb = new StringBundler(34); sb.append("<model><model-name>"); sb.append("com.prjteam.usergroup.model.Product"); 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>productId</column-name><column-value><![CDATA["); sb.append(getProductId()); 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>name</column-name><column-value><![CDATA["); sb.append(getName()); sb.append("]]></column-value></column>"); sb.append("<column><column-name>imageId</column-name><column-value><![CDATA["); sb.append(getImageId()); sb.append("]]></column-value></column>"); sb.append("</model>"); return sb.toString(); } private static final ClassLoader _classLoader = Product.class.getClassLoader(); private static final Class<?>[] _escapedModelInterfaces = new Class[] { Product.class }; private String _uuid; private String _originalUuid; private long _productId; 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 _name; private long _imageId; private long _columnBitmask; private Product _escapedModel; }