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