You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by sa...@apache.org on 2006/08/31 13:22:17 UTC
svn commit: r438863 - in
/incubator/felix/sandbox/santillan/org.apache.felix.jmood: pom.xml
src/main/java/org/apache/felix/jmood/Activator.java
Author: santillan
Date: Thu Aug 31 04:22:17 2006
New Revision: 438863
URL: http://svn.apache.org/viewvc?rev=438863&view=rev
Log:
Refactored to remove mx4j's dependency. Small bug fixed
Modified:
incubator/felix/sandbox/santillan/org.apache.felix.jmood/pom.xml
incubator/felix/sandbox/santillan/org.apache.felix.jmood/src/main/java/org/apache/felix/jmood/Activator.java
Modified: incubator/felix/sandbox/santillan/org.apache.felix.jmood/pom.xml
URL: http://svn.apache.org/viewvc/incubator/felix/sandbox/santillan/org.apache.felix.jmood/pom.xml?rev=438863&r1=438862&r2=438863&view=diff
==============================================================================
--- incubator/felix/sandbox/santillan/org.apache.felix.jmood/pom.xml (original)
+++ incubator/felix/sandbox/santillan/org.apache.felix.jmood/pom.xml Thu Aug 31 04:22:17 2006
@@ -18,12 +18,6 @@
</dependency>
<dependency>
<groupId>${pom.groupId}</groupId>
- <artifactId>org.apache.felix.main</artifactId>
- <version>${pom.version}</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>${pom.groupId}</groupId>
<artifactId>org.osgi.core</artifactId>
<version>${pom.version}</version>
<scope>provided</scope>
@@ -39,11 +33,6 @@
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
- </dependency>
- <dependency>
- <groupId>mx4j</groupId>
- <artifactId>mx4j-tools</artifactId>
- <version>1.1</version>
</dependency>
</dependencies>
<build>
Modified: incubator/felix/sandbox/santillan/org.apache.felix.jmood/src/main/java/org/apache/felix/jmood/Activator.java
URL: http://svn.apache.org/viewvc/incubator/felix/sandbox/santillan/org.apache.felix.jmood/src/main/java/org/apache/felix/jmood/Activator.java?rev=438863&r1=438862&r2=438863&view=diff
==============================================================================
--- incubator/felix/sandbox/santillan/org.apache.felix.jmood/src/main/java/org/apache/felix/jmood/Activator.java (original)
+++ incubator/felix/sandbox/santillan/org.apache.felix.jmood/src/main/java/org/apache/felix/jmood/Activator.java Thu Aug 31 04:22:17 2006
@@ -24,7 +24,11 @@
import java.lang.reflect.Method;
import java.net.InetAddress;
import java.net.URL;
+import java.rmi.RemoteException;
+import java.rmi.registry.LocateRegistry;
+import java.rmi.registry.Registry;
import java.rmi.server.ExportException;
+import java.rmi.server.UnicastRemoteObject;
import java.util.Properties;
import javax.management.InstanceAlreadyExistsException;
@@ -39,7 +43,6 @@
import javax.management.remote.JMXConnectorServerFactory;
import javax.management.remote.JMXServiceURL;
-import mx4j.tools.naming.NamingService;
import org.apache.felix.jmood.core.CoreController;
import org.apache.felix.jmood.core.Framework;
@@ -55,10 +58,9 @@
private JMXConnectorServer connectorServer;
private int rmiRegistryPort = 1199;
private AgentContext ac;
- private static final String rmiregOname="RemotingService:type=NamingService,subtype=RMIRegistry, provider=MX4J";
private static final String connectoServerOname="RemotingService:type=ConnectorServer, subtype=RMIConnectorServer, provider=JRE";
private CompendiumController compendium;
- private NamingService rmiRegistry;
+ private Registry rmiRegistry;
public void start(BundleContext context) throws Exception {
@@ -157,16 +159,19 @@
*/
private void initRMIConn() throws IOException, InstanceAlreadyExistsException, MBeanRegistrationException, NotCompliantMBeanException, MalformedObjectNameException, NullPointerException, InstanceNotFoundException {
- rmiRegistry=new NamingService(rmiRegistryPort);
- ObjectName rmiRegName = new ObjectName(rmiregOname);
- server.registerMBean(rmiRegistry, rmiRegName);
- try {
- rmiRegistry.start();
- } catch (ExportException e) {
- ac.warning(e.getMessage()+"\n"+"Possibly some other framework already running, skipping RMI setup");
- server.unregisterMBean(rmiRegName);
- return;
- }
+ Thread t=new Thread(){
+ public void run() {
+ try {
+ rmiRegistry=LocateRegistry.createRegistry(rmiRegistryPort);
+ } catch (RemoteException e) {
+ ac.warning(e.getMessage()+"\n"+"Possibly some other framework already running, skipping RMI registry creation");
+ return;
+ }
+ }
+ };
+ t.setName("RMIREGISTRY");
+ t.setContextClassLoader(this.getClass().getClassLoader());
+ t.start();
InetAddress[] addresses=InetAddress.getAllByName(InetAddress.getLocalHost().getCanonicalHostName());
//Do not attach the agent to the loopback address
InetAddress address=null;
@@ -196,9 +201,9 @@
}
private void stopRMIConn() throws Exception {
this.connectorServer.stop();
- this.rmiRegistry.stop();
- this.server.unregisterMBean(new ObjectName(rmiregOname));
+ UnicastRemoteObject.unexportObject(this.rmiRegistry, true);
this.server.unregisterMBean(new ObjectName(connectoServerOname));
+
}
private void registerMBeans() throws Exception{