1
19
20 package com.liferay.portal.upgrade.v4_3_0.util;
21
22 import com.liferay.portal.upgrade.util.PKUpgradeColumnImpl;
23 import com.liferay.portal.upgrade.util.UpgradeColumn;
24 import com.liferay.portal.upgrade.util.ValueMapper;
25 import com.liferay.portal.upgrade.util.ValueMapperFactory;
26 import com.liferay.portlet.journal.service.JournalArticleResourceLocalServiceUtil;
27
28 import java.sql.Types;
29
30
37 public class JournalArticlePKUpgradeColumnImpl extends PKUpgradeColumnImpl {
38
39 public JournalArticlePKUpgradeColumnImpl(
40 UpgradeColumn companyIdColumn, UpgradeColumn groupIdColumn) {
41
42 super("id_", new Integer(Types.VARCHAR), false);
43
44 _companyIdColumn = companyIdColumn;
45 _groupIdColumn = groupIdColumn;
46 _journalArticleIdMapper = ValueMapperFactory.getValueMapper();
47 }
48
49 public Object getNewValue(Object oldValue) throws Exception {
50 _resourcePrimKey = null;
51
52 Object newValue = super.getNewValue(oldValue);
53
54 String companyId = (String)_companyIdColumn.getOldValue();
55 Long oldGroupId = (Long)_groupIdColumn.getOldValue();
56 Long newGroupId = (Long)_groupIdColumn.getNewValue();
57 String articleId = (String)oldValue;
58
59 String oldIdValue =
60 "{companyId=" + companyId + ", groupId=" + oldGroupId +
61 ", articleId=" + articleId + ", version=1.0}";
62
63 _resourcePrimKey = new Long(JournalArticleResourceLocalServiceUtil.
64 getArticleResourcePrimKey(newGroupId.longValue(), articleId));
65
66 _journalArticleIdMapper.mapValue(oldIdValue, _resourcePrimKey);
67
68 return newValue;
69 }
70
71 public ValueMapper getValueMapper() {
72 return _journalArticleIdMapper;
73 }
74
75 public Long getResourcePrimKey() {
76 return _resourcePrimKey;
77 }
78
79 private UpgradeColumn _companyIdColumn;
80 private UpgradeColumn _groupIdColumn;
81 private ValueMapper _journalArticleIdMapper;
82 private Long _resourcePrimKey;
83
84 }