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(
032 String.valueOf(oldValue));
033
034 if (oldValueString.equals("-1") || oldValueString.equals("0") ||
035 oldValueString.equals("")) {
036
037 return new Long(0);
038 }
039 else {
040 try {
041 ValueMapper valueMapper = getValueMapper();
042
043 if (oldValue instanceof String) {
044 oldValue = oldValueString.toLowerCase();
045 }
046
047 return valueMapper.getNewValue(oldValue);
048 }
049 catch (StagnantRowException sre) {
050 return new Long(0);
051 }
052 }
053 }
054
055 }