001
014
015 package com.liferay.portal.upgrade.util;
016
017 import com.liferay.portal.kernel.upgrade.util.BaseUpgradeColumnImpl;
018 import com.liferay.portal.kernel.upgrade.util.ValueMapper;
019 import com.liferay.portal.kernel.upgrade.util.ValueMapperFactoryUtil;
020
021 import java.sql.Types;
022
023
027 public class PKUpgradeColumnImpl extends BaseUpgradeColumnImpl {
028
029 public PKUpgradeColumnImpl(String name, boolean trackValues) {
030 this(name, null, trackValues);
031 }
032
033 public PKUpgradeColumnImpl(
034 String name, Integer oldColumnType, boolean trackValues) {
035
036 super(name, oldColumnType);
037
038 _newColumnType = new Integer(Types.BIGINT);
039 _trackValues = trackValues;
040
041 if (_trackValues) {
042 _valueMapper = ValueMapperFactoryUtil.getValueMapper();
043 }
044 }
045
046 @Override
047 public Integer getNewColumnType(Integer defaultType) {
048 return _newColumnType;
049 }
050
051 public Object getNewValue(Object oldValue) throws Exception {
052 Long newValue = new Long(increment());
053
054 if (_trackValues) {
055 _valueMapper.mapValue(oldValue, newValue);
056 }
057
058 return newValue;
059 }
060
061 public ValueMapper getValueMapper() {
062 return _valueMapper;
063 }
064
065 public boolean isTrackValues() {
066 return _trackValues;
067 }
068
069 private Integer _newColumnType;
070 private boolean _trackValues;
071 private ValueMapper _valueMapper;
072
073 }