001
014
015 package com.liferay.portal.kernel.upgrade.util;
016
017 import com.liferay.portal.kernel.upgrade.StagnantRowException;
018 import com.liferay.portal.kernel.util.GetterUtil;
019
020
023 public class DefaultPKMapper extends ValueMapperWrapper {
024
025 public DefaultPKMapper(ValueMapper valueMapper) {
026 super(valueMapper);
027 }
028
029 @Override
030 public Object getNewValue(Object oldValue) throws Exception {
031 String oldValueString = GetterUtil.getString(String.valueOf(oldValue));
032
033 if (oldValueString.equals("-1") || oldValueString.equals("0") ||
034 oldValueString.equals("")) {
035
036 return new Long(0);
037 }
038 else {
039 try {
040 ValueMapper valueMapper = getValueMapper();
041
042 if (oldValue instanceof String) {
043 oldValue = oldValueString.toLowerCase();
044 }
045
046 return valueMapper.getNewValue(oldValue);
047 }
048 catch (StagnantRowException sre) {
049 return new Long(0);
050 }
051 }
052 }
053
054 }