[jboss-svn-commits] JBL Code SVN: r5098 - in labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status: . plugins plugins/codelines service service/impl tools

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Fri Jul 14 10:46:04 EDT 2006


Author: wrzep
Date: 2006-07-14 10:45:53 -0400 (Fri, 14 Jul 2006)
New Revision: 5098

Modified:
   labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/Status.java
   labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/StatusDescriptor.java
   labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/KosmosStatusPlugin.java
   labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/LastNDaysStatusPlugin.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/RandomPlugin.java
   labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/WeightedScorePlugin.java
   labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/codelines/AddedCodeLinesPlugin.java
   labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/ScoresService.java
   labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/impl/ScoresManager.java
   labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/impl/ScoresServiceImpl.java
   labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/tools/Plugins.java
Log:

JBLAB-689
Pawel


Modified: labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/Status.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/Status.java	2006-07-14 14:26:21 UTC (rev 5097)
+++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/Status.java	2006-07-14 14:45:53 UTC (rev 5098)
@@ -42,10 +42,8 @@
 import org.jboss.forge.status.exceptions.ScoresSaveException;
 import org.jboss.forge.status.service.impl.ScoresManager;
 import org.jboss.forge.status.service.impl.protocol.PluginConfImpl;
-import org.jboss.forge.status.service.impl.protocol.ServiceConfImpl;
 import org.jboss.forge.status.service.protocol.PluginConf;
 import org.jboss.forge.status.service.protocol.PluginsValues;
-import org.jboss.forge.status.service.protocol.ServiceConf;
 import org.jboss.forge.status.templates.Column;
 import org.jboss.forge.status.templates.Columns;
 import org.jboss.forge.status.templates.MatrixTemplate;
@@ -76,6 +74,8 @@
 	private Calendar updateDate;
 	private boolean firstSave = false; /* true iff first save was performed */
 	
+	private ScoresManager scoresManager;
+	
 	private Logger log;
 	
 	/**
@@ -84,7 +84,7 @@
 	 * @param pluginsRoot Node defining Plugins used in the Matrix
 	 */
 	public Status(String portalName, Node statusRoot, Node pluginsRoot,
-								org.jboss.shotoku.Node serviceNode) 
+								ScoresManager scoresManager) 
 												throws GetScoresException {
 		
 		log = Logger.getLogger(this.getClass());
@@ -92,19 +92,18 @@
 		// Get configuration		
 		projects = ProjectsHelper.getProjects(portalName); 
 		pluginsConf = getPluginsConfList(pluginsRoot);
-		ServiceConf serviceConf = new ServiceConfImpl(serviceNode);
 	
-		ScoresManager.init(portalName, serviceConf);
+		this.scoresManager = scoresManager; 
 		
 		PluginsValues pluginsValues;
 		
 		//	Get latest available scores
 		try { 	
-			pluginsValues = ScoresManager.getLatestScores();
+			pluginsValues = scoresManager.getLatestScores();
 			updateDate = pluginsValues.getDate();
 		} catch (GetScoresException e) {
 			log.warn("Getting computed scores failed ", e);
-			ScoresManager.saveAsync(projects, pluginsConf);			
+			scoresManager.saveAsync(projects, pluginsConf);			
 			throw e;
 		}
 		
@@ -217,14 +216,15 @@
 		if (needsSave(updateDate)) {
 			
 			try {
-				ScoresManager.save(projects, pluginsConf);
+				System.out.println("scoresMaage/update: " + scoresManager);
+				scoresManager.save(projects, pluginsConf);
 			} catch (ScoresSaveException e) {
 				log.warn("Saving scores failed.");
 			}
 		}
 		
 		try {
-			pluginsValues = ScoresManager.getLatestScores();
+			pluginsValues = scoresManager.getLatestScores();
 		} catch (GetScoresException e) {
 			log.warn("Failed to get lates scores.");
 		}

Modified: labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/StatusDescriptor.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/StatusDescriptor.java	2006-07-14 14:26:21 UTC (rev 5097)
+++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/StatusDescriptor.java	2006-07-14 14:45:53 UTC (rev 5098)
@@ -27,7 +27,10 @@
 import java.io.IOException;
 
 import org.jboss.forge.status.common.Locations;
-import org.jboss.forge.status.exceptions.GetScoresException;
+import org.jboss.forge.status.exceptions.ScoresException;
+import org.jboss.forge.status.service.impl.ScoresManager;
+import org.jboss.forge.status.service.impl.protocol.ServiceConfImpl;
+import org.jboss.forge.status.service.protocol.ServiceConf;
 import org.jboss.portal.common.context.DelegateContext;
 
 import org.jboss.shotoku.ContentManager;
@@ -77,13 +80,16 @@
 					
 			String servicePath = Locations.getServicePropertiesCmPath(portalName);
 			org.jboss.shotoku.Node serviceNode = cm.getNode(servicePath);
+			ServiceConf serviceConf = new ServiceConfImpl(serviceNode);
+			ScoresManager scoresManager = new ScoresManager(portalName, serviceConf);
 			
+			System.out.println("scoresMaage/desc: " + scoresManager);
 			status = new Status(portalName, statusRoot, pluginsRoot,
-															serviceNode);
+															scoresManager);
 			
 			fillContext();
 			
-		} catch (GetScoresException e){
+		} catch (ScoresException e){
 			// do nothing
 		} catch (Exception e) {
 			e.printStackTrace();

Modified: labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/KosmosStatusPlugin.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/KosmosStatusPlugin.java	2006-07-14 14:26:21 UTC (rev 5097)
+++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/KosmosStatusPlugin.java	2006-07-14 14:45:53 UTC (rev 5098)
@@ -24,6 +24,7 @@
 
 import org.jboss.forge.common.projects.Projects;
 import org.jboss.forge.status.exceptions.InvalidPluginPropertiesException;
+import org.jboss.forge.status.service.impl.ScoresManager;
 import org.jboss.forge.status.tools.Plugins;
 
 import org.jboss.logging.Logger;
@@ -65,9 +66,9 @@
 	
 	@Override
 	public void init(String id, String portalName, Projects projects,
-			Plugins plugins, Properties properties)
+			Plugins plugins, Properties properties, ScoresManager scoresManager)
 									throws InvalidPluginPropertiesException {
-		super.init(id, portalName, projects, plugins, properties);
+		super.init(id, portalName, projects, plugins, properties, scoresManager);
 		
 		getServiceProperty(properties);
 	}

Modified: labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/LastNDaysStatusPlugin.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/LastNDaysStatusPlugin.java	2006-07-14 14:26:21 UTC (rev 5097)
+++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/LastNDaysStatusPlugin.java	2006-07-14 14:45:53 UTC (rev 5098)
@@ -44,7 +44,7 @@
 	
 	@Override
 	public void init(String id, String portalName, Projects projects,
-			Plugins plugins, Properties properties)
+			Plugins plugins, Properties properties, ScoresManager scoresManager)
 								throws InvalidPluginPropertiesException {
 		
 		if (properties == null) {
@@ -72,7 +72,7 @@
 		}
 		days = Integer.parseInt(daysString);
 		
-		super.init(id, portalName, projects, plugins, properties);
+		super.init(id, portalName, projects, plugins, properties, scoresManager);
 	}
 
 	@Override
@@ -87,7 +87,7 @@
 		cal.add(Calendar.DAY_OF_MONTH,-days);
 		
 		try {
-			prevValue = ScoresManager.getValue(
+			prevValue = scoresManager.getValue(
 					insidePlugin.getId(), projectId, cal, now);
 		} catch (GetScoresException e) {
 			return 0;

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-07-14 14:26:21 UTC (rev 5097)
+++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/Plugin.java	2006-07-14 14:45:53 UTC (rev 5098)
@@ -28,6 +28,7 @@
 import org.jboss.forge.common.projects.Projects;
 import org.jboss.forge.common.projects.permissions.NullPermissionsChecker;
 import org.jboss.forge.status.exceptions.InvalidPluginPropertiesException;
+import org.jboss.forge.status.service.impl.ScoresManager;
 import org.jboss.forge.status.tools.Plugins;
 
 /**
@@ -52,19 +53,23 @@
 	/** Plugins loaded before this plugin */
 	protected Plugins plugins;
 	
+	protected ScoresManager scoresManager;
+	
 	/**
 	 * @param id Plugin id
 	 * @param portalName Portal name
 	 * @param projects Projects present in the Status Matrix
-	 * @patam plugins Plugins loaded before this plugin
 	 * @param properties plugin specyfic properties
 	 * or null if properties are not specified
+	 * @param scoresManager TODO
+	 * @param scoresManager 
+	 * @patam plugins Plugins loaded before this plugin
 	 * @throws InvalidPluginPropertiesException
 	 * Thrown when properties passed in <code>propertiesNode</code>
 	 * are incorrect or missing. 
 	 */
 	public void init(String id, String portalName, Projects projects,
-			Plugins plugins, Properties properties)
+			Plugins plugins, Properties properties, ScoresManager scoresManager)
 						throws InvalidPluginPropertiesException {
 		
 		this.id = id;

Modified: labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/RandomPlugin.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/RandomPlugin.java	2006-07-14 14:26:21 UTC (rev 5097)
+++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/RandomPlugin.java	2006-07-14 14:45:53 UTC (rev 5098)
@@ -27,6 +27,7 @@
 
 import org.jboss.forge.common.projects.Projects;
 import org.jboss.forge.status.exceptions.InvalidPluginPropertiesException;
+import org.jboss.forge.status.service.impl.ScoresManager;
 import org.jboss.forge.status.tools.Plugins;
 
 /**
@@ -42,7 +43,7 @@
 	
 	@Override
 	public void init(String id, String portalName, Projects projects,
-			Plugins plugins, Properties properties)
+			Plugins plugins, Properties properties, ScoresManager scoresManager)
 								throws InvalidPluginPropertiesException {
 		
 		maxValue = RANDOM_DEFAULT_MAX_VALUE;
@@ -53,7 +54,7 @@
 		
 		random = new Random();
 		
-		super.init(id, portalName, projects, plugins, properties);
+		super.init(id, portalName, projects, plugins, properties, scoresManager);
 	}
 
 	@Override

Modified: labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/WeightedScorePlugin.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/WeightedScorePlugin.java	2006-07-14 14:26:21 UTC (rev 5097)
+++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/WeightedScorePlugin.java	2006-07-14 14:45:53 UTC (rev 5098)
@@ -29,6 +29,7 @@
 
 import org.jboss.forge.common.projects.Projects;
 import org.jboss.forge.status.exceptions.InvalidPluginPropertiesException;
+import org.jboss.forge.status.service.impl.ScoresManager;
 import org.jboss.forge.status.tools.Plugins;
 
 /**
@@ -49,10 +50,10 @@
 	
 	@Override
 	public void init(String id, String portalName, Projects projects,
-			Plugins plugins, Properties props)
+			Plugins plugins, Properties props, ScoresManager scoresManager)
 								throws InvalidPluginPropertiesException {
 		
-		super.init(id, portalName, projects, plugins, props);
+		super.init(id, portalName, projects, plugins, props, scoresManager);
 
 		properties = new Hashtable<String,Float>(props.size());
 		

Modified: labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/codelines/AddedCodeLinesPlugin.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/codelines/AddedCodeLinesPlugin.java	2006-07-14 14:26:21 UTC (rev 5097)
+++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/codelines/AddedCodeLinesPlugin.java	2006-07-14 14:45:53 UTC (rev 5098)
@@ -27,6 +27,7 @@
 import org.jboss.forge.common.projects.Projects;
 import org.jboss.forge.status.common.Tags;
 import org.jboss.forge.status.exceptions.InvalidPluginPropertiesException;
+import org.jboss.forge.status.service.impl.ScoresManager;
 import org.jboss.forge.status.tools.Plugins;
 
 /**
@@ -41,7 +42,7 @@
 	
 	@Override
 	public void init(String id, String portalName, Projects projects,
-									Plugins plugins, Properties properties)
+									Plugins plugins, Properties properties, ScoresManager scoresManager)
 									throws InvalidPluginPropertiesException {
 		
 		if (properties == null ) {
@@ -58,7 +59,7 @@
 		
 		days = Integer.parseInt(daysString);
 	
-		super.init(id, portalName, projects, plugins, properties);
+		super.init(id, portalName, projects, plugins, properties, scoresManager);
 	}
 	
 	@Override

Modified: labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/ScoresService.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/ScoresService.java	2006-07-14 14:26:21 UTC (rev 5097)
+++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/ScoresService.java	2006-07-14 14:45:53 UTC (rev 5098)
@@ -28,6 +28,8 @@
 import org.jboss.forge.common.projects.Projects;
 import org.jboss.forge.status.exceptions.GetScoresException;
 import org.jboss.forge.status.exceptions.ScoresSaveException;
+import org.jboss.forge.status.service.impl.ScoresManager;
+import org.jboss.forge.status.service.impl.ScoresRepositoryManager;
 import org.jboss.forge.status.service.protocol.PluginConf;
 import org.jboss.forge.status.service.protocol.PluginsValues;
 
@@ -36,11 +38,14 @@
 */
 public interface ScoresService {
 	
-	public void save(Projects projects, List<PluginConf> pluginsConf,
-			String portalName) throws ScoresSaveException;	
+	public void init(String portalName, ScoresManager scoresManager,
+			ScoresRepositoryManager repositoryManager);
 	
-	public PluginsValues getPluginsValues(String portalName, Calendar cal)
+	public void save(Projects projects, List<PluginConf> pluginsConf)
+												throws ScoresSaveException;	
+	
+	public PluginsValues getPluginsValues(Calendar cal)
 												throws GetScoresException;
 	
-	public boolean hasPluginsValues(String portalName, Calendar cal);
+	public boolean hasPluginsValues(Calendar cal);
 }
\ No newline at end of file

Modified: labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/impl/ScoresManager.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/impl/ScoresManager.java	2006-07-14 14:26:21 UTC (rev 5097)
+++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/impl/ScoresManager.java	2006-07-14 14:45:53 UTC (rev 5098)
@@ -33,6 +33,7 @@
 
 import org.jboss.forge.common.projects.Projects;
 import org.jboss.forge.status.exceptions.GetScoresException;
+import org.jboss.forge.status.exceptions.ScoresException;
 import org.jboss.forge.status.exceptions.ScoresSaveException;
 import org.jboss.forge.status.service.ScoresService;
 import org.jboss.forge.status.service.ScoresServiceLocal;
@@ -49,77 +50,75 @@
 
 public class ScoresManager {
 	
-	private static String portalName;
-	private static Properties properties;
-	private static boolean isRemote;
-	private static Logger log;
+	private Properties properties;
+	private boolean isRemote;
+	private Logger log;
 	
-	public static void init(String portalName, ServiceConf serviceConf) {
+	ScoresService service;
+	
+	public ScoresManager(String portalName, ServiceConf serviceConf)
+												throws ScoresException {
 		
-		ScoresManager.portalName = portalName;
 		
 		properties = serviceConf.getProperties();
 		isRemote = serviceConf.isRemote();
 		
-		log = Logger.getLogger(ScoresManager.class);
+		log = Logger.getLogger(this.getClass());
+		
+		try {
+			service = getService();
+			service.init(portalName, this, null);
+		} catch (NamingException e) {
+			throw new ScoresException(e);
+		}
+		
 	}
 	
-	public static void saveAsync(final Projects projects,
+	public void saveAsync(final Projects projects,
 			final List<PluginConf> pluginsConf) {
 		
 		new Thread() {
 			
 			public void run() {
-				ScoresManager.saveAsyncOnce(projects, pluginsConf);
+				saveAsyncOnce(projects, pluginsConf);
 			}
 			
 		}.start();
 		
 	}
 	
-	private static synchronized void saveAsyncOnce(Projects projects,
+	private synchronized void saveAsyncOnce(Projects projects,
 										List<PluginConf> pluginsConf) {
 		try {
 			log.info("Saving scores asynchronously...");
-			ScoresManager.save(projects, pluginsConf);
+			save(projects, pluginsConf);
 			log.info("Finished async save.");
 		} catch (ScoresSaveException e) {
 			log.warn("Async saving scores failed.");
 		}
 	}
 
-	public static void save(Projects projects,
+	public void save(Projects projects,
 										List<PluginConf> pluginsConf)
 										throws ScoresSaveException {
 
-		ScoresService service = null;
-
-		try {
-			service = getService();
-		} catch (NamingException e) {
-			throw new ScoresSaveException(e);
-		}
-
-		service.save(projects, pluginsConf, portalName);	
+		service.save(projects, pluginsConf);	
 	}
 	
 	
-	public static boolean hasScores(Calendar cal) throws NamingException {
+	public boolean hasScores(Calendar cal) throws NamingException {
 		
-		ScoresService service = getService();
-		
-		return service.hasPluginsValues(portalName, cal);
+		return service.hasPluginsValues(cal);
 	}
 	
 	
-	public static PluginsValues getScores(Calendar cal)
+	public PluginsValues getScores(Calendar cal)
 										throws GetScoresException {
 
 		PluginsValues pluginsValues = null;
 
 		try {
-			ScoresService service = getService(); 
-			pluginsValues = service.getPluginsValues(portalName, cal);
+			pluginsValues = service.getPluginsValues(cal);
 		} catch (Exception e) {
 			throw new GetScoresException(e);
 		}
@@ -132,7 +131,7 @@
 	}
 	
 	
-	public static PluginsValues getLatestScores()
+	public PluginsValues getLatestScores()
 									throws GetScoresException {
 		
 		Calendar cal = Calendar.getInstance();
@@ -145,13 +144,13 @@
 			boolean hasScores;
 			
 			try {
-				hasScores = ScoresManager.hasScores(cal);
+				hasScores = hasScores(cal);
 			} catch (NamingException e) {
 				throw new GetScoresException(e);
 			}
 			
 			if (hasScores) {
-				return ScoresManager.getScores(cal);
+				return getScores(cal);
 			}
 			
 			if ((++attempts) == Constants.MAX_ATTEMPTS) {
@@ -174,7 +173,7 @@
 	 * @return project score from the given date for specified plugin
 	 * @throws GetScoresException
 	 */
-	public static long getValue(String pluginId, String projectId,
+	public long getValue(String pluginId, String projectId,
 											Calendar cal)
 			throws GetScoresException {
 		
@@ -183,7 +182,7 @@
 		return pluginsValues.getPluginValue(pluginId, projectId);
 	}
 
-	public static long getValue(String id, String projectId,
+	public long getValue(String id, String projectId,
 			Calendar start, Calendar end) throws GetScoresException {
 		
 		long value;
@@ -205,7 +204,7 @@
 		}
 	}
 	
-	private static ScoresService getService() throws NamingException {
+	private ScoresService getService() throws NamingException {
 		
 		Context context = null;
 		if (isRemote) {

Modified: labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/impl/ScoresServiceImpl.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/impl/ScoresServiceImpl.java	2006-07-14 14:26:21 UTC (rev 5097)
+++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/impl/ScoresServiceImpl.java	2006-07-14 14:45:53 UTC (rev 5098)
@@ -27,7 +27,7 @@
 
 import javax.ejb.Local;
 import javax.ejb.Remote;
-import javax.ejb.Stateless;
+import javax.ejb.Stateful;
 
 import org.jboss.annotation.ejb.LocalBinding;
 import org.jboss.annotation.ejb.RemoteBinding;
@@ -50,15 +50,30 @@
 * @author Pawel Wrzeszcz (pawel.wrzeszcz [at] gmail.com)
 */
 
- at Stateless
+ at Stateful
 @Local(ScoresServiceLocal.class)
 @LocalBinding(jndiBinding=Constants.STATUS_LOCAL_SERVICE)
 @Remote(ScoresServiceRemote.class)
 @RemoteBinding(jndiBinding=Constants.STATUS_REMOTE_SERVICE)
 public class ScoresServiceImpl implements ScoresService {
 	
-	private static Logger log = Logger.getLogger(ScoresServiceImpl.class);
+	private Logger log;
 
+	private String portalName;
+	
+	private ScoresManager scoresManager;
+	private ScoresRepositoryManager repositoryManager;
+	
+	public void init(String portalName, ScoresManager scoresManager,
+								ScoresRepositoryManager repositoryManager) {
+		
+		this.portalName = portalName;
+		this.scoresManager = scoresManager;
+		this.repositoryManager = repositoryManager;
+		
+		log = Logger.getLogger(this.getClass());
+	}
+	
 	/**
 	 * Saves current plugin values.
 	 * 
@@ -67,13 +82,16 @@
 	 * @param portalName
 	 * @return true iff saving was successful
 	 */
-	public void save(Projects projects, List<PluginConf> pluginsConf, 
-			String portalName) throws ScoresSaveException {
+	public void save(Projects projects, List<PluginConf> pluginsConf)
+												throws ScoresSaveException {
 		
+		System.out.println("log: " + log + " portalName: " + portalName);
+		
 		log.info("Getting plugins...");
 		
 		// Get plugins from conf
-		Plugins plugins = new Plugins(pluginsConf, portalName, projects);
+		Plugins plugins = new Plugins(pluginsConf, portalName, projects,
+															scoresManager);
 		
 		log.info("Computing scores...");
 		
@@ -94,18 +112,18 @@
 	 * @return scores from the given date
 	 * @throws GetScoresException
 	 */
-	public PluginsValues getPluginsValues(String portalName, Calendar cal)
+	public PluginsValues getPluginsValues(Calendar cal)
 									throws GetScoresException {
 		
 		return ScoresRepositoryManager.get(portalName, cal);
 	}
 	
-	public boolean hasPluginsValues(String portalName, Calendar cal) {
+	public boolean hasPluginsValues(Calendar cal) {
 		
 		PluginsValues pluginsValues = null;
 		
 		try {
-			pluginsValues = getPluginsValues(portalName, cal);
+			pluginsValues = getPluginsValues(cal);
 		} catch (GetScoresException e) {
 			return false;
 		}

Modified: labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/tools/Plugins.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/tools/Plugins.java	2006-07-14 14:26:21 UTC (rev 5097)
+++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/tools/Plugins.java	2006-07-14 14:45:53 UTC (rev 5098)
@@ -34,6 +34,7 @@
 import org.jboss.forge.status.common.Tags;
 import org.jboss.forge.status.exceptions.InvalidPluginPropertiesException;
 import org.jboss.forge.status.plugins.Plugin;
+import org.jboss.forge.status.service.impl.ScoresManager;
 import org.jboss.forge.status.service.protocol.PluginConf;
 
 import org.jboss.logging.Logger;
@@ -55,6 +56,8 @@
 	 */
 	private Projects projects;
 	
+	private ScoresManager scoresManager;
+	
 	private Logger log;
 	
 	/**
@@ -63,9 +66,10 @@
 	 * @param projects Projects present in the Status Matrix
 	 */
 	public Plugins(List<PluginConf> pluginsConf, String portalName,
-													Projects projects) {
+							Projects projects, ScoresManager scoresManager) {
 		
 		this.projects = projects;
+		this.scoresManager = scoresManager;
 		
 		log = Logger.getLogger(this.getClass());
 		
@@ -114,7 +118,7 @@
 			plugin = (Plugin) pluginClass.newInstance();
 			
 			plugin.init(pluginId, portalName, projects,
-					this, pluginProperties);
+					this, pluginProperties, scoresManager);
 			
 		} catch (InvalidPluginPropertiesException e) {
 			log.warn("Plugin class: " + pluginClassString + 




More information about the jboss-svn-commits mailing list