1
19
20 package com.liferay.portal.upgrade.v4_3_0;
21
22 import com.liferay.portal.kernel.log.Log;
23 import com.liferay.portal.kernel.log.LogFactoryUtil;
24 import com.liferay.portal.model.impl.ContactImpl;
25 import com.liferay.portal.model.impl.UserImpl;
26 import com.liferay.portal.upgrade.UpgradeException;
27 import com.liferay.portal.upgrade.UpgradeProcess;
28 import com.liferay.portal.upgrade.util.DefaultPKMapper;
29 import com.liferay.portal.upgrade.util.DefaultUpgradeTableImpl;
30 import com.liferay.portal.upgrade.util.PKUpgradeColumnImpl;
31 import com.liferay.portal.upgrade.util.TempUpgradeColumnImpl;
32 import com.liferay.portal.upgrade.util.UpgradeColumn;
33 import com.liferay.portal.upgrade.util.UpgradeTable;
34 import com.liferay.portal.upgrade.util.ValueMapper;
35 import com.liferay.portal.upgrade.v4_3_0.util.AvailableMappersUtil;
36 import com.liferay.portal.upgrade.v4_3_0.util.ContactIdUpgradeColumnImpl;
37
38 import java.sql.Types;
39
40
47 public class UpgradeContact extends UpgradeProcess {
48
49 public void upgrade() throws UpgradeException {
50 _log.info("Upgrading");
51
52 try {
53 doUpgrade();
54 }
55 catch (Exception e) {
56 throw new UpgradeException(e);
57 }
58 }
59
60 protected void doUpgrade() throws Exception {
61
62
64 PKUpgradeColumnImpl upgradePKColumn = new PKUpgradeColumnImpl(
65 "contactId", new Integer(Types.VARCHAR), true);
66
67 UpgradeTable upgradeTable = new DefaultUpgradeTableImpl(
68 ContactImpl.TABLE_NAME, ContactImpl.TABLE_COLUMNS, upgradePKColumn);
69
70 upgradeTable.setCreateSQL(ContactImpl.TABLE_SQL_CREATE);
71
72 upgradeTable.updateTable();
73
74 ValueMapper contactIdMapper = new DefaultPKMapper(
75 upgradePKColumn.getValueMapper());
76
77 AvailableMappersUtil.setContactIdMapper(contactIdMapper);
78
79
81 UpgradeColumn upgradeScreenNameColumn =
82 new TempUpgradeColumnImpl("screenName");
83
84 UpgradeColumn upgradeContactIdColumn = new ContactIdUpgradeColumnImpl(
85 upgradeScreenNameColumn, contactIdMapper);
86
87 upgradeTable = new DefaultUpgradeTableImpl(
88 UserImpl.TABLE_NAME, UserImpl.TABLE_COLUMNS,
89 upgradeScreenNameColumn, upgradeContactIdColumn);
90
91 upgradeTable.setCreateSQL(UserImpl.TABLE_SQL_CREATE);
92
93 upgradeTable.updateTable();
94 }
95
96 private static Log _log = LogFactoryUtil.getLog(UpgradeContact.class);
97
98 }