1
22
23 package com.liferay.portal.upgrade.v4_4_0;
24
25 import com.liferay.portal.kernel.dao.jdbc.DataAccess;
26 import com.liferay.portal.kernel.uuid.PortalUUIDUtil;
27 import com.liferay.portal.upgrade.UpgradeProcess;
28
29 import java.sql.Connection;
30 import java.sql.PreparedStatement;
31 import java.sql.ResultSet;
32
33
38 public class UpgradeUUID extends UpgradeProcess {
39
40 protected void doUpgrade() throws Exception {
41 upgradeTable("BlogsEntry", "entryId");
42 upgradeTable("BookmarksEntry", "entryId");
43 upgradeTable("BookmarksFolder", "folderId");
44 upgradeTable("DLFileEntry", "fileEntryId");
45 upgradeTable("DLFileShortcut", "fileShortcutId");
46 upgradeTable("DLFolder", "folderId");
47 upgradeTable("CalEvent", "eventId");
48 upgradeTable("IGFolder", "folderId");
49 upgradeTable("IGImage", "imageId");
50 upgradeTable("JournalArticle", "id_");
51 upgradeTable("JournalStructure", "id_");
52 upgradeTable("JournalTemplate", "id_");
53 upgradeTable("MBCategory", "categoryId");
54 upgradeTable("MBMessage", "messageId");
55 upgradeTable("PollsChoice", "choiceId");
56 upgradeTable("PollsQuestion", "questionId");
57 upgradeTable("User_", "userId");
58 upgradeTable("WikiNode", "nodeId");
59 upgradeTable("WikiPage", "pageId");
60 }
61
62 protected void upgradeTable(String tableName, String pkColName)
63 throws Exception {
64
65 Connection con = null;
66 PreparedStatement ps = null;
67 ResultSet rs = null;
68
69 try {
70 con = DataAccess.getConnection();
71
72 ps = con.prepareStatement(
73 "select " + pkColName + " from " + tableName +
74 " where uuid_ IS NULL or uuid_ = ''");
75
76 rs = ps.executeQuery();
77
78 while (rs.next()) {
79 long pkColValue = rs.getLong(pkColName);
80
81 String uuid = PortalUUIDUtil.generate();
82
83 ps = con.prepareStatement(
84 "update " + tableName + " set uuid_ = '" + uuid +
85 "' where " + pkColName + " = " + pkColValue);
86
87 ps.executeUpdate();
88
89 ps.close();
90 }
91 }
92 finally {
93 DataAccess.cleanUp(con, ps, rs);
94 }
95 }
96
97 }