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.upgrade.UpgradeException;
28 import com.liferay.portal.upgrade.UpgradeProcess;
29 import com.liferay.portal.upgrade.util.DefaultUpgradeTableImpl;
30 import com.liferay.portal.upgrade.util.PKUpgradeColumnImpl;
31 import com.liferay.portal.upgrade.util.SwapUpgradeColumnImpl;
32 import com.liferay.portal.upgrade.util.UpgradeColumn;
33 import com.liferay.portal.upgrade.util.UpgradeTable;
34 import com.liferay.portal.upgrade.util.ValueMapper;
35 import com.liferay.portal.upgrade.v4_3_0.util.AvailableMappersUtil;
36 import com.liferay.portal.upgrade.v4_3_0.util.PollsChoiceIdUpgradeColumnImpl;
37 import com.liferay.portal.upgrade.v4_3_0.util.PollsVoteChoiceIdUpgradeColumnImpl;
38 import com.liferay.portlet.polls.model.impl.PollsChoiceImpl;
39 import com.liferay.portlet.polls.model.impl.PollsQuestionImpl;
40 import com.liferay.portlet.polls.model.impl.PollsVoteImpl;
41
42 import java.sql.Types;
43
44
50 public class UpgradePolls 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 UpgradeColumn upgradeGroupIdColumn = new SwapUpgradeColumnImpl(
68 "groupId", AvailableMappersUtil.getGroupIdMapper());
69
70 UpgradeColumn upgradeUserIdColumn = new SwapUpgradeColumnImpl(
71 "userId", new Integer(Types.VARCHAR),
72 AvailableMappersUtil.getUserIdMapper());
73
74 PKUpgradeColumnImpl upgradePKColumn = new PKUpgradeColumnImpl(
75 "questionId", true);
76
77 UpgradeTable upgradeTable = new DefaultUpgradeTableImpl(
78 PollsQuestionImpl.TABLE_NAME, PollsQuestionImpl.TABLE_COLUMNS,
79 upgradePKColumn, upgradeGroupIdColumn, upgradeUserIdColumn);
80
81 upgradeTable.setCreateSQL(PollsQuestionImpl.TABLE_SQL_CREATE);
82
83 upgradeTable.updateTable();
84
85 ValueMapper questionIdMapper = upgradePKColumn.getValueMapper();
86
87 AvailableMappersUtil.setPollsQuestionIdMapper(questionIdMapper);
88
89 UpgradeColumn upgradeQuestionIdColumn = new SwapUpgradeColumnImpl(
90 "questionId", questionIdMapper);
91
92
94 PKUpgradeColumnImpl upgradeChoiceId =
95 new PollsChoiceIdUpgradeColumnImpl(upgradeQuestionIdColumn);
96
97 upgradeTable = new DefaultUpgradeTableImpl(
98 PollsChoiceImpl.TABLE_NAME, PollsChoiceImpl.TABLE_COLUMNS,
99 upgradeQuestionIdColumn, upgradeChoiceId);
100
101 upgradeTable.setCreateSQL(PollsChoiceImpl.TABLE_SQL_CREATE);
102
103 upgradeTable.updateTable();
104
105 ValueMapper choiceIdMapper = upgradeChoiceId.getValueMapper();
106
107
109 UpgradeColumn upgradeVoteChoiceIdColumn =
110 new PollsVoteChoiceIdUpgradeColumnImpl(
111 upgradeQuestionIdColumn, choiceIdMapper);
112
113 upgradeTable = new DefaultUpgradeTableImpl(
114 PollsVoteImpl.TABLE_NAME, PollsVoteImpl.TABLE_COLUMNS,
115 new PKUpgradeColumnImpl("voteId", false), upgradeUserIdColumn,
116 upgradeQuestionIdColumn, upgradeVoteChoiceIdColumn);
117
118 upgradeTable.setCreateSQL(PollsVoteImpl.TABLE_SQL_CREATE);
119
120 upgradeTable.updateTable();
121 }
122
123 private static Log _log = LogFactoryUtil.getLog(UpgradePolls.class);
124
125 }