From: <jbo...@li...> - 2006-04-20 22:24:50
|
Author: wrzep Date: 2006-04-20 18:24:43 -0400 (Thu, 20 Apr 2006) New Revision: 3861 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/plugins/Last7DaysStatusPlugin.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/ScoresServiceImpl.java labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/ScoresServiceLocal.java labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/tools/PluginConf.java labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/tools/PluginValues.java 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/PluginsValues.java labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/tools/ScoresManager.java Log: JBLAB-599 Cleanup after fixing ejb3 service. 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-04-20 22:22:31 UTC (rev 3860) +++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/Status.java 2006-04-20 22:24:43 UTC (rev 3861) @@ -85,11 +85,34 @@ // Get projects projects = ProjectsHelper.getProjects(portalName); - // Get plugins + // Get plugins configuration List<PluginConf> pluginsConf = getPluginsConfList(pluginsRoot); - plugins = new Plugins(pluginsConf, portalName, projects); + + PluginsValues pluginsValues; - PluginsValues pluginsValues = new PluginsValues(projects, plugins); + try { + ScoresManager scoresManager = new ScoresManager(portalName); + + // Compute and save current scores + boolean b = scoresManager.save(projects, pluginsConf); + + // <debug> + System.out.print("save: " + b); + System.out.println("** class: " + pluginsConf); + System.out.println("** item class: " + pluginsConf.get(0)); + System.out.println("** item x: " + pluginsConf.get(0).getFieldValue("x")); + + long v = scoresManager.getValue("downloads", "jbosswiki", new Date(), new Date()); + System.out.println("value = " + v); + // </debug> + + pluginsValues = scoresManager.getCurrentScores(); + + } catch (PluginValueNotFoundException e) { + + e.printStackTrace(); //TODO log msg + return; + } // Get columns to display on the main page Node mainPageRoot = @@ -103,20 +126,7 @@ Tags.PROJECT_PAGE_COLUMNS_TAG); matrixTemplate = new MatrixTemplate(projectPageRoot, pluginsValues, projects); - - // debug - try { - boolean b = ScoresManager.save(projects, pluginsConf, portalName); - System.out.print("save: " + b); - System.out.println("** class: " + pluginsConf); - System.out.println("** item class: " + pluginsConf.get(0)); - System.out.println("** item x: " + pluginsConf.get(0).getFieldValue("x")); - - long v = ScoresManager.getValue("downloads", "jbosswiki", portalName, new Date(), new Date()); - System.out.println("value = " + v); - } catch (PluginValueNotFoundException e) { - e.printStackTrace(); - } + } private List<PluginConf> getPluginsConfList(Node pluginsRoot) { Modified: labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/Last7DaysStatusPlugin.java =================================================================== --- labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/Last7DaysStatusPlugin.java 2006-04-20 22:22:31 UTC (rev 3860) +++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/Last7DaysStatusPlugin.java 2006-04-20 22:24:43 UTC (rev 3861) @@ -41,6 +41,8 @@ Plugin insidePlugin; + ScoresManager scoresManager; + @Override public void init(String id, String portalName, Projects projects, Plugins plugins, Properties properties) @@ -64,6 +66,8 @@ "Plugin " + insidePluginId + " not found."); } + scoresManager = new ScoresManager(portalName); + super.init(id, portalName, projects, plugins, properties); } @@ -79,8 +83,8 @@ Date prev = cal.getTime(); try { - prevValue = ScoresManager.getValue( - insidePlugin.getId(), projectId, portalName, prev,now); + prevValue = scoresManager.getValue( + insidePlugin.getId(), projectId, prev,now); } catch (PluginValueNotFoundException e) { return 0; } 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-04-20 22:22:31 UTC (rev 3860) +++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/ScoresService.java 2006-04-20 22:24:43 UTC (rev 3861) @@ -36,14 +36,13 @@ * @author Pawel Wrzeszcz (pawel.wrzeszcz [at] gmail.com) */ public interface ScoresService { - /* - public Object getPluginsValues(String portalName, - Date date) throws PluginValueNotFoundException;*/ + public PluginsValues getPluginsValues(String portalName, + Date date) throws PluginValueNotFoundException; + public boolean save(Projects projects, List<PluginConf> pluginsConf, String portalName); - public PluginValues get(String portalName, Date date) throws PluginValueNotFoundException; - - //public void fill(PluginValues x, String portalName, Date date) throws PluginValueNotFoundException; + public PluginValues get(String portalName, Date date) + throws PluginValueNotFoundException; } \ No newline at end of file Modified: labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/ScoresServiceImpl.java =================================================================== --- labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/ScoresServiceImpl.java 2006-04-20 22:22:31 UTC (rev 3860) +++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/ScoresServiceImpl.java 2006-04-20 22:24:43 UTC (rev 3861) @@ -22,25 +22,26 @@ package org.jboss.forge.status.service; +import java.io.IOException; +import java.io.InputStream; +import java.io.ObjectInputStream; +import java.io.ObjectOutputStream; +import java.io.OutputStream; +import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; -import java.text.SimpleDateFormat; -import java.io.IOException; -import java.io.InputStream; -import java.io.ObjectInputStream; -import java.io.ObjectOutputStream; -import java.io.OutputStream; - import javax.ejb.Local; import org.jboss.annotation.ejb.LocalBinding; import org.jboss.annotation.ejb.Management; import org.jboss.annotation.ejb.Service; + import org.jboss.forge.common.projects.Projects; + import org.jboss.forge.status.exceptions.PluginValueNotFoundException; import org.jboss.forge.status.tools.PluginConf; import org.jboss.forge.status.tools.PluginValues; @@ -49,7 +50,6 @@ import org.jboss.forge.status.tools.Tools; import org.jboss.logging.Logger; - import org.jboss.shotoku.ContentManager; import org.jboss.shotoku.Directory; import org.jboss.shotoku.Node; @@ -143,10 +143,9 @@ * @return scores from the given date * @throws PluginValueNotFoundException */ - private PluginsValues getPluginsValues(String portalName, Date date) + public PluginsValues getPluginsValues(String portalName, Date date) throws PluginValueNotFoundException { - log.info("1"); // null date means today if (date == null) { Calendar cal = Calendar.getInstance(); @@ -155,21 +154,17 @@ String key = getNodeName(date); PluginsValues v = values.get(key); - log.info("2"); if (v == null) { // Not in cache => get value and store it - log.info("3"); Directory dir = getDir(cm.getRootDirectory(), Tools.getShotokuStatusPath(portalName)); if (dir != null) { - log.info("4"); v = getPluginsValues(dir, date); values.put(key,v); } } - log.info("5"); return v; } @@ -337,18 +332,5 @@ public PluginValues get(String portalName, Date date) throws PluginValueNotFoundException { return ((PluginsValues)getPluginsValues(portalName, date)).getPluginValues("downloads"); } - - public void fill(PluginValues x, String portalName, Date date) throws PluginValueNotFoundException { - - PluginValues y = ((PluginsValues)getPluginsValues(portalName, date)).getPluginValues("downloads"); - - if (y == null) { - log.info("null pluginValues"); - return; - } - - x.fill(y); - - } } Modified: labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/ScoresServiceLocal.java =================================================================== --- labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/ScoresServiceLocal.java 2006-04-20 22:22:31 UTC (rev 3860) +++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/ScoresServiceLocal.java 2006-04-20 22:24:43 UTC (rev 3861) @@ -31,19 +31,17 @@ import org.jboss.forge.status.tools.PluginValues; import org.jboss.forge.status.tools.PluginsValues; - /** * @author Pawel Wrzeszcz (pawel.wrzeszcz [at] gmail.com) */ public interface ScoresServiceLocal { - /* - public Object getPluginsValues(String portalName, + + public PluginsValues getPluginsValues(String portalName, Date date) throws PluginValueNotFoundException; -*/ + public boolean save(Projects projects, List<PluginConf> pluginsConf, String portalName); - - public PluginValues get(String portalName, Date date) throws PluginValueNotFoundException; - - //public void fill(PluginValues x, String portalName, Date date) throws PluginValueNotFoundException; + + public PluginValues get(String portalName, Date date) + throws PluginValueNotFoundException; } \ No newline at end of file Modified: labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/tools/PluginConf.java =================================================================== --- labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/tools/PluginConf.java 2006-04-20 22:22:31 UTC (rev 3860) +++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/tools/PluginConf.java 2006-04-20 22:24:43 UTC (rev 3861) @@ -36,9 +36,9 @@ * @author Pawel Wrzeszcz */ public class PluginConf implements Serializable { - - private static final long serialVersionUID = 1L; + private static final long serialVersionUID = 8598887068548048511L; + private Map<String,String> fields = new HashMap<String,String>(); private Properties properties = new Properties(); @@ -109,8 +109,5 @@ } } } - - public void set(String x, String v) { //debug - fields.put(x,v); - } + } \ No newline at end of file Modified: labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/tools/PluginValues.java =================================================================== --- labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/tools/PluginValues.java 2006-04-20 22:22:31 UTC (rev 3860) +++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/tools/PluginValues.java 2006-04-20 22:24:43 UTC (rev 3861) @@ -36,20 +36,16 @@ */ public class PluginValues implements Serializable { - - private static final long serialVersionUID = 1L; + private static final long serialVersionUID = 5196364802717262757L; + private Map<String,Long> values = new HashMap<String,Long>(); private Map<String,Integer> rates = new HashMap<String,Integer>(); private Map<String,String> links = new HashMap<String,String>(); private String pluginId; private String linkName; - - public PluginValues() { - // TODO Auto-generated constructor stub - } - + public PluginValues(Plugin plugin, Set<String> projectIds) { // Get plugin properties @@ -84,15 +80,4 @@ public String getLinkName() { return linkName; } - - public void fill(PluginValues y) { - - pluginId = y.getId(); - linkName = y.getLinkName(); - /* - values = y.values; - rates = y.rates; - links = y.links; - */ - } } 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-04-20 22:22:31 UTC (rev 3860) +++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/tools/Plugins.java 2006-04-20 22:24:43 UTC (rev 3861) @@ -23,14 +23,12 @@ package org.jboss.forge.status.tools; import java.util.HashMap; -import java.util.Iterator; import java.util.List; import java.util.Map; import java.util.Collection; import java.util.Properties; import java.util.Set; -import org.jboss.forge.common.XmlTools; import org.jboss.forge.common.projects.Projects; import org.jboss.forge.status.exceptions.InvalidPluginPropertiesException; @@ -38,9 +36,6 @@ import org.jboss.logging.Logger; -import org.w3c.dom.Node; -import org.w3c.dom.NodeList; - /** * @author Pawel Wrzeszcz * A class storing plugins that occur in the Status Matrix. @@ -161,9 +156,6 @@ if (plugin != null) { plugins.put(plugin.getId(), plugin); } - - //debug - pluginConf.set("x", "added"); } } Modified: labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/tools/PluginsValues.java =================================================================== --- labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/tools/PluginsValues.java 2006-04-20 22:22:31 UTC (rev 3860) +++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/tools/PluginsValues.java 2006-04-20 22:24:43 UTC (rev 3861) @@ -43,6 +43,10 @@ public class PluginsValues implements Serializable { + //TODO IMPORTANT PluginsValues should be interface + + private static final long serialVersionUID = -1669515339062166738L; + /** Map : pluginId -> pluginValue */ private Map<String,PluginValues> values; Modified: labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/tools/ScoresManager.java =================================================================== --- labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/tools/ScoresManager.java 2006-04-20 22:22:31 UTC (rev 3860) +++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/tools/ScoresManager.java 2006-04-20 22:24:43 UTC (rev 3861) @@ -39,23 +39,35 @@ public class ScoresManager { - /** - * For the specified plugin returns historical project score - * from the given <code>date</code> in the past. - * If scores from specified day are not available, - * the next available scores saved at the day before or equal - * to <code>toDate</code> are returned. - * - * Notice that only year, month and day matter in passed dates. - * - * @return project score from the given date for specified plugin - * @throws PluginValueNotFoundException - */ - public static long getValue(String pluginId, String projectId, - String portalName, Date date, Date toDate) - throws PluginValueNotFoundException { + private String portalName; + + public ScoresManager(String portalName) { + this.portalName = portalName; + } + + public boolean save(Projects projects, List<PluginConf> pluginsConf) { + + try { + MBeanServer server = MBeanServerLocator.locate(); + + ScoresService service = (ScoresService) MBeanProxyExt.create( + ScoresService.class, + Tools.STATUS_SERVICE_NAME, + server); + + return service.save(projects, pluginsConf, portalName); + + } catch (Exception e) { + e.printStackTrace (); //TODO log msg + } + + return false; + } + + public PluginsValues getScores(Date date, Date toDate) + throws PluginValueNotFoundException { - PluginsValues v = null; + PluginsValues pluginsValues = null; try { MBeanServer server = MBeanServerLocator.locate(); @@ -65,42 +77,45 @@ Tools.STATUS_SERVICE_NAME, server); - PluginValues x = service.get(portalName, date); - System.out.println("x ---> " + x); - System.out.println("x.jbosswiki ---> " + x.getValue("jbosswiki")); - /* - Object vv = service.getPluginsValues(portalName, date); - System.out.println("class: " + vv.getClass() + " / " + vv.toString()); - v = (PluginsValues) vv;*/ + pluginsValues = service.getPluginsValues(portalName, date); } catch (Exception e) { e.printStackTrace (); } - if (v == null) { + if (pluginsValues == null) { throw new PluginValueNotFoundException(); } - - return v.getPluginValue(pluginId, projectId); + + return null; } - public static boolean save(Projects projects, List<PluginConf> pluginsConf, - String portalName) { + /** + * For the specified plugin returns historical project score + * from the given <code>date</code> in the past. + * If scores from specified day are not available, + * the next available scores saved at the day before or equal + * to <code>toDate</code> are returned. + * + * Notice that only year, month and day matter in passed dates. + * + * @return project score from the given date for specified plugin + * @throws PluginValueNotFoundException + */ + public long getValue(String pluginId, String projectId, + Date date, Date toDate) + throws PluginValueNotFoundException { - try { - MBeanServer server = MBeanServerLocator.locate(); - - ScoresService service = (ScoresService) MBeanProxyExt.create( - ScoresService.class, - Tools.STATUS_SERVICE_NAME, - server); - - return service.save(projects, pluginsConf, portalName); - - } catch (Exception e) { - e.printStackTrace (); - } + PluginsValues pluginsValues = getScores(date, toDate); - return false; + return pluginsValues.getPluginValue(pluginId, projectId); } + + public PluginsValues getCurrentScores() + throws PluginValueNotFoundException { + + Date now = new Date(); + + return getScores(now, now); + } } |