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