1
19
20 package com.liferay.portal.upgrade.v4_3_0;
21
22 import com.liferay.portal.kernel.log.Log;
23 import com.liferay.portal.kernel.log.LogFactoryUtil;
24 import com.liferay.portal.upgrade.UpgradeException;
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.TempUpgradeColumnImpl;
30 import com.liferay.portal.upgrade.util.UpgradeColumn;
31 import com.liferay.portal.upgrade.util.UpgradeTable;
32 import com.liferay.portal.upgrade.util.ValueMapper;
33 import com.liferay.portal.upgrade.v4_3_0.util.AvailableMappersUtil;
34 import com.liferay.portal.upgrade.v4_3_0.util.WikiPageIdUpgradeColumnImpl;
35 import com.liferay.portal.upgrade.v4_3_0.util.WikiPageResourcePrimKeyUpgradeColumnImpl;
36 import com.liferay.portlet.wiki.model.impl.WikiNodeImpl;
37 import com.liferay.portlet.wiki.model.impl.WikiPageImpl;
38
39 import java.sql.Types;
40
41
47 public class UpgradeWiki extends UpgradeProcess {
48
49 public void upgrade() throws UpgradeException {
50 _log.info("Upgrading");
51
52 try {
53 doUpgrade();
54 }
55 catch (Exception e) {
56 throw new UpgradeException(e);
57 }
58 }
59
60 protected void doUpgrade() throws Exception {
61
62
64 UpgradeColumn upgradeGroupIdColumn = new SwapUpgradeColumnImpl(
65 "groupId", AvailableMappersUtil.getGroupIdMapper());
66
67 UpgradeColumn upgradeUserIdColumn = new SwapUpgradeColumnImpl(
68 "userId", new Integer(Types.VARCHAR),
69 AvailableMappersUtil.getUserIdMapper());
70
71 PKUpgradeColumnImpl upgradePKColumn = new PKUpgradeColumnImpl(
72 "nodeId", true);
73
74 UpgradeTable upgradeTable = new DefaultUpgradeTableImpl(
75 WikiNodeImpl.TABLE_NAME, WikiNodeImpl.TABLE_COLUMNS,
76 upgradePKColumn, upgradeGroupIdColumn, upgradeUserIdColumn);
77
78 upgradeTable.setCreateSQL(WikiNodeImpl.TABLE_SQL_CREATE);
79
80 upgradeTable.updateTable();
81
82 ValueMapper nodeIdMapper = upgradePKColumn.getValueMapper();
83
84 AvailableMappersUtil.setWikiNodeIdMapper(nodeIdMapper);
85
86 UpgradeColumn upgradeNodeIdColumn = new SwapUpgradeColumnImpl(
87 "nodeId", nodeIdMapper);
88
89
91 UpgradeColumn upgradeTitleColumn = new TempUpgradeColumnImpl("title");
92
93 WikiPageIdUpgradeColumnImpl upgradePageIdColumn =
94 new WikiPageIdUpgradeColumnImpl(
95 upgradeNodeIdColumn, upgradeTitleColumn);
96
97 UpgradeColumn upgradePageResourcePrimKeyColumn =
98 new WikiPageResourcePrimKeyUpgradeColumnImpl(
99 upgradePageIdColumn);
100
101 upgradeTable = new DefaultUpgradeTableImpl(
102 WikiPageImpl.TABLE_NAME, WikiPageImpl.TABLE_COLUMNS,
103 upgradeNodeIdColumn, upgradeTitleColumn, upgradePageIdColumn,
104 upgradePageResourcePrimKeyColumn, upgradeUserIdColumn);
105
106 upgradeTable.setCreateSQL(WikiPageImpl.TABLE_SQL_CREATE);
107
108 upgradeTable.updateTable();
109
110 ValueMapper pageIdMapper = upgradePageIdColumn.getValueMapper();
111
112 AvailableMappersUtil.setWikiPageIdMapper(pageIdMapper);
113 }
114
115 private static Log _log = LogFactoryUtil.getLog(UpgradeWiki.class);
116
117 }