From: <jbo...@li...> - 2006-04-24 21:46:28
|
Author: wrzep Date: 2006-04-24 17:46:17 -0400 (Mon, 24 Apr 2006) New Revision: 3954 Modified: labs/jbosslabs/trunk/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/Projects.java labs/jbosslabs/trunk/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/ProjectsConfigurationWatcher.java labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/StatusConfWatcher.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/templates/Columns.java 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/ServiceConf.java Log: JBLAB-599 Pawel Modified: labs/jbosslabs/trunk/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/Projects.java =================================================================== --- labs/jbosslabs/trunk/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/Projects.java 2006-04-24 19:53:02 UTC (rev 3953) +++ labs/jbosslabs/trunk/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/Projects.java 2006-04-24 21:46:17 UTC (rev 3954) @@ -21,6 +21,7 @@ */ package org.jboss.forge.common.projects; +import java.io.Serializable; import java.util.Set; import org.jboss.forge.common.projects.permissions.PermissionsChecker; @@ -34,8 +35,11 @@ * * @author adamw */ -public class Projects { - private String portalName; +public class Projects implements Serializable { + + private static final long serialVersionUID = 7544648865350172685L; + + private String portalName; @CacheItem private ProjectsConfigurationWatcher pcw; Modified: labs/jbosslabs/trunk/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/ProjectsConfigurationWatcher.java =================================================================== --- labs/jbosslabs/trunk/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/ProjectsConfigurationWatcher.java 2006-04-24 19:53:02 UTC (rev 3953) +++ labs/jbosslabs/trunk/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/ProjectsConfigurationWatcher.java 2006-04-24 21:46:17 UTC (rev 3954) @@ -25,11 +25,16 @@ import org.jboss.shotoku.cache.ShotokuResourceWatcher; import org.jboss.shotoku.cache.ChangeType; +import java.io.Serializable; import java.util.Map; public class ProjectsConfigurationWatcher - extends ShotokuResourceWatcher<String, ProjectsDescriptor> { - public ProjectsDescriptor getProjectsDescriptor(String key) { + extends ShotokuResourceWatcher<String, ProjectsDescriptor> + implements Serializable { + + private static final long serialVersionUID = 3579287247264582665L; + + public ProjectsDescriptor getProjectsDescriptor(String key) { ProjectsDescriptor pd = new ProjectsDescriptor( XmlInputFactory.getContentReadingInstance( getContentManager(key)), key); Modified: labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/StatusConfWatcher.java =================================================================== --- labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/StatusConfWatcher.java 2006-04-24 19:53:02 UTC (rev 3953) +++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/StatusConfWatcher.java 2006-04-24 21:46:17 UTC (rev 3954) @@ -62,42 +62,4 @@ protected void update(String key, StatusDescriptor currentObject, Map<String, ChangeType> changes) { put(key, getDesc(key)); } - - /* - - StatusDescriptor desc = new StatusDescriptor(portalName, cm); - - rw = new ResourceWatcher(cm); - - /* Watch plugins confuguration files */ /* - rw.watchResource(Tools.getXmlCmPath(portalName)); - rw.watchResource(Tools.getXmlStatusPluginsCmPath(portalName)); - */ - /* Watch projects.xml file*/ /* - rw.watchResource(Tools.getProjectsXmlPath(portalName)); - */ - /* Watch all project.xml files - * We assume that they contain entries used by plugins */ /* - Set<String> projectXmlPathsSet = Tools.getProjectXmlPathsSet(portalName); - - for (String projectXmlPath : projectXmlPathsSet) { - rw.watchResource(projectXmlPath); - } - - return desc; - }*/ - - - /* - public Object nodeUpdate(String portalName, Object currentValue) { - - if ((currentValue == null) || (rw.checkResources()) || (updateCounter == 499)) { - - updateCounter = 0; - return getDesc(portalName); - } else { - ++updateCounter; - return null; - } - }*/ } 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-04-24 19:53:02 UTC (rev 3953) +++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/impl/ScoresServiceImpl.java 2006-04-24 21:46:17 UTC (rev 3954) @@ -47,8 +47,6 @@ import org.jboss.forge.status.exceptions.ScoresSaveException; import org.jboss.forge.status.service.model.PluginConf; import org.jboss.forge.status.service.model.ScoresService; -import org.jboss.forge.status.service.model.ScoresServiceLocal; -import org.jboss.forge.status.service.model.ScoresServiceRemote; import org.jboss.forge.status.tools.Plugins; import org.jboss.forge.status.tools.Tools; @@ -66,11 +64,11 @@ @Service(objectName=Tools.STATUS_SERVICE_NAME) @Management(ScoresService.class) -@Local(ScoresServiceLocal.class) +@Local(ScoresService.class) @LocalBinding(jndiBinding="Status/ScoresService") -@Remote(ScoresServiceRemote.class) +@Remote(ScoresService.class) @RemoteBinding(jndiBinding="Status/RemoteScoresService") -public class ScoresServiceImpl implements ScoresService, ScoresServiceLocal { +public class ScoresServiceImpl implements ScoresService { private static Logger log = Logger.getLogger(ScoresServiceImpl.class); Modified: labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/templates/Columns.java =================================================================== --- labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/templates/Columns.java 2006-04-24 19:53:02 UTC (rev 3953) +++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/templates/Columns.java 2006-04-24 21:46:17 UTC (rev 3954) @@ -34,8 +34,6 @@ import org.jboss.forge.common.projects.permissions.NullPermissionsChecker; import org.jboss.forge.common.projects.permissions.PermissionsChecker; -import org.jboss.forge.status.service.impl.PluginValuesImpl; -import org.jboss.forge.status.service.impl.PluginsValuesImpl; import org.jboss.forge.status.service.model.PluginValues; import org.jboss.forge.status.service.model.PluginsValues; import org.jboss.forge.status.tools.ProjectsByNameComparator; 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-24 19:53:02 UTC (rev 3953) +++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/tools/ScoresManager.java 2006-04-24 21:46:17 UTC (rev 3954) @@ -24,22 +24,20 @@ import java.util.Date; import java.util.List; +import java.util.Properties; -import javax.management.MBeanServer; -import javax.management.MalformedObjectNameException; +import javax.naming.Context; +import javax.naming.InitialContext; +import javax.naming.NamingException; +import javax.rmi.PortableRemoteObject; 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.model.ScoresServiceLocal; import org.jboss.forge.status.service.model.PluginConf; import org.jboss.forge.status.service.model.PluginsValues; import org.jboss.forge.status.service.model.ScoresService; -import org.jboss.forge.status.service.model.ScoresServiceRemote; -import org.jboss.mx.util.MBeanProxyExt; -import org.jboss.mx.util.MBeanServerLocator; - /** * @author Pawel Wrzeszcz (pawel.wrzeszcz [at] gmail.com) */ @@ -47,48 +45,43 @@ public class ScoresManager { private static String portalName; + private static boolean isRemote; + private static Properties properties; public static void init(String portalName, ServiceConf serviceConf) { + ScoresManager.portalName = portalName; - System.out.println("local: " + serviceConf.isLocal()); + + isRemote = serviceConf.isRemote(); + System.out.println("local: " + isRemote); + + properties = getRemoteServiceProperties(); } - + public static void save(Projects projects, List<PluginConf> pluginsConf) throws ScoresSaveException { - - MBeanServer server = MBeanServerLocator.locate(); + ScoresService service = null; + + try { + service = getService(); + } catch (NamingException e) { + throw new ScoresSaveException(e); + } - ScoresServiceRemote service; - try { - service = (ScoresServiceRemote) MBeanProxyExt.create( - ScoresServiceRemote.class, - Tools.STATUS_SERVICE_NAME, - server); - } catch (MalformedObjectNameException e) { - throw new ScoresSaveException(e); - } + service.save(projects, pluginsConf, portalName); + } - service.save(projects, pluginsConf, portalName); - } - public static PluginsValues getScores(Date date, Date toDate) throws GetScoresException { - + PluginsValues pluginsValues = null; try { - MBeanServer server = MBeanServerLocator.locate(); - - ScoresService service = (ScoresService) MBeanProxyExt.create( - ScoresService.class, - Tools.STATUS_SERVICE_NAME, - server); - + ScoresService service = getService(); pluginsValues = service.getPluginsValues(portalName, date); - } catch (Exception e) { - e.printStackTrace (); + throw new GetScoresException(e); } if (pluginsValues == null) { @@ -126,4 +119,37 @@ return getScores(now, now); } + + private static ScoresService getService() throws NamingException { + + Context context = new InitialContext(); //////////////////////// properties + + // Perform look up using JNDI name of ejb object + Object ref = context.lookup("Status/RemoteScoresService"); + + // Narrow the reference of the object returned by lookup() method + ScoresService service = + (ScoresService)PortableRemoteObject.narrow( ref, ScoresService.class); + System.out.println("ScoresService " + service); + + return service; + } + + /* + * java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory + * java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces + * java.naming.provider.url=localhost:1099 + */ + + private static Properties getRemoteServiceProperties() { + + Properties props = new Properties(); + + props.put(Context.INITIAL_CONTEXT_FACTORY,"org.jnp.interfaces.NamingContextFactory"); + props.put(Context.URL_PKG_PREFIXES, "rg.jboss.naming:org.jnp.interfaces"); + props.put(Context.PROVIDER_URL, "localhost:1099"); + props.put("jnp.disableDiscovery", true); + + return properties; + } } Modified: labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/tools/ServiceConf.java =================================================================== --- labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/tools/ServiceConf.java 2006-04-24 19:53:02 UTC (rev 3953) +++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/tools/ServiceConf.java 2006-04-24 21:46:17 UTC (rev 3954) @@ -46,7 +46,7 @@ } - public boolean isLocal() { - return !remoteService; + public boolean isRemote() { + return remoteService; } } \ No newline at end of file |