1
22
23 package com.liferay.portal.upgrade.v4_3_0;
24
25 import com.liferay.mail.model.CyrusUser;
26 import com.liferay.mail.model.CyrusVirtual;
27 import com.liferay.portal.model.impl.AccountImpl;
28 import com.liferay.portal.model.impl.ContactImpl;
29 import com.liferay.portal.model.impl.PasswordTrackerImpl;
30 import com.liferay.portal.model.impl.UserImpl;
31 import com.liferay.portal.upgrade.UpgradeException;
32 import com.liferay.portal.upgrade.UpgradeProcess;
33 import com.liferay.portal.upgrade.util.DefaultPKMapper;
34 import com.liferay.portal.upgrade.util.DefaultUpgradeTableImpl;
35 import com.liferay.portal.upgrade.util.PKUpgradeColumnImpl;
36 import com.liferay.portal.upgrade.util.SwapUpgradeColumnImpl;
37 import com.liferay.portal.upgrade.util.TempUpgradeColumnImpl;
38 import com.liferay.portal.upgrade.util.UpgradeColumn;
39 import com.liferay.portal.upgrade.util.UpgradeTable;
40 import com.liferay.portal.upgrade.util.ValueMapper;
41 import com.liferay.portal.upgrade.v4_3_0.util.AvailableMappersUtil;
42 import com.liferay.portal.upgrade.v4_3_0.util.UserPortraitIdUpgradeColumnImpl;
43
44 import java.sql.Types;
45
46 import org.apache.commons.logging.Log;
47 import org.apache.commons.logging.LogFactory;
48
49
57 public class UpgradeUser extends UpgradeProcess {
58
59 public void upgrade() throws UpgradeException {
60 _log.info("Upgrading");
61
62 try {
63 doUpgrade();
64 }
65 catch (Exception e) {
66 throw new UpgradeException(e);
67 }
68 }
69
70 protected void doUpgrade() throws Exception {
71
72
74 PKUpgradeColumnImpl upgradePKColumn =
75 new PKUpgradeColumnImpl("userId", new Integer(Types.VARCHAR), true);
76
77 UpgradeColumn upgradeCompanyIdColumn = new TempUpgradeColumnImpl(
78 "companyId", new Integer(Types.VARCHAR));
79
80 UpgradeColumn upgradeContactIdColumn = new TempUpgradeColumnImpl(
81 "contactId", new Integer(Types.VARCHAR));
82
83 UpgradeColumn upgradeUserPortraitIdColumn =
84 new UserPortraitIdUpgradeColumnImpl(
85 upgradePKColumn, AvailableMappersUtil.getImageIdMapper());
86
87 UpgradeTable upgradeTable = new DefaultUpgradeTableImpl(
88 UserImpl.TABLE_NAME, UserImpl.TABLE_COLUMNS, upgradePKColumn,
89 upgradeCompanyIdColumn, upgradeContactIdColumn,
90 upgradeUserPortraitIdColumn);
91
92 upgradeTable.updateTable();
93
94 ValueMapper userIdMapper = new DefaultPKMapper(
95 upgradePKColumn.getValueMapper());
96
97 AvailableMappersUtil.setUserIdMapper(userIdMapper);
98
99 UpgradeColumn upgradeUserIdColumn = new SwapUpgradeColumnImpl(
100 "userId", new Integer(Types.VARCHAR), userIdMapper);
101
102
104 upgradeTable = new DefaultUpgradeTableImpl(
105 AccountImpl.TABLE_NAME, AccountImpl.TABLE_COLUMNS,
106 upgradeUserIdColumn);
107
108 upgradeTable.setCreateSQL(AccountImpl.TABLE_SQL_CREATE);
109
110 upgradeTable.updateTable();
111
112
114 UpgradeColumn upgradeAccountIdColumn = new TempUpgradeColumnImpl(
115 "accountId", new Integer(Types.VARCHAR));
116
117 UpgradeColumn upgradeParentContactIdColumn = new TempUpgradeColumnImpl(
118 "parentContactId", new Integer(Types.VARCHAR));
119
120 UpgradeColumn upgradePrefixIdColumn = new TempUpgradeColumnImpl(
121 "prefixId", new Integer(Types.VARCHAR));
122
123 UpgradeColumn upgradeSuffixIdColumn = new TempUpgradeColumnImpl(
124 "suffixId", new Integer(Types.VARCHAR));
125
126 upgradeTable = new DefaultUpgradeTableImpl(
127 ContactImpl.TABLE_NAME, ContactImpl.TABLE_COLUMNS,
128 upgradeContactIdColumn, upgradeCompanyIdColumn, upgradeUserIdColumn,
129 upgradeAccountIdColumn, upgradeParentContactIdColumn,
130 upgradePrefixIdColumn, upgradeSuffixIdColumn);
131
132 upgradeTable.updateTable();
133
134
136 upgradeTable = new DefaultUpgradeTableImpl(
137 CyrusUser.TABLE_NAME, CyrusUser.TABLE_COLUMNS, upgradeUserIdColumn);
138
139 upgradeTable.updateTable();
140
141
143 upgradeTable = new DefaultUpgradeTableImpl(
144 CyrusVirtual.TABLE_NAME, CyrusVirtual.TABLE_COLUMNS,
145 upgradeUserIdColumn);
146
147 upgradeTable.updateTable();
148
149
151 upgradeTable = new DefaultUpgradeTableImpl(
152 PasswordTrackerImpl.TABLE_NAME, PasswordTrackerImpl.TABLE_COLUMNS,
153 new PKUpgradeColumnImpl("passwordTrackerId", false),
154 upgradeUserIdColumn);
155
156 upgradeTable.setCreateSQL(PasswordTrackerImpl.TABLE_SQL_CREATE);
157
158 upgradeTable.updateTable();
159 }
160
161 private static Log _log = LogFactory.getLog(UpgradeUser.class);
162
163 }