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