diff options
author | slewis | 2015-04-09 23:32:43 +0000 |
---|---|---|
committer | slewis | 2015-04-09 23:32:43 +0000 |
commit | 46cf063609de706aff74dc6d204f4e45df0240ea (patch) | |
tree | 671db047efaf006e58b77d2dfc372565df2c3f1a | |
parent | 231a2d3ccbc2652a0a2265f4f698f65972c66635 (diff) | |
download | org.eclipse.ecf-46cf063609de706aff74dc6d204f4e45df0240ea.tar.gz org.eclipse.ecf-46cf063609de706aff74dc6d204f4e45df0240ea.tar.xz org.eclipse.ecf-46cf063609de706aff74dc6d204f4e45df0240ea.zip |
Simplified timeservice host and consumer by using
DebugRemoteServiceAdminListener utility class for debug output
Change-Id: I81e8a0ad0c97cb936532b25722173a192ec285af
5 files changed, 12 insertions, 101 deletions
diff --git a/examples/bundles/com.mycorp.examples.timeservice.consumer/META-INF/MANIFEST.MF b/examples/bundles/com.mycorp.examples.timeservice.consumer/META-INF/MANIFEST.MF index e8d068e0c..cc5d9239d 100644 --- a/examples/bundles/com.mycorp.examples.timeservice.consumer/META-INF/MANIFEST.MF +++ b/examples/bundles/com.mycorp.examples.timeservice.consumer/META-INF/MANIFEST.MF @@ -2,12 +2,13 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: ECF RS Example Timeservice Consumer Bundle-SymbolicName: com.mycorp.examples.timeservice.consumer -Bundle-Version: 1.0.0.qualifier +Bundle-Version: 1.1.0.qualifier Bundle-Vendor: Eclipse.org - ECF Bundle-RequiredExecutionEnvironment: J2SE-1.5 Bundle-ActivationPolicy: lazy Bundle-Activator: com.mycorp.examples.timeservice.consumer.Activator Import-Package: com.mycorp.examples.timeservice;version="1.0.0", + org.eclipse.ecf.osgi.services.remoteserviceadmin;version="1.2.0", org.osgi.framework, org.osgi.service.remoteserviceadmin;version="1.0.0", org.osgi.util.tracker diff --git a/examples/bundles/com.mycorp.examples.timeservice.consumer/src/com/mycorp/examples/timeservice/consumer/Activator.java b/examples/bundles/com.mycorp.examples.timeservice.consumer/src/com/mycorp/examples/timeservice/consumer/Activator.java index 0d2b1e12e..c5379915b 100644 --- a/examples/bundles/com.mycorp.examples.timeservice.consumer/src/com/mycorp/examples/timeservice/consumer/Activator.java +++ b/examples/bundles/com.mycorp.examples.timeservice.consumer/src/com/mycorp/examples/timeservice/consumer/Activator.java @@ -8,10 +8,10 @@ ******************************************************************************/ package com.mycorp.examples.timeservice.consumer; +import org.eclipse.ecf.osgi.services.remoteserviceadmin.DebugRemoteServiceAdminListener; import org.osgi.framework.BundleActivator; import org.osgi.framework.BundleContext; import org.osgi.framework.ServiceReference; -import org.osgi.service.remoteserviceadmin.RemoteServiceAdminEvent; import org.osgi.service.remoteserviceadmin.RemoteServiceAdminListener; import org.osgi.util.tracker.ServiceTracker; import org.osgi.util.tracker.ServiceTrackerCustomizer; @@ -28,7 +28,8 @@ public class Activator implements BundleActivator, ServiceTrackerCustomizer<ITim // If the verboseRemoteServiceAdmin system property is set // then register debug listener if (Boolean.getBoolean("verboseRemoteServiceAdmin")) - registerDebugListener(context); + context.registerService(RemoteServiceAdminListener.class, + new DebugRemoteServiceAdminListener(), null); // Create and open ITimeService tracker this.timeServiceTracker = new ServiceTracker<ITimeService,ITimeService>(this.context,ITimeService.class,this); @@ -70,25 +71,4 @@ public class Activator implements BundleActivator, ServiceTrackerCustomizer<ITim // do nothing } - // Register a RemoteServiceAdminListener so we can report to sdtout - // when a remote service has actually been successfully exported by - // the RSA implementation - private void registerDebugListener(BundleContext context) { - RemoteServiceAdminListener rsaListener = new RemoteServiceAdminListener() { - public void remoteAdminEvent(RemoteServiceAdminEvent event) { - switch (event.getType()) { - case RemoteServiceAdminEvent.IMPORT_REGISTRATION: - System.out - .println("Service Imported by RemoteServiceAdmin. EndpointDescription Properties=" - + event.getImportReference().getImportedEndpoint().getProperties()); - } - } - - }; - // Register as service, and RemoteServiceAdmin will callback - context.registerService(RemoteServiceAdminListener.class.getName(), - rsaListener, null); - } - - } diff --git a/examples/bundles/com.mycorp.examples.timeservice.host/META-INF/MANIFEST.MF b/examples/bundles/com.mycorp.examples.timeservice.host/META-INF/MANIFEST.MF index 1a9760b72..29dba50dc 100644 --- a/examples/bundles/com.mycorp.examples.timeservice.host/META-INF/MANIFEST.MF +++ b/examples/bundles/com.mycorp.examples.timeservice.host/META-INF/MANIFEST.MF @@ -2,11 +2,12 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: ECF RS Example Timeservice Host Bundle-SymbolicName: com.mycorp.examples.timeservice.host -Bundle-Version: 1.0.0.qualifier +Bundle-Version: 1.1.0.qualifier Bundle-Vendor: Eclipse.org - ECF Bundle-RequiredExecutionEnvironment: J2SE-1.5 Bundle-ActivationPolicy: lazy Import-Package: com.mycorp.examples.timeservice;version="1.0.0", - org.osgi.framework + org.eclipse.ecf.osgi.services.remoteserviceadmin;version="1.2.0", + org.osgi.framework, + org.osgi.service.remoteserviceadmin;version="1.1.0" Bundle-Activator: com.mycorp.examples.timeservice.host.Activator -Require-Bundle: org.eclipse.osgi.services.remoteserviceadmin;bundle-version="1.5.0" diff --git a/examples/bundles/com.mycorp.examples.timeservice.host/src/com/mycorp/examples/timeservice/host/Activator.java b/examples/bundles/com.mycorp.examples.timeservice.host/src/com/mycorp/examples/timeservice/host/Activator.java index 997d05723..3e1aa4f82 100644 --- a/examples/bundles/com.mycorp.examples.timeservice.host/src/com/mycorp/examples/timeservice/host/Activator.java +++ b/examples/bundles/com.mycorp.examples.timeservice.host/src/com/mycorp/examples/timeservice/host/Activator.java @@ -12,10 +12,10 @@ import java.util.Dictionary; import java.util.Hashtable; import java.util.Properties; +import org.eclipse.ecf.osgi.services.remoteserviceadmin.DebugRemoteServiceAdminListener; import org.osgi.framework.BundleActivator; import org.osgi.framework.BundleContext; import org.osgi.framework.ServiceRegistration; -import org.osgi.service.remoteserviceadmin.RemoteServiceAdminEvent; import org.osgi.service.remoteserviceadmin.RemoteServiceAdminListener; import com.mycorp.examples.timeservice.ITimeService; @@ -26,7 +26,8 @@ public class Activator implements BundleActivator { // If the verboseRemoteServiceAdmin system property is set // then register debug listener if (Boolean.getBoolean("verboseRemoteServiceAdmin")) - registerDebugListener(context); + context.registerService(RemoteServiceAdminListener.class, + new DebugRemoteServiceAdminListener(), null); // Create remote service properties...see // createRemoteServiceProperties() @@ -67,38 +68,4 @@ public class Activator implements BundleActivator { return result; } - // Register a RemoteServiceAdminListener so we can report to sdtout - // when a remote service has actually been successfully exported by - // the RSA implementation - private void registerDebugListener(BundleContext context) { - RemoteServiceAdminListener rsaListener = new RemoteServiceAdminListener() { - public void remoteAdminEvent(RemoteServiceAdminEvent event) { - switch (event.getType()) { - case RemoteServiceAdminEvent.EXPORT_REGISTRATION: - System.out - .println("RSA: Service Exported. EndpointDescription=" - + event.getExportReference() - .getExportedEndpoint() - .getProperties()); - break; - case RemoteServiceAdminEvent.EXPORT_ERROR: - Throwable t = event.getException(); - System.err.println("RSA: EXPORT ERROR. Error message=" - + ((t == null) ? "none" : t.getMessage()) - + ". EndpointDescription=" - + event.getExportReference().getExportedEndpoint() - .getProperties() + ""); - if (t != null) - t.printStackTrace(); - break; - } - } - - }; - // Register our listener as service via whiteboard pattern, and - // RemoteServiceAdmin will callback - context.registerService(RemoteServiceAdminListener.class.getName(), - rsaListener, null); - } - } diff --git a/examples/bundles/com.mycorp.examples.timeservice.host/src/com/mycorp/examples/timeservice/host/ActivatorSimple.java b/examples/bundles/com.mycorp.examples.timeservice.host/src/com/mycorp/examples/timeservice/host/ActivatorSimple.java deleted file mode 100644 index 4406486df..000000000 --- a/examples/bundles/com.mycorp.examples.timeservice.host/src/com/mycorp/examples/timeservice/host/ActivatorSimple.java +++ /dev/null @@ -1,38 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2013 Composent, Inc. All rights reserved. This - * program and the accompanying materials are made available under the terms of - * the Eclipse Public License v1.0 which accompanies this distribution, and is - * available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: Scott Lewis - initial API and implementation - ******************************************************************************/ -package com.mycorp.examples.timeservice.host; - -import java.util.Dictionary; -import java.util.Hashtable; - -import org.osgi.framework.BundleActivator; -import org.osgi.framework.BundleContext; -import org.osgi.framework.ServiceRegistration; - -import com.mycorp.examples.timeservice.ITimeService; - -public class ActivatorSimple implements BundleActivator { - - public void start(BundleContext context) throws Exception { - Dictionary<String, String> props = new Hashtable<String, String>(); - props.put("service.exported.interfaces", "*"); - props.put("service.exported.configs","ecf.generic.server"); - props.put("ecf.generic.server.id", "ecftcp://localhost:3288/server"); - ServiceRegistration<ITimeService> timeServiceRegistration = context - .registerService(ITimeService.class, new TimeServiceImpl(), - props); - System.out.println("MyTimeService host registered with registration=" - + timeServiceRegistration); - } - - public void stop(BundleContext context) throws Exception { - // do nothing - } - -} |