Package com.warrantchange.service

Source Code of com.warrantchange.service.ClpSerializer

/**
* Copyright (c) 2000-2012 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.warrantchange.service;

import com.liferay.portal.kernel.log.Log;
import com.liferay.portal.kernel.log.LogFactoryUtil;
import com.liferay.portal.kernel.util.PropsUtil;
import com.liferay.portal.kernel.util.Validator;
import com.liferay.portal.model.BaseModel;

import com.warrantchange.model.WarrantClp;
import com.warrantchange.model.WarrantUserEmailLogClp;
import com.warrantchange.model.WarrantUserUniqueIdClp;

import java.lang.reflect.Method;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

/**
* @author Brian Wing Shun Chan
*/
public class ClpSerializer {
  public static String getServletContextName() {
    if (Validator.isNotNull(_servletContextName)) {
      return _servletContextName;
    }

    synchronized (ClpSerializer.class) {
      if (Validator.isNotNull(_servletContextName)) {
        return _servletContextName;
      }

      try {
        ClassLoader classLoader = ClpSerializer.class.getClassLoader();

        Class<?> portletPropsClass = classLoader.loadClass(
            "com.liferay.util.portlet.PortletProps");

        Method getMethod = portletPropsClass.getMethod("get",
            new Class<?>[] { String.class });

        String portletPropsServletContextName = (String)getMethod.invoke(null,
            "warrant-change-portlet-deployment-context");

        if (Validator.isNotNull(portletPropsServletContextName)) {
          _servletContextName = portletPropsServletContextName;
        }
      }
      catch (Throwable t) {
        if (_log.isInfoEnabled()) {
          _log.info(
            "Unable to locate deployment context from portlet properties");
        }
      }

      if (Validator.isNull(_servletContextName)) {
        try {
          String propsUtilServletContextName = PropsUtil.get(
              "warrant-change-portlet-deployment-context");

          if (Validator.isNotNull(propsUtilServletContextName)) {
            _servletContextName = propsUtilServletContextName;
          }
        }
        catch (Throwable t) {
          if (_log.isInfoEnabled()) {
            _log.info(
              "Unable to locate deployment context from portal properties");
          }
        }
      }

      if (Validator.isNull(_servletContextName)) {
        _servletContextName = "warrant-change-portlet";
      }

      return _servletContextName;
    }
  }

  public static void setClassLoader(ClassLoader classLoader) {
    _classLoader = classLoader;
  }

  public static Object translateInput(BaseModel<?> oldModel) {
    Class<?> oldModelClass = oldModel.getClass();

    String oldModelClassName = oldModelClass.getName();

    if (oldModelClassName.equals(WarrantClp.class.getName())) {
      return translateInputWarrant(oldModel);
    }

    if (oldModelClassName.equals(WarrantUserEmailLogClp.class.getName())) {
      return translateInputWarrantUserEmailLog(oldModel);
    }

    if (oldModelClassName.equals(WarrantUserUniqueIdClp.class.getName())) {
      return translateInputWarrantUserUniqueId(oldModel);
    }

    return oldModel;
  }

  public static Object translateInput(List<Object> oldList) {
    List<Object> newList = new ArrayList<Object>(oldList.size());

    for (int i = 0; i < oldList.size(); i++) {
      Object curObj = oldList.get(i);

      newList.add(translateInput(curObj));
    }

    return newList;
  }

  public static Object translateInputWarrant(BaseModel<?> oldModel) {
    WarrantClp oldCplModel = (WarrantClp)oldModel;

    Thread currentThread = Thread.currentThread();

    ClassLoader contextClassLoader = currentThread.getContextClassLoader();

    try {
      currentThread.setContextClassLoader(_classLoader);

      try {
        Class<?> newModelClass = Class.forName("com.warrantchange.model.impl.WarrantImpl",
            true, _classLoader);

        Object newModel = newModelClass.newInstance();

        Method method0 = newModelClass.getMethod("setId",
            new Class[] { Long.TYPE });

        Long value0 = new Long(oldCplModel.getId());

        method0.invoke(newModel, value0);

        Method method1 = newModelClass.getMethod("setUserId",
            new Class[] { Long.TYPE });

        Long value1 = new Long(oldCplModel.getUserId());

        method1.invoke(newModel, value1);

        Method method2 = newModelClass.getMethod("setSummary",
            new Class[] { String.class });

        String value2 = oldCplModel.getSummary();

        method2.invoke(newModel, value2);

        Method method3 = newModelClass.getMethod("setQuantity",
            new Class[] { Integer.TYPE });

        Integer value3 = new Integer(oldCplModel.getQuantity());

        method3.invoke(newModel, value3);

        Method method4 = newModelClass.getMethod("setPrice",
            new Class[] { Double.TYPE });

        Double value4 = new Double(oldCplModel.getPrice());

        method4.invoke(newModel, value4);

        Method method5 = newModelClass.getMethod("setStatus",
            new Class[] { String.class });

        String value5 = oldCplModel.getStatus();

        method5.invoke(newModel, value5);

        Method method6 = newModelClass.getMethod("setCreateDate",
            new Class[] { Date.class });

        Date value6 = oldCplModel.getCreateDate();

        method6.invoke(newModel, value6);

        Method method7 = newModelClass.getMethod("setModifiedDate",
            new Class[] { Date.class });

        Date value7 = oldCplModel.getModifiedDate();

        method7.invoke(newModel, value7);

        Method method8 = newModelClass.getMethod("setExpirationWarningSent",
            new Class[] { Boolean.TYPE });

        Boolean value8 = new Boolean(oldCplModel.getExpirationWarningSent());

        method8.invoke(newModel, value8);

        return newModel;
      }
      catch (Exception e) {
        _log.error(e, e);
      }
    }
    finally {
      currentThread.setContextClassLoader(contextClassLoader);
    }

    return oldModel;
  }

  public static Object translateInputWarrantUserEmailLog(
    BaseModel<?> oldModel) {
    WarrantUserEmailLogClp oldCplModel = (WarrantUserEmailLogClp)oldModel;

    Thread currentThread = Thread.currentThread();

    ClassLoader contextClassLoader = currentThread.getContextClassLoader();

    try {
      currentThread.setContextClassLoader(_classLoader);

      try {
        Class<?> newModelClass = Class.forName("com.warrantchange.model.impl.WarrantUserEmailLogImpl",
            true, _classLoader);

        Object newModel = newModelClass.newInstance();

        Method method0 = newModelClass.getMethod("setId",
            new Class[] { Long.TYPE });

        Long value0 = new Long(oldCplModel.getId());

        method0.invoke(newModel, value0);

        Method method1 = newModelClass.getMethod("setSubject",
            new Class[] { String.class });

        String value1 = oldCplModel.getSubject();

        method1.invoke(newModel, value1);

        Method method2 = newModelClass.getMethod("setBodyContent",
            new Class[] { String.class });

        String value2 = oldCplModel.getBodyContent();

        method2.invoke(newModel, value2);

        Method method3 = newModelClass.getMethod("setUserId",
            new Class[] { Long.TYPE });

        Long value3 = new Long(oldCplModel.getUserId());

        method3.invoke(newModel, value3);

        Method method4 = newModelClass.getMethod("setCreateDate",
            new Class[] { Date.class });

        Date value4 = oldCplModel.getCreateDate();

        method4.invoke(newModel, value4);

        Method method5 = newModelClass.getMethod("setModifiedDate",
            new Class[] { Date.class });

        Date value5 = oldCplModel.getModifiedDate();

        method5.invoke(newModel, value5);

        return newModel;
      }
      catch (Exception e) {
        _log.error(e, e);
      }
    }
    finally {
      currentThread.setContextClassLoader(contextClassLoader);
    }

    return oldModel;
  }

  public static Object translateInputWarrantUserUniqueId(
    BaseModel<?> oldModel) {
    WarrantUserUniqueIdClp oldCplModel = (WarrantUserUniqueIdClp)oldModel;

    Thread currentThread = Thread.currentThread();

    ClassLoader contextClassLoader = currentThread.getContextClassLoader();

    try {
      currentThread.setContextClassLoader(_classLoader);

      try {
        Class<?> newModelClass = Class.forName("com.warrantchange.model.impl.WarrantUserUniqueIdImpl",
            true, _classLoader);

        Object newModel = newModelClass.newInstance();

        Method method0 = newModelClass.getMethod("setId",
            new Class[] { Long.TYPE });

        Long value0 = new Long(oldCplModel.getId());

        method0.invoke(newModel, value0);

        Method method1 = newModelClass.getMethod("setUniqueId",
            new Class[] { String.class });

        String value1 = oldCplModel.getUniqueId();

        method1.invoke(newModel, value1);

        Method method2 = newModelClass.getMethod("setUserId",
            new Class[] { Long.TYPE });

        Long value2 = new Long(oldCplModel.getUserId());

        method2.invoke(newModel, value2);

        Method method3 = newModelClass.getMethod("setCreateDate",
            new Class[] { Date.class });

        Date value3 = oldCplModel.getCreateDate();

        method3.invoke(newModel, value3);

        Method method4 = newModelClass.getMethod("setModifiedDate",
            new Class[] { Date.class });

        Date value4 = oldCplModel.getModifiedDate();

        method4.invoke(newModel, value4);

        Method method5 = newModelClass.getMethod("setSentEmail",
            new Class[] { String.class });

        String value5 = oldCplModel.getSentEmail();

        method5.invoke(newModel, value5);

        Method method6 = newModelClass.getMethod("setSentDate",
            new Class[] { Date.class });

        Date value6 = oldCplModel.getSentDate();

        method6.invoke(newModel, value6);

        Method method7 = newModelClass.getMethod("setSentOmicode",
            new Class[] { String.class });

        String value7 = oldCplModel.getSentOmicode();

        method7.invoke(newModel, value7);

        return newModel;
      }
      catch (Exception e) {
        _log.error(e, e);
      }
    }
    finally {
      currentThread.setContextClassLoader(contextClassLoader);
    }

    return oldModel;
  }

  public static Object translateInput(Object obj) {
    if (obj instanceof BaseModel<?>) {
      return translateInput((BaseModel<?>)obj);
    }
    else if (obj instanceof List<?>) {
      return translateInput((List<Object>)obj);
    }
    else {
      return obj;
    }
  }

  public static Object translateOutput(BaseModel<?> oldModel) {
    Class<?> oldModelClass = oldModel.getClass();

    String oldModelClassName = oldModelClass.getName();

    if (oldModelClassName.equals("com.warrantchange.model.impl.WarrantImpl")) {
      return translateOutputWarrant(oldModel);
    }

    if (oldModelClassName.equals(
          "com.warrantchange.model.impl.WarrantUserEmailLogImpl")) {
      return translateOutputWarrantUserEmailLog(oldModel);
    }

    if (oldModelClassName.equals(
          "com.warrantchange.model.impl.WarrantUserUniqueIdImpl")) {
      return translateOutputWarrantUserUniqueId(oldModel);
    }

    return oldModel;
  }

  public static Object translateOutput(List<Object> oldList) {
    List<Object> newList = new ArrayList<Object>(oldList.size());

    for (int i = 0; i < oldList.size(); i++) {
      Object curObj = oldList.get(i);

      newList.add(translateOutput(curObj));
    }

    return newList;
  }

  public static Object translateOutput(Object obj) {
    if (obj instanceof BaseModel<?>) {
      return translateOutput((BaseModel<?>)obj);
    }
    else if (obj instanceof List<?>) {
      return translateOutput((List<Object>)obj);
    }
    else {
      return obj;
    }
  }

  public static Object translateOutputWarrant(BaseModel<?> oldModel) {
    Thread currentThread = Thread.currentThread();

    ClassLoader contextClassLoader = currentThread.getContextClassLoader();

    try {
      currentThread.setContextClassLoader(_classLoader);

      try {
        WarrantClp newModel = new WarrantClp();

        Class<?> oldModelClass = oldModel.getClass();

        Method method0 = oldModelClass.getMethod("getId");

        Long value0 = (Long)method0.invoke(oldModel, (Object[])null);

        newModel.setId(value0);

        Method method1 = oldModelClass.getMethod("getUserId");

        Long value1 = (Long)method1.invoke(oldModel, (Object[])null);

        newModel.setUserId(value1);

        Method method2 = oldModelClass.getMethod("getSummary");

        String value2 = (String)method2.invoke(oldModel, (Object[])null);

        newModel.setSummary(value2);

        Method method3 = oldModelClass.getMethod("getQuantity");

        Integer value3 = (Integer)method3.invoke(oldModel,
            (Object[])null);

        newModel.setQuantity(value3);

        Method method4 = oldModelClass.getMethod("getPrice");

        Double value4 = (Double)method4.invoke(oldModel, (Object[])null);

        newModel.setPrice(value4);

        Method method5 = oldModelClass.getMethod("getStatus");

        String value5 = (String)method5.invoke(oldModel, (Object[])null);

        newModel.setStatus(value5);

        Method method6 = oldModelClass.getMethod("getCreateDate");

        Date value6 = (Date)method6.invoke(oldModel, (Object[])null);

        newModel.setCreateDate(value6);

        Method method7 = oldModelClass.getMethod("getModifiedDate");

        Date value7 = (Date)method7.invoke(oldModel, (Object[])null);

        newModel.setModifiedDate(value7);

        Method method8 = oldModelClass.getMethod(
            "getExpirationWarningSent");

        Boolean value8 = (Boolean)method8.invoke(oldModel,
            (Object[])null);

        newModel.setExpirationWarningSent(value8);

        return newModel;
      }
      catch (Exception e) {
        _log.error(e, e);
      }
    }
    finally {
      currentThread.setContextClassLoader(contextClassLoader);
    }

    return oldModel;
  }

  public static Object translateOutputWarrantUserEmailLog(
    BaseModel<?> oldModel) {
    Thread currentThread = Thread.currentThread();

    ClassLoader contextClassLoader = currentThread.getContextClassLoader();

    try {
      currentThread.setContextClassLoader(_classLoader);

      try {
        WarrantUserEmailLogClp newModel = new WarrantUserEmailLogClp();

        Class<?> oldModelClass = oldModel.getClass();

        Method method0 = oldModelClass.getMethod("getId");

        Long value0 = (Long)method0.invoke(oldModel, (Object[])null);

        newModel.setId(value0);

        Method method1 = oldModelClass.getMethod("getSubject");

        String value1 = (String)method1.invoke(oldModel, (Object[])null);

        newModel.setSubject(value1);

        Method method2 = oldModelClass.getMethod("getBodyContent");

        String value2 = (String)method2.invoke(oldModel, (Object[])null);

        newModel.setBodyContent(value2);

        Method method3 = oldModelClass.getMethod("getUserId");

        Long value3 = (Long)method3.invoke(oldModel, (Object[])null);

        newModel.setUserId(value3);

        Method method4 = oldModelClass.getMethod("getCreateDate");

        Date value4 = (Date)method4.invoke(oldModel, (Object[])null);

        newModel.setCreateDate(value4);

        Method method5 = oldModelClass.getMethod("getModifiedDate");

        Date value5 = (Date)method5.invoke(oldModel, (Object[])null);

        newModel.setModifiedDate(value5);

        return newModel;
      }
      catch (Exception e) {
        _log.error(e, e);
      }
    }
    finally {
      currentThread.setContextClassLoader(contextClassLoader);
    }

    return oldModel;
  }

  public static Object translateOutputWarrantUserUniqueId(
    BaseModel<?> oldModel) {
    Thread currentThread = Thread.currentThread();

    ClassLoader contextClassLoader = currentThread.getContextClassLoader();

    try {
      currentThread.setContextClassLoader(_classLoader);

      try {
        WarrantUserUniqueIdClp newModel = new WarrantUserUniqueIdClp();

        Class<?> oldModelClass = oldModel.getClass();

        Method method0 = oldModelClass.getMethod("getId");

        Long value0 = (Long)method0.invoke(oldModel, (Object[])null);

        newModel.setId(value0);

        Method method1 = oldModelClass.getMethod("getUniqueId");

        String value1 = (String)method1.invoke(oldModel, (Object[])null);

        newModel.setUniqueId(value1);

        Method method2 = oldModelClass.getMethod("getUserId");

        Long value2 = (Long)method2.invoke(oldModel, (Object[])null);

        newModel.setUserId(value2);

        Method method3 = oldModelClass.getMethod("getCreateDate");

        Date value3 = (Date)method3.invoke(oldModel, (Object[])null);

        newModel.setCreateDate(value3);

        Method method4 = oldModelClass.getMethod("getModifiedDate");

        Date value4 = (Date)method4.invoke(oldModel, (Object[])null);

        newModel.setModifiedDate(value4);

        Method method5 = oldModelClass.getMethod("getSentEmail");

        String value5 = (String)method5.invoke(oldModel, (Object[])null);

        newModel.setSentEmail(value5);

        Method method6 = oldModelClass.getMethod("getSentDate");

        Date value6 = (Date)method6.invoke(oldModel, (Object[])null);

        newModel.setSentDate(value6);

        Method method7 = oldModelClass.getMethod("getSentOmicode");

        String value7 = (String)method7.invoke(oldModel, (Object[])null);

        newModel.setSentOmicode(value7);

        return newModel;
      }
      catch (Exception e) {
        _log.error(e, e);
      }
    }
    finally {
      currentThread.setContextClassLoader(contextClassLoader);
    }

    return oldModel;
  }

  private static Log _log = LogFactoryUtil.getLog(ClpSerializer.class);
  private static ClassLoader _classLoader;
  private static String _servletContextName;
}
TOP

Related Classes of com.warrantchange.service.ClpSerializer

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.