/**
* 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 org.oep.usermgt.model;
import com.liferay.portal.kernel.bean.AutoEscapeBeanHandler;
import com.liferay.portal.kernel.exception.SystemException;
import com.liferay.portal.kernel.util.ProxyUtil;
import com.liferay.portal.kernel.util.StringBundler;
import com.liferay.portal.model.BaseModel;
import com.liferay.portal.model.impl.BaseModelImpl;
import com.liferay.portal.util.PortalUtil;
import org.oep.usermgt.service.ClpSerializer;
import org.oep.usermgt.service.SubAccountLocalServiceUtil;
import java.io.Serializable;
import java.lang.reflect.Method;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
/**
* @author NQMINH
*/
public class SubAccountClp extends BaseModelImpl<SubAccount>
implements SubAccount {
public SubAccountClp() {
}
@Override
public Class<?> getModelClass() {
return SubAccount.class;
}
@Override
public String getModelClassName() {
return SubAccount.class.getName();
}
@Override
public long getPrimaryKey() {
return _subAccountId;
}
@Override
public void setPrimaryKey(long primaryKey) {
setSubAccountId(primaryKey);
}
@Override
public Serializable getPrimaryKeyObj() {
return _subAccountId;
}
@Override
public void setPrimaryKeyObj(Serializable primaryKeyObj) {
setPrimaryKey(((Long)primaryKeyObj).longValue());
}
@Override
public Map<String, Object> getModelAttributes() {
Map<String, Object> attributes = new HashMap<String, Object>();
attributes.put("subAccountId", getSubAccountId());
attributes.put("companyId", getCompanyId());
attributes.put("groupId", getGroupId());
attributes.put("userId", getUserId());
attributes.put("createDate", getCreateDate());
attributes.put("modifiedDate", getModifiedDate());
attributes.put("businessId", getBusinessId());
attributes.put("mappingUserId", getMappingUserId());
attributes.put("fullName", getFullName());
attributes.put("shortName", getShortName());
attributes.put("workingRole", getWorkingRole());
attributes.put("telNo", getTelNo());
attributes.put("mobile", getMobile());
attributes.put("email", getEmail());
return attributes;
}
@Override
public void setModelAttributes(Map<String, Object> attributes) {
Long subAccountId = (Long)attributes.get("subAccountId");
if (subAccountId != null) {
setSubAccountId(subAccountId);
}
Long companyId = (Long)attributes.get("companyId");
if (companyId != null) {
setCompanyId(companyId);
}
Long groupId = (Long)attributes.get("groupId");
if (groupId != null) {
setGroupId(groupId);
}
Long userId = (Long)attributes.get("userId");
if (userId != null) {
setUserId(userId);
}
Date createDate = (Date)attributes.get("createDate");
if (createDate != null) {
setCreateDate(createDate);
}
Date modifiedDate = (Date)attributes.get("modifiedDate");
if (modifiedDate != null) {
setModifiedDate(modifiedDate);
}
Long businessId = (Long)attributes.get("businessId");
if (businessId != null) {
setBusinessId(businessId);
}
Long mappingUserId = (Long)attributes.get("mappingUserId");
if (mappingUserId != null) {
setMappingUserId(mappingUserId);
}
String fullName = (String)attributes.get("fullName");
if (fullName != null) {
setFullName(fullName);
}
String shortName = (String)attributes.get("shortName");
if (shortName != null) {
setShortName(shortName);
}
String workingRole = (String)attributes.get("workingRole");
if (workingRole != null) {
setWorkingRole(workingRole);
}
String telNo = (String)attributes.get("telNo");
if (telNo != null) {
setTelNo(telNo);
}
String mobile = (String)attributes.get("mobile");
if (mobile != null) {
setMobile(mobile);
}
String email = (String)attributes.get("email");
if (email != null) {
setEmail(email);
}
}
@Override
public long getSubAccountId() {
return _subAccountId;
}
@Override
public void setSubAccountId(long subAccountId) {
_subAccountId = subAccountId;
if (_subAccountRemoteModel != null) {
try {
Class<?> clazz = _subAccountRemoteModel.getClass();
Method method = clazz.getMethod("setSubAccountId", long.class);
method.invoke(_subAccountRemoteModel, subAccountId);
}
catch (Exception e) {
throw new UnsupportedOperationException(e);
}
}
}
@Override
public long getCompanyId() {
return _companyId;
}
@Override
public void setCompanyId(long companyId) {
_companyId = companyId;
if (_subAccountRemoteModel != null) {
try {
Class<?> clazz = _subAccountRemoteModel.getClass();
Method method = clazz.getMethod("setCompanyId", long.class);
method.invoke(_subAccountRemoteModel, companyId);
}
catch (Exception e) {
throw new UnsupportedOperationException(e);
}
}
}
@Override
public long getGroupId() {
return _groupId;
}
@Override
public void setGroupId(long groupId) {
_groupId = groupId;
if (_subAccountRemoteModel != null) {
try {
Class<?> clazz = _subAccountRemoteModel.getClass();
Method method = clazz.getMethod("setGroupId", long.class);
method.invoke(_subAccountRemoteModel, groupId);
}
catch (Exception e) {
throw new UnsupportedOperationException(e);
}
}
}
@Override
public long getUserId() {
return _userId;
}
@Override
public void setUserId(long userId) {
_userId = userId;
if (_subAccountRemoteModel != null) {
try {
Class<?> clazz = _subAccountRemoteModel.getClass();
Method method = clazz.getMethod("setUserId", long.class);
method.invoke(_subAccountRemoteModel, userId);
}
catch (Exception e) {
throw new UnsupportedOperationException(e);
}
}
}
@Override
public String getUserUuid() throws SystemException {
return PortalUtil.getUserValue(getUserId(), "uuid", _userUuid);
}
@Override
public void setUserUuid(String userUuid) {
_userUuid = userUuid;
}
@Override
public Date getCreateDate() {
return _createDate;
}
@Override
public void setCreateDate(Date createDate) {
_createDate = createDate;
if (_subAccountRemoteModel != null) {
try {
Class<?> clazz = _subAccountRemoteModel.getClass();
Method method = clazz.getMethod("setCreateDate", Date.class);
method.invoke(_subAccountRemoteModel, createDate);
}
catch (Exception e) {
throw new UnsupportedOperationException(e);
}
}
}
@Override
public Date getModifiedDate() {
return _modifiedDate;
}
@Override
public void setModifiedDate(Date modifiedDate) {
_modifiedDate = modifiedDate;
if (_subAccountRemoteModel != null) {
try {
Class<?> clazz = _subAccountRemoteModel.getClass();
Method method = clazz.getMethod("setModifiedDate", Date.class);
method.invoke(_subAccountRemoteModel, modifiedDate);
}
catch (Exception e) {
throw new UnsupportedOperationException(e);
}
}
}
@Override
public long getBusinessId() {
return _businessId;
}
@Override
public void setBusinessId(long businessId) {
_businessId = businessId;
if (_subAccountRemoteModel != null) {
try {
Class<?> clazz = _subAccountRemoteModel.getClass();
Method method = clazz.getMethod("setBusinessId", long.class);
method.invoke(_subAccountRemoteModel, businessId);
}
catch (Exception e) {
throw new UnsupportedOperationException(e);
}
}
}
@Override
public long getMappingUserId() {
return _mappingUserId;
}
@Override
public void setMappingUserId(long mappingUserId) {
_mappingUserId = mappingUserId;
if (_subAccountRemoteModel != null) {
try {
Class<?> clazz = _subAccountRemoteModel.getClass();
Method method = clazz.getMethod("setMappingUserId", long.class);
method.invoke(_subAccountRemoteModel, mappingUserId);
}
catch (Exception e) {
throw new UnsupportedOperationException(e);
}
}
}
@Override
public String getMappingUserUuid() throws SystemException {
return PortalUtil.getUserValue(getMappingUserId(), "uuid",
_mappingUserUuid);
}
@Override
public void setMappingUserUuid(String mappingUserUuid) {
_mappingUserUuid = mappingUserUuid;
}
@Override
public String getFullName() {
return _fullName;
}
@Override
public void setFullName(String fullName) {
_fullName = fullName;
if (_subAccountRemoteModel != null) {
try {
Class<?> clazz = _subAccountRemoteModel.getClass();
Method method = clazz.getMethod("setFullName", String.class);
method.invoke(_subAccountRemoteModel, fullName);
}
catch (Exception e) {
throw new UnsupportedOperationException(e);
}
}
}
@Override
public String getShortName() {
return _shortName;
}
@Override
public void setShortName(String shortName) {
_shortName = shortName;
if (_subAccountRemoteModel != null) {
try {
Class<?> clazz = _subAccountRemoteModel.getClass();
Method method = clazz.getMethod("setShortName", String.class);
method.invoke(_subAccountRemoteModel, shortName);
}
catch (Exception e) {
throw new UnsupportedOperationException(e);
}
}
}
@Override
public String getWorkingRole() {
return _workingRole;
}
@Override
public void setWorkingRole(String workingRole) {
_workingRole = workingRole;
if (_subAccountRemoteModel != null) {
try {
Class<?> clazz = _subAccountRemoteModel.getClass();
Method method = clazz.getMethod("setWorkingRole", String.class);
method.invoke(_subAccountRemoteModel, workingRole);
}
catch (Exception e) {
throw new UnsupportedOperationException(e);
}
}
}
@Override
public String getTelNo() {
return _telNo;
}
@Override
public void setTelNo(String telNo) {
_telNo = telNo;
if (_subAccountRemoteModel != null) {
try {
Class<?> clazz = _subAccountRemoteModel.getClass();
Method method = clazz.getMethod("setTelNo", String.class);
method.invoke(_subAccountRemoteModel, telNo);
}
catch (Exception e) {
throw new UnsupportedOperationException(e);
}
}
}
@Override
public String getMobile() {
return _mobile;
}
@Override
public void setMobile(String mobile) {
_mobile = mobile;
if (_subAccountRemoteModel != null) {
try {
Class<?> clazz = _subAccountRemoteModel.getClass();
Method method = clazz.getMethod("setMobile", String.class);
method.invoke(_subAccountRemoteModel, mobile);
}
catch (Exception e) {
throw new UnsupportedOperationException(e);
}
}
}
@Override
public String getEmail() {
return _email;
}
@Override
public void setEmail(String email) {
_email = email;
if (_subAccountRemoteModel != null) {
try {
Class<?> clazz = _subAccountRemoteModel.getClass();
Method method = clazz.getMethod("setEmail", String.class);
method.invoke(_subAccountRemoteModel, email);
}
catch (Exception e) {
throw new UnsupportedOperationException(e);
}
}
}
public BaseModel<?> getSubAccountRemoteModel() {
return _subAccountRemoteModel;
}
public void setSubAccountRemoteModel(BaseModel<?> subAccountRemoteModel) {
_subAccountRemoteModel = subAccountRemoteModel;
}
public Object invokeOnRemoteModel(String methodName,
Class<?>[] parameterTypes, Object[] parameterValues)
throws Exception {
Object[] remoteParameterValues = new Object[parameterValues.length];
for (int i = 0; i < parameterValues.length; i++) {
if (parameterValues[i] != null) {
remoteParameterValues[i] = ClpSerializer.translateInput(parameterValues[i]);
}
}
Class<?> remoteModelClass = _subAccountRemoteModel.getClass();
ClassLoader remoteModelClassLoader = remoteModelClass.getClassLoader();
Class<?>[] remoteParameterTypes = new Class[parameterTypes.length];
for (int i = 0; i < parameterTypes.length; i++) {
if (parameterTypes[i].isPrimitive()) {
remoteParameterTypes[i] = parameterTypes[i];
}
else {
String parameterTypeName = parameterTypes[i].getName();
remoteParameterTypes[i] = remoteModelClassLoader.loadClass(parameterTypeName);
}
}
Method method = remoteModelClass.getMethod(methodName,
remoteParameterTypes);
Object returnValue = method.invoke(_subAccountRemoteModel,
remoteParameterValues);
if (returnValue != null) {
returnValue = ClpSerializer.translateOutput(returnValue);
}
return returnValue;
}
@Override
public void persist() throws SystemException {
if (this.isNew()) {
SubAccountLocalServiceUtil.addSubAccount(this);
}
else {
SubAccountLocalServiceUtil.updateSubAccount(this);
}
}
@Override
public SubAccount toEscapedModel() {
return (SubAccount)ProxyUtil.newProxyInstance(SubAccount.class.getClassLoader(),
new Class[] { SubAccount.class }, new AutoEscapeBeanHandler(this));
}
@Override
public Object clone() {
SubAccountClp clone = new SubAccountClp();
clone.setSubAccountId(getSubAccountId());
clone.setCompanyId(getCompanyId());
clone.setGroupId(getGroupId());
clone.setUserId(getUserId());
clone.setCreateDate(getCreateDate());
clone.setModifiedDate(getModifiedDate());
clone.setBusinessId(getBusinessId());
clone.setMappingUserId(getMappingUserId());
clone.setFullName(getFullName());
clone.setShortName(getShortName());
clone.setWorkingRole(getWorkingRole());
clone.setTelNo(getTelNo());
clone.setMobile(getMobile());
clone.setEmail(getEmail());
return clone;
}
@Override
public int compareTo(SubAccount subAccount) {
long primaryKey = subAccount.getPrimaryKey();
if (getPrimaryKey() < primaryKey) {
return -1;
}
else if (getPrimaryKey() > primaryKey) {
return 1;
}
else {
return 0;
}
}
@Override
public boolean equals(Object obj) {
if (this == obj) {
return true;
}
if (!(obj instanceof SubAccountClp)) {
return false;
}
SubAccountClp subAccount = (SubAccountClp)obj;
long primaryKey = subAccount.getPrimaryKey();
if (getPrimaryKey() == primaryKey) {
return true;
}
else {
return false;
}
}
public Class<?> getClpSerializerClass() {
return _clpSerializerClass;
}
@Override
public int hashCode() {
return (int)getPrimaryKey();
}
@Override
public String toString() {
StringBundler sb = new StringBundler(29);
sb.append("{subAccountId=");
sb.append(getSubAccountId());
sb.append(", companyId=");
sb.append(getCompanyId());
sb.append(", groupId=");
sb.append(getGroupId());
sb.append(", userId=");
sb.append(getUserId());
sb.append(", createDate=");
sb.append(getCreateDate());
sb.append(", modifiedDate=");
sb.append(getModifiedDate());
sb.append(", businessId=");
sb.append(getBusinessId());
sb.append(", mappingUserId=");
sb.append(getMappingUserId());
sb.append(", fullName=");
sb.append(getFullName());
sb.append(", shortName=");
sb.append(getShortName());
sb.append(", workingRole=");
sb.append(getWorkingRole());
sb.append(", telNo=");
sb.append(getTelNo());
sb.append(", mobile=");
sb.append(getMobile());
sb.append(", email=");
sb.append(getEmail());
sb.append("}");
return sb.toString();
}
@Override
public String toXmlString() {
StringBundler sb = new StringBundler(46);
sb.append("<model><model-name>");
sb.append("org.oep.usermgt.model.SubAccount");
sb.append("</model-name>");
sb.append(
"<column><column-name>subAccountId</column-name><column-value><![CDATA[");
sb.append(getSubAccountId());
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>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>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>businessId</column-name><column-value><![CDATA[");
sb.append(getBusinessId());
sb.append("]]></column-value></column>");
sb.append(
"<column><column-name>mappingUserId</column-name><column-value><![CDATA[");
sb.append(getMappingUserId());
sb.append("]]></column-value></column>");
sb.append(
"<column><column-name>fullName</column-name><column-value><![CDATA[");
sb.append(getFullName());
sb.append("]]></column-value></column>");
sb.append(
"<column><column-name>shortName</column-name><column-value><![CDATA[");
sb.append(getShortName());
sb.append("]]></column-value></column>");
sb.append(
"<column><column-name>workingRole</column-name><column-value><![CDATA[");
sb.append(getWorkingRole());
sb.append("]]></column-value></column>");
sb.append(
"<column><column-name>telNo</column-name><column-value><![CDATA[");
sb.append(getTelNo());
sb.append("]]></column-value></column>");
sb.append(
"<column><column-name>mobile</column-name><column-value><![CDATA[");
sb.append(getMobile());
sb.append("]]></column-value></column>");
sb.append(
"<column><column-name>email</column-name><column-value><![CDATA[");
sb.append(getEmail());
sb.append("]]></column-value></column>");
sb.append("</model>");
return sb.toString();
}
private long _subAccountId;
private long _companyId;
private long _groupId;
private long _userId;
private String _userUuid;
private Date _createDate;
private Date _modifiedDate;
private long _businessId;
private long _mappingUserId;
private String _mappingUserUuid;
private String _fullName;
private String _shortName;
private String _workingRole;
private String _telNo;
private String _mobile;
private String _email;
private BaseModel<?> _subAccountRemoteModel;
private Class<?> _clpSerializerClass = org.oep.usermgt.service.ClpSerializer.class;
}