/**
* 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 de.uhh.l2g.plugins.migration.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 de.uhh.l2g.plugins.migration.service.ClpSerializer;
import de.uhh.l2g.plugins.migration.service.LegacySegmentLocalServiceUtil;
import java.io.Serializable;
import java.lang.reflect.Method;
import java.util.HashMap;
import java.util.Map;
/**
* @author unihh
*/
public class LegacySegmentClp extends BaseModelImpl<LegacySegment>
implements LegacySegment {
public LegacySegmentClp() {
}
@Override
public Class<?> getModelClass() {
return LegacySegment.class;
}
@Override
public String getModelClassName() {
return LegacySegment.class.getName();
}
@Override
public long getPrimaryKey() {
return _id;
}
@Override
public void setPrimaryKey(long primaryKey) {
setId(primaryKey);
}
@Override
public Serializable getPrimaryKeyObj() {
return _id;
}
@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("id", getId());
attributes.put("videoId", getVideoId());
attributes.put("start", getStart());
attributes.put("title", getTitle());
attributes.put("description", getDescription());
attributes.put("end", getEnd());
attributes.put("chapter", getChapter());
attributes.put("userId", getUserId());
return attributes;
}
@Override
public void setModelAttributes(Map<String, Object> attributes) {
Long id = (Long)attributes.get("id");
if (id != null) {
setId(id);
}
Long videoId = (Long)attributes.get("videoId");
if (videoId != null) {
setVideoId(videoId);
}
String start = (String)attributes.get("start");
if (start != null) {
setStart(start);
}
String title = (String)attributes.get("title");
if (title != null) {
setTitle(title);
}
String description = (String)attributes.get("description");
if (description != null) {
setDescription(description);
}
String end = (String)attributes.get("end");
if (end != null) {
setEnd(end);
}
Integer chapter = (Integer)attributes.get("chapter");
if (chapter != null) {
setChapter(chapter);
}
Long userId = (Long)attributes.get("userId");
if (userId != null) {
setUserId(userId);
}
}
@Override
public long getId() {
return _id;
}
@Override
public void setId(long id) {
_id = id;
if (_legacySegmentRemoteModel != null) {
try {
Class<?> clazz = _legacySegmentRemoteModel.getClass();
Method method = clazz.getMethod("setId", long.class);
method.invoke(_legacySegmentRemoteModel, id);
}
catch (Exception e) {
throw new UnsupportedOperationException(e);
}
}
}
@Override
public long getVideoId() {
return _videoId;
}
@Override
public void setVideoId(long videoId) {
_videoId = videoId;
if (_legacySegmentRemoteModel != null) {
try {
Class<?> clazz = _legacySegmentRemoteModel.getClass();
Method method = clazz.getMethod("setVideoId", long.class);
method.invoke(_legacySegmentRemoteModel, videoId);
}
catch (Exception e) {
throw new UnsupportedOperationException(e);
}
}
}
@Override
public String getStart() {
return _start;
}
@Override
public void setStart(String start) {
_start = start;
if (_legacySegmentRemoteModel != null) {
try {
Class<?> clazz = _legacySegmentRemoteModel.getClass();
Method method = clazz.getMethod("setStart", String.class);
method.invoke(_legacySegmentRemoteModel, start);
}
catch (Exception e) {
throw new UnsupportedOperationException(e);
}
}
}
@Override
public String getTitle() {
return _title;
}
@Override
public void setTitle(String title) {
_title = title;
if (_legacySegmentRemoteModel != null) {
try {
Class<?> clazz = _legacySegmentRemoteModel.getClass();
Method method = clazz.getMethod("setTitle", String.class);
method.invoke(_legacySegmentRemoteModel, title);
}
catch (Exception e) {
throw new UnsupportedOperationException(e);
}
}
}
@Override
public String getDescription() {
return _description;
}
@Override
public void setDescription(String description) {
_description = description;
if (_legacySegmentRemoteModel != null) {
try {
Class<?> clazz = _legacySegmentRemoteModel.getClass();
Method method = clazz.getMethod("setDescription", String.class);
method.invoke(_legacySegmentRemoteModel, description);
}
catch (Exception e) {
throw new UnsupportedOperationException(e);
}
}
}
@Override
public String getEnd() {
return _end;
}
@Override
public void setEnd(String end) {
_end = end;
if (_legacySegmentRemoteModel != null) {
try {
Class<?> clazz = _legacySegmentRemoteModel.getClass();
Method method = clazz.getMethod("setEnd", String.class);
method.invoke(_legacySegmentRemoteModel, end);
}
catch (Exception e) {
throw new UnsupportedOperationException(e);
}
}
}
@Override
public int getChapter() {
return _chapter;
}
@Override
public void setChapter(int chapter) {
_chapter = chapter;
if (_legacySegmentRemoteModel != null) {
try {
Class<?> clazz = _legacySegmentRemoteModel.getClass();
Method method = clazz.getMethod("setChapter", int.class);
method.invoke(_legacySegmentRemoteModel, chapter);
}
catch (Exception e) {
throw new UnsupportedOperationException(e);
}
}
}
@Override
public long getUserId() {
return _userId;
}
@Override
public void setUserId(long userId) {
_userId = userId;
if (_legacySegmentRemoteModel != null) {
try {
Class<?> clazz = _legacySegmentRemoteModel.getClass();
Method method = clazz.getMethod("setUserId", long.class);
method.invoke(_legacySegmentRemoteModel, 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;
}
public BaseModel<?> getLegacySegmentRemoteModel() {
return _legacySegmentRemoteModel;
}
public void setLegacySegmentRemoteModel(
BaseModel<?> legacySegmentRemoteModel) {
_legacySegmentRemoteModel = legacySegmentRemoteModel;
}
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 = _legacySegmentRemoteModel.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(_legacySegmentRemoteModel,
remoteParameterValues);
if (returnValue != null) {
returnValue = ClpSerializer.translateOutput(returnValue);
}
return returnValue;
}
@Override
public void persist() throws SystemException {
if (this.isNew()) {
LegacySegmentLocalServiceUtil.addLegacySegment(this);
}
else {
LegacySegmentLocalServiceUtil.updateLegacySegment(this);
}
}
@Override
public LegacySegment toEscapedModel() {
return (LegacySegment)ProxyUtil.newProxyInstance(LegacySegment.class.getClassLoader(),
new Class[] { LegacySegment.class }, new AutoEscapeBeanHandler(this));
}
@Override
public Object clone() {
LegacySegmentClp clone = new LegacySegmentClp();
clone.setId(getId());
clone.setVideoId(getVideoId());
clone.setStart(getStart());
clone.setTitle(getTitle());
clone.setDescription(getDescription());
clone.setEnd(getEnd());
clone.setChapter(getChapter());
clone.setUserId(getUserId());
return clone;
}
@Override
public int compareTo(LegacySegment legacySegment) {
long primaryKey = legacySegment.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 LegacySegmentClp)) {
return false;
}
LegacySegmentClp legacySegment = (LegacySegmentClp)obj;
long primaryKey = legacySegment.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(17);
sb.append("{id=");
sb.append(getId());
sb.append(", videoId=");
sb.append(getVideoId());
sb.append(", start=");
sb.append(getStart());
sb.append(", title=");
sb.append(getTitle());
sb.append(", description=");
sb.append(getDescription());
sb.append(", end=");
sb.append(getEnd());
sb.append(", chapter=");
sb.append(getChapter());
sb.append(", userId=");
sb.append(getUserId());
sb.append("}");
return sb.toString();
}
@Override
public String toXmlString() {
StringBundler sb = new StringBundler(28);
sb.append("<model><model-name>");
sb.append("de.uhh.l2g.plugins.migration.model.LegacySegment");
sb.append("</model-name>");
sb.append(
"<column><column-name>id</column-name><column-value><![CDATA[");
sb.append(getId());
sb.append("]]></column-value></column>");
sb.append(
"<column><column-name>videoId</column-name><column-value><![CDATA[");
sb.append(getVideoId());
sb.append("]]></column-value></column>");
sb.append(
"<column><column-name>start</column-name><column-value><![CDATA[");
sb.append(getStart());
sb.append("]]></column-value></column>");
sb.append(
"<column><column-name>title</column-name><column-value><![CDATA[");
sb.append(getTitle());
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>end</column-name><column-value><![CDATA[");
sb.append(getEnd());
sb.append("]]></column-value></column>");
sb.append(
"<column><column-name>chapter</column-name><column-value><![CDATA[");
sb.append(getChapter());
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("</model>");
return sb.toString();
}
private long _id;
private long _videoId;
private String _start;
private String _title;
private String _description;
private String _end;
private int _chapter;
private long _userId;
private String _userUuid;
private BaseModel<?> _legacySegmentRemoteModel;
private Class<?> _clpSerializerClass = de.uhh.l2g.plugins.migration.service.ClpSerializer.class;
}