1   /**
2    * Copyright (c) 2000-2010 Liferay, Inc. All rights reserved.
3    *
4    * This library is free software; you can redistribute it and/or modify it under
5    * the terms of the GNU Lesser General Public License as published by the Free
6    * Software Foundation; either version 2.1 of the License, or (at your option)
7    * any later version.
8    *
9    * This library is distributed in the hope that it will be useful, but WITHOUT
10   * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
11   * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
12   * details.
13   */
14  
15  package com.liferay.portal.upgrade.v4_3_4.util;
16  
17  import com.liferay.portal.kernel.upgrade.util.BaseUpgradeColumnImpl;
18  import com.liferay.portal.kernel.upgrade.util.UpgradeColumn;
19  import com.liferay.portal.kernel.util.LocaleUtil;
20  import com.liferay.portal.kernel.util.StringPool;
21  import com.liferay.portal.kernel.util.Validator;
22  import com.liferay.util.LocalizationUtil;
23  
24  /**
25   * <a href="JournalArticleContentUpgradeColumnImpl.java.html"><b><i>View Source
26   * </i></b></a>
27   *
28   * @author Alexander Chow
29   */
30  public class JournalArticleContentUpgradeColumnImpl
31      extends BaseUpgradeColumnImpl {
32  
33      public JournalArticleContentUpgradeColumnImpl(
34          UpgradeColumn structureIdColumn) {
35  
36          super("content");
37  
38          _structureIdColumn = structureIdColumn;
39      }
40  
41      public Object getNewValue(Object oldValue) throws Exception {
42          String oldContent = (String)oldValue;
43  
44          String newContent = oldContent;
45  
46          String structureId = (String)_structureIdColumn.getOldValue();
47  
48          if (Validator.isNull(structureId)) {
49              if (Validator.isNotNull(oldContent) &&
50                  (oldContent.indexOf("<static-content") == -1)) {
51  
52                  String defaultLanguageId = LocaleUtil.toLanguageId(
53                      LocaleUtil.getDefault());
54  
55                  newContent = LocalizationUtil.updateLocalization(
56                      StringPool.BLANK, "static-content", oldContent,
57                      defaultLanguageId, defaultLanguageId, true);
58              }
59          }
60  
61          return newContent;
62      }
63  
64      private UpgradeColumn _structureIdColumn;
65  
66  }