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.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.WikiPageIdUpgradeColumnImpl;
38 import com.liferay.portal.upgrade.v4_3_0.util.WikiPageResourcePrimKeyUpgradeColumnImpl;
39 import com.liferay.portlet.wiki.model.impl.WikiNodeImpl;
40 import com.liferay.portlet.wiki.model.impl.WikiPageImpl;
41
42 import java.sql.Types;
43
44
50 public class UpgradeWiki 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 "nodeId", true);
76
77 UpgradeTable upgradeTable = new DefaultUpgradeTableImpl(
78 WikiNodeImpl.TABLE_NAME, WikiNodeImpl.TABLE_COLUMNS,
79 upgradePKColumn, upgradeGroupIdColumn, upgradeUserIdColumn);
80
81 upgradeTable.setCreateSQL(WikiNodeImpl.TABLE_SQL_CREATE);
82
83 upgradeTable.updateTable();
84
85 ValueMapper nodeIdMapper = upgradePKColumn.getValueMapper();
86
87 AvailableMappersUtil.setWikiNodeIdMapper(nodeIdMapper);
88
89 UpgradeColumn upgradeNodeIdColumn = new SwapUpgradeColumnImpl(
90 "nodeId", nodeIdMapper);
91
92
94 UpgradeColumn upgradeTitleColumn = new TempUpgradeColumnImpl("title");
95
96 WikiPageIdUpgradeColumnImpl upgradePageIdColumn =
97 new WikiPageIdUpgradeColumnImpl(
98 upgradeNodeIdColumn, upgradeTitleColumn);
99
100 UpgradeColumn upgradePageResourcePrimKeyColumn =
101 new WikiPageResourcePrimKeyUpgradeColumnImpl(
102 upgradePageIdColumn);
103
104 upgradeTable = new DefaultUpgradeTableImpl(
105 WikiPageImpl.TABLE_NAME, WikiPageImpl.TABLE_COLUMNS,
106 upgradeNodeIdColumn, upgradeTitleColumn, upgradePageIdColumn,
107 upgradePageResourcePrimKeyColumn, upgradeUserIdColumn);
108
109 upgradeTable.setCreateSQL(WikiPageImpl.TABLE_SQL_CREATE);
110
111 upgradeTable.updateTable();
112
113 ValueMapper pageIdMapper = upgradePageIdColumn.getValueMapper();
114
115 AvailableMappersUtil.setWikiPageIdMapper(pageIdMapper);
116 }
117
118 private static Log _log = LogFactoryUtil.getLog(UpgradeWiki.class);
119
120 }