[jboss-osgi-commits] JBoss-OSGI SVN: r87265 - in projects/jboss-osgi/trunk: service/remote-log/src/main/java/org/jboss/osgi/service/remlog/internal and 1 other directories.
jboss-osgi-commits at lists.jboss.org
jboss-osgi-commits at lists.jboss.org
Tue Apr 14 03:34:48 EDT 2009
Author: thomas.diesler at jboss.com
Date: 2009-04-14 03:34:47 -0400 (Tue, 14 Apr 2009)
New Revision: 87265
Modified:
projects/jboss-osgi/trunk/service/remote-log/src/main/java/org/jboss/osgi/service/remlog/RemoteLogListener.java
projects/jboss-osgi/trunk/service/remote-log/src/main/java/org/jboss/osgi/service/remlog/internal/RemoteLogEntry.java
projects/jboss-osgi/trunk/testsuite/src/test/java/org/jboss/test/osgi/example/log/LogServiceRemoteTestCase.java
Log:
WIP
Modified: projects/jboss-osgi/trunk/service/remote-log/src/main/java/org/jboss/osgi/service/remlog/RemoteLogListener.java
===================================================================
--- projects/jboss-osgi/trunk/service/remote-log/src/main/java/org/jboss/osgi/service/remlog/RemoteLogListener.java 2009-04-14 07:26:17 UTC (rev 87264)
+++ projects/jboss-osgi/trunk/service/remote-log/src/main/java/org/jboss/osgi/service/remlog/RemoteLogListener.java 2009-04-14 07:34:47 UTC (rev 87265)
@@ -48,11 +48,25 @@
private String host;
private Integer port;
+ private Client remotingClient;
+
public RemoteLogListener(BundleContext context, Properties props)
{
this.context = context;
this.host = props.getProperty(RemoteLogActivator.REMOTE_LOG_HOST);
this.port = new Integer(props.getProperty(RemoteLogActivator.REMOTE_LOG_PORT));
+
+ // Get the remoting client
+ try
+ {
+ String locatorURI = "socket://" + host + ":" + port;
+ InvokerLocator locator = new InvokerLocator(locatorURI);
+ remotingClient = new Client(locator);
+ }
+ catch (Exception ex)
+ {
+ ex.printStackTrace();
+ }
}
public void start()
@@ -73,6 +87,9 @@
public void stop()
{
+ System.out.println("remotingClient.disconnect");
+ remotingClient.disconnect();
+
LogReaderService logReader = (LogReaderService)tracker.getService();
if (logReader != null)
logReader.removeLogListener(this);
@@ -83,12 +100,14 @@
RemoteLogEntry remoteEntry = new RemoteLogEntry(entry);
try
{
- String locatorURI = "socket://" + host + ":" + port;
- InvokerLocator locator = new InvokerLocator(locatorURI);
- Client remotingClient = new Client(locator);
- remotingClient.connect();
+ if (remotingClient.isConnected() == false)
+ {
+ System.out.println("remotingClient.connect");
+ remotingClient.connect();
+ }
+
+ System.out.println("invoke: " + remoteEntry);
remotingClient.invoke(remoteEntry);
- remotingClient.disconnect();
}
catch (Throwable ex)
{
Modified: projects/jboss-osgi/trunk/service/remote-log/src/main/java/org/jboss/osgi/service/remlog/internal/RemoteLogEntry.java
===================================================================
--- projects/jboss-osgi/trunk/service/remote-log/src/main/java/org/jboss/osgi/service/remlog/internal/RemoteLogEntry.java 2009-04-14 07:26:17 UTC (rev 87264)
+++ projects/jboss-osgi/trunk/service/remote-log/src/main/java/org/jboss/osgi/service/remlog/internal/RemoteLogEntry.java 2009-04-14 07:34:47 UTC (rev 87265)
@@ -106,8 +106,8 @@
{
String t = new SimpleDateFormat("dd-MMM-yyyy HH:mm.ss.SSS").format(new Date(time));
String l = " " + logLevel(level);
- String s = sref != null ? ",sref=" + sref.getBundle().getSymbolicName() : "";
- String b = ",bnd=" + bundle.getSymbolicName();
+ String s = sref != null && sref.getBundle() != null ? ",sref=" + sref.getBundle().getSymbolicName() : "";
+ String b = bundle != null ? ",bnd=" + bundle.getSymbolicName() : "";
String m = ",msg=" + message;
String e = exception != null ? ",ex=" + exception : "";
return "[" + t + l + b + s + m + e + "]";
Modified: projects/jboss-osgi/trunk/testsuite/src/test/java/org/jboss/test/osgi/example/log/LogServiceRemoteTestCase.java
===================================================================
--- projects/jboss-osgi/trunk/testsuite/src/test/java/org/jboss/test/osgi/example/log/LogServiceRemoteTestCase.java 2009-04-14 07:26:17 UTC (rev 87264)
+++ projects/jboss-osgi/trunk/testsuite/src/test/java/org/jboss/test/osgi/example/log/LogServiceRemoteTestCase.java 2009-04-14 07:34:47 UTC (rev 87265)
@@ -30,7 +30,9 @@
import org.jboss.osgi.service.log.RemoteLogReaderService;
import org.jboss.osgi.spi.framework.OSGiBootstrap;
import org.jboss.osgi.spi.framework.OSGiFramework;
+import org.jboss.osgi.spi.framework.RemoteBundle;
import org.jboss.osgi.spi.junit.IntegrationTest;
+import org.osgi.framework.Bundle;
import org.osgi.framework.BundleContext;
import org.osgi.framework.ServiceReference;
import org.osgi.service.log.LogEntry;
@@ -76,24 +78,27 @@
deployBundle("bundles/jboss-osgi-service-remote-log.jar");
// Deploy the test bundle
- deployBundle("example/example-log-bundleA.jar");
+ RemoteBundle bundleA = deployBundle("example/example-log-bundleA.jar");
+ // Verify that the bundle is active
+ assertEquals("Remote bundle ACTIVE", Bundle.ACTIVE, bundleA.getState());
+
// Undeploy the test bundle
undeployBundle("example/example-log-bundleA.jar");
// Uneploy the RemoteLogListener from the remote OSGiFramework.
undeployBundle("bundles/jboss-osgi-service-remote-log.jar");
-// System.out.println(logEntryCache.getLog());
+ System.out.println(logEntryCache.getLog());
// Verify the received log entries
List<LogEntry> entries = logEntryCache.getLog();
assertEquals("Number of entries", 6, entries.size());
-// assertEquals("BundleEvent RESOLVED", entries.get(1).getMessage());
-// assertEquals("BundleEvent INSTALLED", entries.get(0).getMessage());
-// assertEquals("[ServiceA] addingService: org.apache.felix.log.LogServiceImpl", entries.get(2).getMessage());
-// assertEquals("BundleEvent STARTED", entries.get(3).getMessage());
-// assertEquals("BundleEvent STOPPED", entries.get(4).getMessage());
-// assertEquals("BundleEvent UNINSTALLED", entries.get(5).getMessage());
+ assertEquals("BundleEvent INSTALLED", entries.get(0).getMessage());
+ assertEquals("BundleEvent RESOLVED", entries.get(1).getMessage());
+ assertEquals("[ServiceA] addingService: org.apache.felix.log.LogServiceImpl", entries.get(2).getMessage());
+ assertEquals("BundleEvent STARTED", entries.get(3).getMessage());
+ assertEquals("BundleEvent STOPPED", entries.get(4).getMessage());
+ assertEquals("BundleEvent UNINSTALLED", entries.get(5).getMessage());
}
}
\ No newline at end of file
More information about the jboss-osgi-commits
mailing list