1
22
23 package com.liferay.portal.upgrade.v4_3_0;
24
25 import com.liferay.portal.upgrade.UpgradeProcess;
26 import com.liferay.portal.upgrade.util.DefaultUpgradeTableImpl;
27 import com.liferay.portal.upgrade.util.PKUpgradeColumnImpl;
28 import com.liferay.portal.upgrade.util.SwapUpgradeColumnImpl;
29 import com.liferay.portal.upgrade.util.UpgradeColumn;
30 import com.liferay.portal.upgrade.util.UpgradeTable;
31 import com.liferay.portal.upgrade.util.ValueMapper;
32 import com.liferay.portal.upgrade.v4_3_0.util.AvailableMappersUtil;
33 import com.liferay.portal.upgrade.v4_3_0.util.PollsChoiceIdUpgradeColumnImpl;
34 import com.liferay.portal.upgrade.v4_3_0.util.PollsChoiceTable;
35 import com.liferay.portal.upgrade.v4_3_0.util.PollsQuestionTable;
36 import com.liferay.portal.upgrade.v4_3_0.util.PollsVoteChoiceIdUpgradeColumnImpl;
37 import com.liferay.portal.upgrade.v4_3_0.util.PollsVoteTable;
38
39 import java.sql.Types;
40
41
46 public class UpgradePolls extends UpgradeProcess {
47
48 protected void doUpgrade() throws Exception {
49
50
52 UpgradeColumn upgradeGroupIdColumn = new SwapUpgradeColumnImpl(
53 "groupId", AvailableMappersUtil.getGroupIdMapper());
54
55 UpgradeColumn upgradeUserIdColumn = new SwapUpgradeColumnImpl(
56 "userId", new Integer(Types.VARCHAR),
57 AvailableMappersUtil.getUserIdMapper());
58
59 PKUpgradeColumnImpl upgradePKColumn = new PKUpgradeColumnImpl(
60 "questionId", true);
61
62 UpgradeTable upgradeTable = new DefaultUpgradeTableImpl(
63 PollsQuestionTable.TABLE_NAME, PollsQuestionTable.TABLE_COLUMNS,
64 upgradePKColumn, upgradeGroupIdColumn, upgradeUserIdColumn);
65
66 upgradeTable.setCreateSQL(PollsQuestionTable.TABLE_SQL_CREATE);
67
68 upgradeTable.updateTable();
69
70 ValueMapper questionIdMapper = upgradePKColumn.getValueMapper();
71
72 AvailableMappersUtil.setPollsQuestionIdMapper(questionIdMapper);
73
74 UpgradeColumn upgradeQuestionIdColumn = new SwapUpgradeColumnImpl(
75 "questionId", questionIdMapper);
76
77
79 PKUpgradeColumnImpl upgradeChoiceId =
80 new PollsChoiceIdUpgradeColumnImpl(upgradeQuestionIdColumn);
81
82 upgradeTable = new DefaultUpgradeTableImpl(
83 PollsChoiceTable.TABLE_NAME, PollsChoiceTable.TABLE_COLUMNS,
84 upgradeQuestionIdColumn, upgradeChoiceId);
85
86 upgradeTable.setCreateSQL(PollsChoiceTable.TABLE_SQL_CREATE);
87
88 upgradeTable.updateTable();
89
90 ValueMapper choiceIdMapper = upgradeChoiceId.getValueMapper();
91
92
94 UpgradeColumn upgradeVoteChoiceIdColumn =
95 new PollsVoteChoiceIdUpgradeColumnImpl(
96 upgradeQuestionIdColumn, choiceIdMapper);
97
98 upgradeTable = new DefaultUpgradeTableImpl(
99 PollsVoteTable.TABLE_NAME, PollsVoteTable.TABLE_COLUMNS,
100 new PKUpgradeColumnImpl("voteId", false), upgradeUserIdColumn,
101 upgradeQuestionIdColumn, upgradeVoteChoiceIdColumn);
102
103 upgradeTable.setCreateSQL(PollsVoteTable.TABLE_SQL_CREATE);
104
105 upgradeTable.updateTable();
106 }
107
108 }