[jboss-svn-commits] JBL Code SVN: r26646 - in labs/jbosslabs/labs-3.0-build/integration/cs-nfm/trunk/src/main: java/org/jboss/labs/clearspace/plugin/nfm/struts and 2 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Thu May 21 05:59:58 EDT 2009


Author: lkrzyzanek
Date: 2009-05-21 05:59:58 -0400 (Thu, 21 May 2009)
New Revision: 26646

Modified:
   labs/jbosslabs/labs-3.0-build/integration/cs-nfm/trunk/src/main/java/org/jboss/labs/clearspace/plugin/nfm/DbNukesForumsManager.java
   labs/jbosslabs/labs-3.0-build/integration/cs-nfm/trunk/src/main/java/org/jboss/labs/clearspace/plugin/nfm/NukesForumsManager.java
   labs/jbosslabs/labs-3.0-build/integration/cs-nfm/trunk/src/main/java/org/jboss/labs/clearspace/plugin/nfm/struts/AdminNfmAction.java
   labs/jbosslabs/labs-3.0-build/integration/cs-nfm/trunk/src/main/resources/plugin_i18n.properties
   labs/jbosslabs/labs-3.0-build/integration/cs-nfm/trunk/src/main/resources/struts.xml
   labs/jbosslabs/labs-3.0-build/integration/cs-nfm/trunk/src/main/web/admin/nukes-forums-migration.ftl
Log:
added count of categories, forums. added skeleton of migration

Modified: labs/jbosslabs/labs-3.0-build/integration/cs-nfm/trunk/src/main/java/org/jboss/labs/clearspace/plugin/nfm/DbNukesForumsManager.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/integration/cs-nfm/trunk/src/main/java/org/jboss/labs/clearspace/plugin/nfm/DbNukesForumsManager.java	2009-05-21 09:50:06 UTC (rev 26645)
+++ labs/jbosslabs/labs-3.0-build/integration/cs-nfm/trunk/src/main/java/org/jboss/labs/clearspace/plugin/nfm/DbNukesForumsManager.java	2009-05-21 09:59:58 UTC (rev 26646)
@@ -21,6 +21,7 @@
  */
 package org.jboss.labs.clearspace.plugin.nfm;
 
+import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
@@ -69,7 +70,7 @@
           nukesForumsMappingDAO.saveForumMapping(forumID, communityID);
           count++;
         } catch (DataIntegrityViolationException e) {
-          log.error("Saving forum mapping failed for forumID: " + forumID
+          log.warn("Saving forum mapping failed for forumID: " + forumID
               + ". Going to next forumID. Message: " + e.getMessage());
         }
       }
@@ -78,6 +79,14 @@
     return count;
   }
 
+  public Map<String, Long> migrateForums2Clearspace() {
+    Map<String, Long> result = new HashMap<String, Long>();
+    result.put("topicsCount", new Long(0));
+    result.put("postsCount", new Long(0));
+
+    return result;
+  }
+
   public int getCategoryCount() {
     return getCategoryMappings().size();
   }
@@ -100,6 +109,24 @@
     return forumMappings;
   }
 
+  public void flushCache(CacheName cacheName) {
+    switch (cacheName) {
+    case CATEGORY:
+      synchronized (categoryMappings) {
+        categoryMappings = null;
+        getCategoryMappings();
+      }
+      break;
+
+    case FORUM:
+      synchronized (forumMappings) {
+        forumMappings = null;
+        getForumMappings();
+      }
+      break;
+    }
+  }
+
   public void setNukesForumsMappingDAO(
       NukesForumsMappingDAO nukesForumsMappingDAO) {
     this.nukesForumsMappingDAO = nukesForumsMappingDAO;

Modified: labs/jbosslabs/labs-3.0-build/integration/cs-nfm/trunk/src/main/java/org/jboss/labs/clearspace/plugin/nfm/NukesForumsManager.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/integration/cs-nfm/trunk/src/main/java/org/jboss/labs/clearspace/plugin/nfm/NukesForumsManager.java	2009-05-21 09:50:06 UTC (rev 26645)
+++ labs/jbosslabs/labs-3.0-build/integration/cs-nfm/trunk/src/main/java/org/jboss/labs/clearspace/plugin/nfm/NukesForumsManager.java	2009-05-21 09:59:58 UTC (rev 26646)
@@ -21,6 +21,8 @@
  */
 package org.jboss.labs.clearspace.plugin.nfm;
 
+import java.util.Map;
+
 /**
  * Interface of Nukes Forums manager - main business logic of plugin
  * 
@@ -29,6 +31,10 @@
  */
 public interface NukesForumsManager {
 
+  public static enum CacheName {
+    CATEGORY, FORUM
+  };
+
   /**
    * Create forum mapping based on categories
    * 
@@ -37,6 +43,13 @@
   public int createForumMappingFromCategories();
 
   /**
+   * Migrate forums to clearspace
+   * 
+   * @return statistics. Map contains these keys: topicsCount, postsCount
+   */
+  public Map<String, Long> migrateForums2Clearspace();
+
+  /**
    * Gets forum mapping count
    * 
    * @return
@@ -50,4 +63,11 @@
    */
   public int getCategoryCount();
 
+  /**
+   * Flush cache
+   * 
+   * @param cacheName
+   */
+  public void flushCache(CacheName cacheName);
+
 }

Modified: labs/jbosslabs/labs-3.0-build/integration/cs-nfm/trunk/src/main/java/org/jboss/labs/clearspace/plugin/nfm/struts/AdminNfmAction.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/integration/cs-nfm/trunk/src/main/java/org/jboss/labs/clearspace/plugin/nfm/struts/AdminNfmAction.java	2009-05-21 09:50:06 UTC (rev 26645)
+++ labs/jbosslabs/labs-3.0-build/integration/cs-nfm/trunk/src/main/java/org/jboss/labs/clearspace/plugin/nfm/struts/AdminNfmAction.java	2009-05-21 09:59:58 UTC (rev 26646)
@@ -21,6 +21,8 @@
  */
 package org.jboss.labs.clearspace.plugin.nfm.struts;
 
+import java.util.Map;
+
 import org.jboss.labs.clearspace.plugin.nfm.NukesForumsManager;
 
 import com.jivesoftware.community.action.JiveActionSupport;
@@ -45,9 +47,19 @@
     forumCount = nukesForumsManager.getForumCount();
   }
 
+  public String refreshCategoryMapping() {
+    nukesForumsManager.flushCache(NukesForumsManager.CacheName.CATEGORY);
+    categoryCount = nukesForumsManager.getCategoryCount();
+
+    addActionMessage(getText("plugin.nfm.admin.nfm.refresh-category-mapping.sucess"));
+    return SUCCESS;
+  }
+
   public String createForumMapping() {
     int count = nukesForumsManager.createForumMappingFromCategories();
 
+    forumCount = nukesForumsManager.getForumCount();
+
     addActionMessage(getText(
         "plugin.nfm.admin.nfm.create-forums-mapping.sucess",
         new String[] { Integer.toString(count) }));
@@ -55,6 +67,16 @@
     return SUCCESS;
   }
 
+  public String migrateForums2Clearspace() {
+    Map<String, Long> result = nukesForumsManager.migrateForums2Clearspace();
+
+    addActionMessage(getText("plugin.nfm.admin.nfm.migration.sucess",
+        new String[] { Long.toString(result.get("topicsCount")),
+            Long.toString(result.get("postsCount")) }));
+
+    return SUCCESS;
+  }
+
   public void setNukesForumsManager(NukesForumsManager nukesForumsManager) {
     this.nukesForumsManager = nukesForumsManager;
   }

Modified: labs/jbosslabs/labs-3.0-build/integration/cs-nfm/trunk/src/main/resources/plugin_i18n.properties
===================================================================
--- labs/jbosslabs/labs-3.0-build/integration/cs-nfm/trunk/src/main/resources/plugin_i18n.properties	2009-05-21 09:50:06 UTC (rev 26645)
+++ labs/jbosslabs/labs-3.0-build/integration/cs-nfm/trunk/src/main/resources/plugin_i18n.properties	2009-05-21 09:59:58 UTC (rev 26646)
@@ -2,9 +2,18 @@
 plugin.nfm.admin.nfm.name=Nukes Forums migration
 plugin.nfm.admin.nfm.description=Click to manage Nukes Forums migration
 
+plugin.nfm.admin.nfm.refresh-category-mapping.name=Categories
 plugin.nfm.admin.nfm.refresh-category-mapping.count=Count of mapped categories
+plugin.nfm.admin.nfm.refresh-category-mapping.submit=Refresh
+plugin.nfm.admin.nfm.refresh-category-mapping.sucess=Mapping has been sucessfully refreshed.
 
+plugin.nfm.admin.nfm.create-forums-mapping.name=Forums
 plugin.nfm.admin.nfm.create-forums-mapping.count=Count of mapped forums
 plugin.nfm.admin.nfm.create-forums-mapping.description=Create mapping of forums to communities based on mapping of categories to communities
 plugin.nfm.admin.nfm.create-forums-mapping.submit=Create mapping
 plugin.nfm.admin.nfm.create-forums-mapping.sucess=Mapping has been sucessfully created. Count: {0}
+
+plugin.nfm.admin.nfm.migration.name=Topics and Posts migration
+plugin.nfm.admin.nfm.migration.description=Lunch migration of topics and their posts for each mapped forum
+plugin.nfm.admin.nfm.migration.submit=Migrate!
+plugin.nfm.admin.nfm.migration.sucess=Migration has been successull. Count of topics: {0}. Count of Posts: {1}.

Modified: labs/jbosslabs/labs-3.0-build/integration/cs-nfm/trunk/src/main/resources/struts.xml
===================================================================
--- labs/jbosslabs/labs-3.0-build/integration/cs-nfm/trunk/src/main/resources/struts.xml	2009-05-21 09:50:06 UTC (rev 26645)
+++ labs/jbosslabs/labs-3.0-build/integration/cs-nfm/trunk/src/main/resources/struts.xml	2009-05-21 09:59:58 UTC (rev 26646)
@@ -12,6 +12,17 @@
       </result>
     </action>
     
+    <action name="nukes-forums-refresh-category-mapping"
+      class="org.jboss.labs.clearspace.plugin.nfm.struts.AdminNfmAction"
+      method="refreshCategoryMapping">
+      <result name="input" type="freemarker">
+        /plugins/nukes-forums-migration/admin/nukes-forums-migration.ftl
+      </result>
+      <result name="success" type="freemarker">
+        /plugins/nukes-forums-migration/admin/nukes-forums-migration.ftl
+      </result>
+    </action>
+    
     <action name="nukes-forums-create-forums-mapping"
       class="org.jboss.labs.clearspace.plugin.nfm.struts.AdminNfmAction"
       method="createForumMapping">
@@ -22,6 +33,18 @@
         /plugins/nukes-forums-migration/admin/nukes-forums-migration.ftl
       </result>
     </action>
+
+    <action name="nukes-forums-migrate"
+      class="org.jboss.labs.clearspace.plugin.nfm.struts.AdminNfmAction"
+      method="migrateForums2Clearspace">
+      <result name="input" type="freemarker">
+        /plugins/nukes-forums-migration/admin/nukes-forums-migration.ftl
+      </result>
+      <result name="success" type="freemarker">
+        /plugins/nukes-forums-migration/admin/nukes-forums-migration.ftl
+      </result>
+    </action>
+
   </package>
 
 </struts>

Modified: labs/jbosslabs/labs-3.0-build/integration/cs-nfm/trunk/src/main/web/admin/nukes-forums-migration.ftl
===================================================================
--- labs/jbosslabs/labs-3.0-build/integration/cs-nfm/trunk/src/main/web/admin/nukes-forums-migration.ftl	2009-05-21 09:50:06 UTC (rev 26645)
+++ labs/jbosslabs/labs-3.0-build/integration/cs-nfm/trunk/src/main/web/admin/nukes-forums-migration.ftl	2009-05-21 09:59:58 UTC (rev 26646)
@@ -8,12 +8,18 @@
     <body>
         <@s.actionmessage />
         <@s.fielderror />
+        
+        <h3><@s.text name="plugin.nfm.admin.nfm.refresh-category-mapping.name" /></h3>
+        <@s.form theme="simple" action="nukes-forums-refresh-category-mapping">
           <table>
             <tr>
-              <td colspan="2"><@s.text name="plugin.nfm.admin.nfm.refresh-category-mapping.count" />: <@s.property value="categoryCount"/></td>
+              <td><@s.text name="plugin.nfm.admin.nfm.refresh-category-mapping.count" />: <@s.property value="categoryCount"/></td>
+              <td><@s.submit value="${action.getText('plugin.nfm.admin.nfm.refresh-category-mapping.submit')}"/></td>
             </tr>
           </table>
-
+        </@s.form>
+        
+        <h3><@s.text name="plugin.nfm.admin.nfm.create-forums-mapping.name" /></h3>
         <@s.form theme="simple" action="nukes-forums-create-forums-mapping">
           <table>
             <tr>
@@ -25,5 +31,15 @@
             </tr>
           </table>
         </@s.form>
+        
+        <h3><@s.text name="plugin.nfm.admin.nfm.migration.name" /></h3>
+        <@s.form theme="simple" action="nukes-forums-migrate">
+          <table>
+            <tr>
+              <td><@s.text name="plugin.nfm.admin.nfm.migration.description" />: 
+                <@s.submit value="${action.getText('plugin.nfm.admin.nfm.migration.submit')}"/></td>
+            </tr>
+          </table>
+        </@s.form>
     </body>
-</html>
\ No newline at end of file
+</html>




More information about the jboss-svn-commits mailing list