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.DefaultPKMapper;
30 import com.liferay.portal.upgrade.util.DefaultUpgradeTableImpl;
31 import com.liferay.portal.upgrade.util.PKUpgradeColumnImpl;
32 import com.liferay.portal.upgrade.util.SwapUpgradeColumnImpl;
33 import com.liferay.portal.upgrade.util.TempUpgradeColumnImpl;
34 import com.liferay.portal.upgrade.util.UpgradeColumn;
35 import com.liferay.portal.upgrade.util.UpgradeTable;
36 import com.liferay.portal.upgrade.util.ValueMapper;
37 import com.liferay.portal.upgrade.v4_3_0.util.AvailableMappersUtil;
38 import com.liferay.portal.upgrade.v4_3_0.util.JournalArticleContentUpgradeColumnImpl;
39 import com.liferay.portal.upgrade.v4_3_0.util.JournalArticlePKUpgradeColumnImpl;
40 import com.liferay.portal.upgrade.v4_3_0.util.JournalArticleResourcePrimKeyUpgradeColumnImpl;
41 import com.liferay.portal.upgrade.v4_3_0.util.JournalStructurePKUpgradeColumnImpl;
42 import com.liferay.portal.upgrade.v4_3_0.util.JournalStructureXSDUpgradeColumnImpl;
43 import com.liferay.portal.upgrade.v4_3_0.util.JournalTemplatePKUpgradeColumnImpl;
44 import com.liferay.portal.upgrade.v4_3_0.util.JournalTemplateSmallImageIdUpgradeColumnImpl;
45 import com.liferay.portal.upgrade.v4_3_0.util.JournalTemplateXSLUpgradeColumnImpl;
46 import com.liferay.portal.util.PropsKeys;
47 import com.liferay.portal.util.PropsUtil;
48 import com.liferay.portlet.journal.model.impl.JournalArticleImpl;
49 import com.liferay.portlet.journal.model.impl.JournalStructureImpl;
50 import com.liferay.portlet.journal.model.impl.JournalTemplateImpl;
51
52 import java.sql.Types;
53
54
60 public class UpgradeJournal extends UpgradeProcess {
61
62 public void upgrade() throws UpgradeException {
63 _log.info("Upgrading");
64
65 try {
66 doUpgrade();
67 }
68 catch (Exception e) {
69 throw new UpgradeException(e);
70 }
71 }
72
73 protected void doUpgrade() throws Exception {
74
75
77 UpgradeColumn upgradeCompanyIdColumn = new SwapUpgradeColumnImpl(
78 "companyId", new Integer(Types.VARCHAR),
79 AvailableMappersUtil.getCompanyIdMapper());
80
81 UpgradeColumn upgradeGroupIdColumn = new SwapUpgradeColumnImpl(
82 "groupId", AvailableMappersUtil.getGroupIdMapper());
83
84 UpgradeColumn upgradeUserIdColumn = new SwapUpgradeColumnImpl(
85 "userId", new Integer(Types.VARCHAR),
86 AvailableMappersUtil.getUserIdMapper());
87
88 UpgradeColumn upgradeApprovedByUserIdColumn = new SwapUpgradeColumnImpl(
89 "approvedByUserId", new Integer(Types.VARCHAR),
90 AvailableMappersUtil.getUserIdMapper());
91
92 JournalArticlePKUpgradeColumnImpl upgradeArticlePKColumn =
93 new JournalArticlePKUpgradeColumnImpl(
94 upgradeCompanyIdColumn, upgradeGroupIdColumn);
95
96 UpgradeColumn upgradeArticleResourcePrimKeyColumn =
97 new JournalArticleResourcePrimKeyUpgradeColumnImpl(
98 upgradeArticlePKColumn);
99
100 UpgradeColumn upgradeArticleIdColumn =
101 new TempUpgradeColumnImpl("articleId");
102
103 UpgradeColumn upgradeVersionColumn =
104 new TempUpgradeColumnImpl("version", new Integer(Types.DOUBLE));
105
106 UpgradeColumn upgradeStructureIdColumn =
107 new TempUpgradeColumnImpl("structureId");
108
109 UpgradeColumn upgradeContentColumn =
110 new JournalArticleContentUpgradeColumnImpl(
111 upgradeCompanyIdColumn, upgradeGroupIdColumn,
112 upgradeArticleIdColumn, upgradeVersionColumn,
113 upgradeStructureIdColumn,
114 AvailableMappersUtil.getImageIdMapper());
115
116 UpgradeTable upgradeTable = new DefaultUpgradeTableImpl(
117 JournalArticleImpl.TABLE_NAME, JournalArticleImpl.TABLE_COLUMNS,
118 upgradeCompanyIdColumn, upgradeGroupIdColumn, upgradeUserIdColumn,
119 upgradeApprovedByUserIdColumn, upgradeArticlePKColumn,
120 upgradeArticleResourcePrimKeyColumn, upgradeArticleIdColumn,
121 upgradeVersionColumn, upgradeStructureIdColumn,
122 upgradeContentColumn);
123
124 upgradeTable.setCreateSQL(JournalArticleImpl.TABLE_SQL_CREATE);
125
126 upgradeTable.updateTable();
127
128 ValueMapper articleIdMapper = new DefaultPKMapper(
129 upgradeArticlePKColumn.getValueMapper());
130
131 AvailableMappersUtil.setJournalArticleIdMapper(articleIdMapper);
132
133
135 PKUpgradeColumnImpl upgradeStructurePKColumn =
136 new JournalStructurePKUpgradeColumnImpl(
137 upgradeCompanyIdColumn, upgradeGroupIdColumn);
138
139 UpgradeColumn upgradeXSDColumn =
140 new JournalStructureXSDUpgradeColumnImpl();
141
142 upgradeTable = new DefaultUpgradeTableImpl(
143 JournalStructureImpl.TABLE_NAME, JournalStructureImpl.TABLE_COLUMNS,
144 upgradeCompanyIdColumn, upgradeGroupIdColumn,
145 upgradeStructurePKColumn, upgradeUserIdColumn, upgradeXSDColumn);
146
147 upgradeTable.setCreateSQL(JournalStructureImpl.TABLE_SQL_CREATE);
148
149 upgradeTable.updateTable();
150
151 ValueMapper structureIdMapper = new DefaultPKMapper(
152 upgradeStructurePKColumn.getValueMapper());
153
154 AvailableMappersUtil.setJournalStructureIdMapper(structureIdMapper);
155
156
158 PKUpgradeColumnImpl upgradeTemplatePKColumn =
159 new JournalTemplatePKUpgradeColumnImpl(
160 upgradeCompanyIdColumn, upgradeGroupIdColumn);
161
162 UpgradeColumn upgradeTemplateIdColumn =
163 new TempUpgradeColumnImpl("templateId");
164
165 UpgradeColumn upgradeXSLColumn =
166 new JournalTemplateXSLUpgradeColumnImpl(upgradeTemplateIdColumn);
167
168 UpgradeColumn upgradeSmallImageIdColumn =
169 new JournalTemplateSmallImageIdUpgradeColumnImpl(
170 upgradeCompanyIdColumn, upgradeGroupIdColumn,
171 upgradeTemplatePKColumn,
172 AvailableMappersUtil.getImageIdMapper());
173
174 upgradeTable = new DefaultUpgradeTableImpl(
175 JournalTemplateImpl.TABLE_NAME, JournalTemplateImpl.TABLE_COLUMNS,
176 upgradeCompanyIdColumn, upgradeGroupIdColumn,
177 upgradeTemplatePKColumn, upgradeUserIdColumn,
178 upgradeTemplateIdColumn, upgradeXSLColumn,
179 upgradeSmallImageIdColumn);
180
181 upgradeTable.setCreateSQL(JournalTemplateImpl.TABLE_SQL_CREATE);
182
183 upgradeTable.updateTable();
184
185 ValueMapper templateIdMapper = new DefaultPKMapper(
186 upgradeTemplatePKColumn.getValueMapper());
187
188 AvailableMappersUtil.setJournalTemplateIdMapper(templateIdMapper);
189
190
192 PropsUtil.set(PropsKeys.JOURNAL_SYNC_CONTENT_SEARCH_ON_STARTUP, "true");
193 }
194
195 private static Log _log = LogFactoryUtil.getLog(UpgradeJournal.class);
196
197 }