[jboss-svn-commits] JBL Code SVN: r6645 - in labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status: common plugins plugins/math service/impl

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Fri Oct 6 10:00:22 EDT 2006


Author: wrzep
Date: 2006-10-06 10:00:19 -0400 (Fri, 06 Oct 2006)
New Revision: 6645

Modified:
   labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/common/Constants.java
   labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/common/Tags.java
   labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/Plugin.java
   labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/math/LastNDaysStatusPlugin.java
   labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/impl/ScoresDailyUpdater.java
Log:
JBLAB-599
Global "min-value" option for plugins to avoid negative scores.

Pawel


Modified: labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/common/Constants.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/common/Constants.java	2006-10-06 13:06:11 UTC (rev 6644)
+++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/common/Constants.java	2006-10-06 14:00:19 UTC (rev 6645)
@@ -21,6 +21,8 @@
 	public static final String COLUMN_DETAILS_ACTION = "viewColumnDetails";
 
 	public static final long DEFAULT_PLUGIN_VALUE		 = 0;
+	
+	public static final long PLUGIN_DEFAULT_MIN_VALUE = Long.MIN_VALUE;
 
 	public static final long CACHE_INTERVAL 			= 3*60*1000; /* milliseconds */
 						   /* Check for new scores every 3 minutes */

Modified: labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/common/Tags.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/common/Tags.java	2006-10-06 13:06:11 UTC (rev 6644)
+++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/common/Tags.java	2006-10-06 14:00:19 UTC (rev 6645)
@@ -70,23 +70,26 @@
 	/* plugins.xml tags */
 	
 		/* plugin element*/
-	public final static String PLUGIN_ELEMENT					= "plugin";
+	public final static String PLUGIN_ELEMENT				= "plugin";
 	
-	public final static String PLUGIN_ID_ELEMENT 				= "id";
+	public final static String PLUGIN_ID_ELEMENT 			= "id";
 	public final static String PLUGIN_CLASS_ELEMENT 			= "class";
-	public final static String PLUGIN_PROPERTIES_ELEMENT 		= "properties";
+	public final static String PLUGIN_PROPERTIES_ELEMENT 	= "properties";
 	
+		/* properties */
+	public static final String MIN_VALUE_PROPERTY 			= "min-value";
+	
 		/* kosmos plugins */
-	public static final String JIRA_SERVICE_PROPERTY 			= "jira-service";
+	public static final String JIRA_SERVICE_PROPERTY 		= "jira-service";
 	public static final String SVN_SERVICE_PROPERTY			= "svn-service";
 	public static final String CC_SERVICE_PROPERTY 			= "cc-service";
 	
-	public static final String CC_ADRESS_TAG 					= "cc-address";
+	public static final String CC_ADRESS_TAG 				= "cc-address";
 	
 		/* productization plugins */
 	public static final String FORUM_TYPE_TAG 				= "forum-type";
 	public static final String DOC_TYPE_TAG 					= "doc-type";
-	public static final String SUPPORT_TYPE_TAG = "support-type";
+	public static final String SUPPORT_TYPE_TAG 				= "support-type";
 	
 		/* other plugins */
 	public static final String DAYS_TAG						= "days";

Modified: labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/Plugin.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/Plugin.java	2006-10-06 13:06:11 UTC (rev 6644)
+++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/Plugin.java	2006-10-06 14:00:19 UTC (rev 6645)
@@ -28,6 +28,7 @@
 import org.jboss.forge.common.projects.Projects;
 import org.jboss.forge.common.projects.permissions.NullPermissionsChecker;
 import org.jboss.forge.status.common.Constants;
+import org.jboss.forge.status.common.Tags;
 import org.jboss.forge.status.exceptions.InvalidPluginPropertiesException;
 import org.jboss.forge.status.service.ScoresManager;
 import org.jboss.forge.status.tools.Plugins;
@@ -57,6 +58,8 @@
 	
 	protected ScoresManager scoresManager;
 	
+	protected long minValue;
+	
 	private Logger log = Logger.getLogger(Plugin.class);
 	
 	/**
@@ -81,8 +84,24 @@
 		this.plugins = plugins;
 		this.properties = properties;
 		this.scoresManager = scoresManager;
+		
+		parseProperties(properties);
 	}
 	
+	private void parseProperties(Properties properties2) {
+
+		if (properties == null) {
+			
+			minValue = Constants.PLUGIN_DEFAULT_MIN_VALUE;
+			
+		} else {
+		
+			String minValueString = properties.getProperty(
+													Tags.MIN_VALUE_PROPERTY);
+			minValue = Long.parseLong(minValueString);
+		}
+	}
+
 	/**
 	 * For the given project returns value specyfic to this plugin.
 	 * If an error occured while computing a value, returns
@@ -106,7 +125,7 @@
 												"\nCause: " + e.getMessage());	
 		}
 		
-		return v;
+		return Math.max(v, minValue);
 	}
 	
 	/**
@@ -214,5 +233,4 @@
 		
 		return s;
 	}
-	
 }

Modified: labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/math/LastNDaysStatusPlugin.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/math/LastNDaysStatusPlugin.java	2006-10-06 13:06:11 UTC (rev 6644)
+++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/math/LastNDaysStatusPlugin.java	2006-10-06 14:00:19 UTC (rev 6645)
@@ -94,7 +94,6 @@
 			return 0;
 		}
 		
-		//TODO add an option if score could be below 0
-		return Math.max(currentValue - prevValue, 0);
+		return (currentValue - prevValue);
 	}
 }

Modified: labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/impl/ScoresDailyUpdater.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/impl/ScoresDailyUpdater.java	2006-10-06 13:06:11 UTC (rev 6644)
+++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/impl/ScoresDailyUpdater.java	2006-10-06 14:00:19 UTC (rev 6645)
@@ -65,18 +65,16 @@
 	@Timeout
     public void update(Timer timer) {
 		
-       log.info("UPDATE!");
+       log.info("Updating scores...");
        
        ScoresManager scoresManager = (ScoresManager) timer.getInfo();
-       
-       log.info("ScoresManager: " + scoresManager);
       
        try {
-    	   scoresManager.save();
+    	   		scoresManager.save();
     	   
        } catch (ScoresSaveException e) {
     	   
-    	   log.warn("Unable to update scores.\nCause: " + e.getMessage());
+    	   		log.warn("Unable to update scores.\nCause: " + e.getMessage());
        }
     }
 	




More information about the jboss-svn-commits mailing list