Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorslewis2014-04-27 16:14:44 +0000
committerslewis2014-04-27 16:14:44 +0000
commit43d08993e16bd02571102fb7b10c76d989f250a7 (patch)
tree8c5392007c82113efe62c7fa488fa26aad90dc81 /examples
parent5c7269358e6d0a7d213f7773b97c14c40c42ad3a (diff)
downloadorg.eclipse.ecf-43d08993e16bd02571102fb7b10c76d989f250a7.tar.gz
org.eclipse.ecf-43d08993e16bd02571102fb7b10c76d989f250a7.tar.xz
org.eclipse.ecf-43d08993e16bd02571102fb7b10c76d989f250a7.zip
Adding Raspberry Pi Management Remote Service Example projects
Diffstat (limited to 'examples')
-rw-r--r--examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host.feature/.project17
-rw-r--r--examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host.feature/build.properties1
-rw-r--r--examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host.feature/feature.xml33
-rw-r--r--examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host.feature/products/RaspberryPiManagmentHost.product104
-rw-r--r--examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host/.classpath7
-rw-r--r--examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host/.gitignore1
-rw-r--r--examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host/.project28
-rw-r--r--examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host/.settings/org.eclipse.jdt.core.prefs7
-rw-r--r--examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host/.settings/org.eclipse.pde.core.prefs3
-rw-r--r--examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host/META-INF/MANIFEST.MF10
-rw-r--r--examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host/build.properties4
-rw-r--r--examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host/src/org/eclipse/ecf/internal/examples/raspberrypi/management/host/Activator.java44
-rw-r--r--examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host/src/org/eclipse/ecf/internal/examples/raspberrypi/management/host/RaspberryPi.java24
-rw-r--r--examples/bundles/org.eclipse.ecf.examples.raspberrypi.management/.classpath7
-rw-r--r--examples/bundles/org.eclipse.ecf.examples.raspberrypi.management/.gitignore1
-rw-r--r--examples/bundles/org.eclipse.ecf.examples.raspberrypi.management/.project28
-rw-r--r--examples/bundles/org.eclipse.ecf.examples.raspberrypi.management/.settings/org.eclipse.jdt.core.prefs7
-rw-r--r--examples/bundles/org.eclipse.ecf.examples.raspberrypi.management/.settings/org.eclipse.pde.core.prefs3
-rw-r--r--examples/bundles/org.eclipse.ecf.examples.raspberrypi.management/META-INF/MANIFEST.MF8
-rw-r--r--examples/bundles/org.eclipse.ecf.examples.raspberrypi.management/build.properties4
-rw-r--r--examples/bundles/org.eclipse.ecf.examples.raspberrypi.management/src/org/eclipse/ecf/examples/raspberrypi/management/IRaspberryPi.java9
-rw-r--r--examples/bundles/org.eclipse.ecf.examples.raspberrypi.management/src/org/eclipse/ecf/examples/raspberrypi/management/IRaspberryPiAsync.java10
22 files changed, 360 insertions, 0 deletions
diff --git a/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host.feature/.project b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host.feature/.project
new file mode 100644
index 000000000..33105235f
--- /dev/null
+++ b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host.feature/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.ecf.examples.raspberrypi.management.host.feature</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.pde.FeatureBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.FeatureNature</nature>
+ </natures>
+</projectDescription>
diff --git a/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host.feature/build.properties b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host.feature/build.properties
new file mode 100644
index 000000000..64f93a9f0
--- /dev/null
+++ b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host.feature/build.properties
@@ -0,0 +1 @@
+bin.includes = feature.xml
diff --git a/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host.feature/feature.xml b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host.feature/feature.xml
new file mode 100644
index 000000000..a2201bba5
--- /dev/null
+++ b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host.feature/feature.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<feature
+ id="org.eclipse.ecf.examples.raspberrypi.management.host.feature"
+ label="Raspberry Pi Host Feature"
+ version="1.0.0.qualifier">
+
+ <description url="http://www.example.com/description">
+ [Enter Feature Description here.]
+ </description>
+
+ <copyright url="http://www.example.com/copyright">
+ [Enter Copyright Description here.]
+ </copyright>
+
+ <license url="http://www.example.com/license">
+ [Enter License Description here.]
+ </license>
+
+ <plugin
+ id="org.eclipse.ecf.examples.raspberrypi.management"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.ecf.examples.raspberrypi.management.host"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+</feature>
diff --git a/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host.feature/products/RaspberryPiManagmentHost.product b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host.feature/products/RaspberryPiManagmentHost.product
new file mode 100644
index 000000000..a9195cd49
--- /dev/null
+++ b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host.feature/products/RaspberryPiManagmentHost.product
@@ -0,0 +1,104 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?pde version="3.5"?>
+
+<product name="ECF RaspberryPi Remote Service Example" uid="org.eclipse.ecf.examples.raspberrypi.management.host.feature" version="1.0.0.qualifier" useFeatures="false" includeLaunchers="false">
+
+ <configIni use="default">
+ </configIni>
+
+ <launcherArgs>
+ <programArgs>-console
+-consoleLog
+-debug
+ </programArgs>
+ <programArgsLin>-os linux
+-ws gtk
+-arch arm
+ </programArgsLin>
+ <vmArgs>-Declipse.ignoreApp=true
+-Dosgi.noShutdown=true
+-DverboseRemoteServiceAdmin=true
+-Dservice.exported.configs=ecf.generic.server
+-Decf.generic.server.port=3288
+-Decf.generic.server.hostname=localhost
+-Decf.exported.async.interfaces=*
+ </vmArgs>
+ <vmArgsMac>-XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts
+ </vmArgsMac>
+ </launcherArgs>
+
+
+ <launcher>
+ <solaris/>
+ <win useIco="false">
+ <bmp/>
+ </win>
+ </launcher>
+
+ <vm>
+ <linux include="false">org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8</linux>
+ <windows include="false">org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8</windows>
+ </vm>
+
+ <plugins>
+ <plugin id="org.apache.felix.gogo.command"/>
+ <plugin id="org.apache.felix.gogo.runtime"/>
+ <plugin id="org.apache.felix.gogo.shell"/>
+ <plugin id="org.eclipse.core.jobs"/>
+ <plugin id="org.eclipse.ecf"/>
+ <plugin id="org.eclipse.ecf.discovery"/>
+ <plugin id="org.eclipse.ecf.examples.raspberrypi.management"/>
+ <plugin id="org.eclipse.ecf.examples.raspberrypi.management.host"/>
+ <plugin id="org.eclipse.ecf.identity"/>
+ <plugin id="org.eclipse.ecf.osgi.services.distribution"/>
+ <plugin id="org.eclipse.ecf.osgi.services.remoteserviceadmin"/>
+ <plugin id="org.eclipse.ecf.osgi.services.remoteserviceadmin.proxy"/>
+ <plugin id="org.eclipse.ecf.remoteservice"/>
+ <plugin id="org.eclipse.ecf.remoteservice.asyncproxy"/>
+ <plugin id="org.eclipse.equinox.common"/>
+ <plugin id="org.eclipse.equinox.concurrent"/>
+ <plugin id="org.eclipse.equinox.console"/>
+ <plugin id="org.eclipse.equinox.event"/>
+ <plugin id="org.eclipse.equinox.launcher"/>
+ <plugin id="org.eclipse.osgi"/>
+ <plugin id="org.eclipse.osgi.services"/>
+ <plugin id="org.eclipse.osgi.services.remoteserviceadmin"/>
+ </plugins>
+
+ <features>
+ <feature id="org.eclipse.ecf.rpi.discovery.jmdns.feature" version="1.0.0.qualifier"/>
+ <feature id="org.eclipse.ecf.rpi.equinox.feature" version="1.0.0.qualifier"/>
+ <feature id="org.eclipse.ecf.rpi.remoteservice.feature" version="1.0.0.qualifier"/>
+ <feature id="org.eclipse.ecf.rpi.remoteservice.generic.feature" version="1.0.0.qualifier"/>
+ <feature id="org.eclipse.ecf.examples.raspberrypi.management.host.feature" version="1.0.0.qualifier"/>
+ </features>
+
+ <configurations>
+ <plugin id="org.apache.felix.gogo.command" autoStart="true" startLevel="0" />
+ <plugin id="org.apache.felix.gogo.runtime" autoStart="true" startLevel="0" />
+ <plugin id="org.apache.felix.gogo.shell" autoStart="true" startLevel="0" />
+ <plugin id="org.eclipse.core.jobs" autoStart="true" startLevel="0" />
+ <plugin id="org.eclipse.ecf" autoStart="true" startLevel="0" />
+ <plugin id="org.eclipse.ecf.discovery" autoStart="true" startLevel="0" />
+ <plugin id="org.eclipse.ecf.examples.raspberrypi.management" autoStart="true" startLevel="0" />
+ <plugin id="org.eclipse.ecf.examples.raspberrypi.management.host" autoStart="true" startLevel="6" />
+ <plugin id="org.eclipse.ecf.identity" autoStart="true" startLevel="0" />
+ <plugin id="org.eclipse.ecf.osgi.services.distribution" autoStart="true" startLevel="5" />
+ <plugin id="org.eclipse.ecf.osgi.services.remoteserviceadmin" autoStart="true" startLevel="0" />
+ <plugin id="org.eclipse.ecf.osgi.services.remoteserviceadmin.proxy" autoStart="true" startLevel="0" />
+ <plugin id="org.eclipse.ecf.provider" autoStart="true" startLevel="0" />
+ <plugin id="org.eclipse.ecf.provider.jmdns" autoStart="true" startLevel="0" />
+ <plugin id="org.eclipse.ecf.provider.remoteservice" autoStart="true" startLevel="0" />
+ <plugin id="org.eclipse.ecf.remoteservice" autoStart="true" startLevel="0" />
+ <plugin id="org.eclipse.ecf.remoteservice.asyncproxy" autoStart="true" startLevel="0" />
+ <plugin id="org.eclipse.ecf.sharedobject" autoStart="true" startLevel="0" />
+ <plugin id="org.eclipse.equinox.common" autoStart="true" startLevel="0" />
+ <plugin id="org.eclipse.equinox.concurrent" autoStart="true" startLevel="0" />
+ <plugin id="org.eclipse.equinox.console" autoStart="true" startLevel="0" />
+ <plugin id="org.eclipse.equinox.event" autoStart="true" startLevel="0" />
+ <plugin id="org.eclipse.osgi" autoStart="true" startLevel="-1" />
+ <plugin id="org.eclipse.osgi.services" autoStart="true" startLevel="0" />
+ <plugin id="org.eclipse.osgi.services.remoteserviceadmin" autoStart="true" startLevel="0" />
+ </configurations>
+
+</product>
diff --git a/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host/.classpath b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host/.classpath
new file mode 100644
index 000000000..eca7bdba8
--- /dev/null
+++ b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host/.gitignore b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host/.gitignore
new file mode 100644
index 000000000..5e56e040e
--- /dev/null
+++ b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host/.gitignore
@@ -0,0 +1 @@
+/bin
diff --git a/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host/.project b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host/.project
new file mode 100644
index 000000000..5c180fa26
--- /dev/null
+++ b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.ecf.examples.raspberrypi.management.host</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
diff --git a/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host/.settings/org.eclipse.jdt.core.prefs b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 000000000..0c68a61dc
--- /dev/null
+++ b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,7 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
+org.eclipse.jdt.core.compiler.compliance=1.8
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.8
diff --git a/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host/.settings/org.eclipse.pde.core.prefs b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host/.settings/org.eclipse.pde.core.prefs
new file mode 100644
index 000000000..f29e940a0
--- /dev/null
+++ b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host/.settings/org.eclipse.pde.core.prefs
@@ -0,0 +1,3 @@
+eclipse.preferences.version=1
+pluginProject.extensions=false
+resolve.requirebundle=false
diff --git a/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host/META-INF/MANIFEST.MF b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host/META-INF/MANIFEST.MF
new file mode 100644
index 000000000..617e228c5
--- /dev/null
+++ b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host/META-INF/MANIFEST.MF
@@ -0,0 +1,10 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: Raspberry Pi Management Remote Service Host
+Bundle-SymbolicName: org.eclipse.ecf.examples.raspberrypi.management.host
+Bundle-Version: 1.0.0.qualifier
+Bundle-Vendor: Eclipse.org - ECF
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
+Bundle-Activator: org.eclipse.ecf.internal.examples.raspberrypi.management.host.Activator
+Import-Package: org.eclipse.ecf.examples.raspberrypi.management,
+ org.osgi.framework;version="1.8.0"
diff --git a/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host/build.properties b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host/build.properties
new file mode 100644
index 000000000..34d2e4d2d
--- /dev/null
+++ b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host/build.properties
@@ -0,0 +1,4 @@
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .
diff --git a/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host/src/org/eclipse/ecf/internal/examples/raspberrypi/management/host/Activator.java b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host/src/org/eclipse/ecf/internal/examples/raspberrypi/management/host/Activator.java
new file mode 100644
index 000000000..843849a44
--- /dev/null
+++ b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host/src/org/eclipse/ecf/internal/examples/raspberrypi/management/host/Activator.java
@@ -0,0 +1,44 @@
+package org.eclipse.ecf.internal.examples.raspberrypi.management.host;
+
+import java.util.Dictionary;
+import java.util.Hashtable;
+
+import org.eclipse.ecf.examples.raspberrypi.management.IRaspberryPi;
+import org.osgi.framework.BundleActivator;
+import org.osgi.framework.BundleContext;
+import org.osgi.framework.ServiceRegistration;
+
+public class Activator implements BundleActivator {
+
+ private static final String OSGI_SERVICE_EXPORTED_INTERFACES = "service.exported.interfaces";
+
+ private ServiceRegistration<IRaspberryPi> registration;
+
+ @Override
+ public void start(BundleContext context) throws Exception {
+ Dictionary<String,Object> props = new Hashtable<String,Object>();
+ // Add OSGi required remote service properties
+ props.put(OSGI_SERVICE_EXPORTED_INTERFACES, System.getProperty(OSGI_SERVICE_EXPORTED_INTERFACES,"*"));
+ // Use ECF generic server config.
+ props.put("service.exported.configs", "ecf.generic.server");
+ // Setup hostname config (default:localhost)
+ String hostname = System.getProperty("ecf.generic.server.hostname");
+ if (hostname != null)
+ props.put("ecf.generic.server.hostname",hostname);
+ // Setup port config (default:-1)
+ props.put("ecf.generic.server.port",new Integer(System.getProperty("ecf.generic.server.port","-1")));
+ // Setup IRaspberryPiAsync as async remote service
+ props.put("ecf.exported.async.interfaces", "*");
+ // This remote service registration will trigger export, and publishing via zeroconf
+ registration = context.registerService(IRaspberryPi.class, new RaspberryPi(), props);
+
+ System.out.println("IRaspberryPi remote service registered="+registration);
+ }
+
+ @Override
+ public void stop(BundleContext context) throws Exception {
+ registration.unregister();
+ System.out.println("IRaspberryPi registration unregistered");
+ }
+
+}
diff --git a/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host/src/org/eclipse/ecf/internal/examples/raspberrypi/management/host/RaspberryPi.java b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host/src/org/eclipse/ecf/internal/examples/raspberrypi/management/host/RaspberryPi.java
new file mode 100644
index 000000000..1af1b8046
--- /dev/null
+++ b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management.host/src/org/eclipse/ecf/internal/examples/raspberrypi/management/host/RaspberryPi.java
@@ -0,0 +1,24 @@
+package org.eclipse.ecf.internal.examples.raspberrypi.management.host;
+
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Properties;
+
+import org.eclipse.ecf.examples.raspberrypi.management.IRaspberryPi;
+
+public class RaspberryPi implements IRaspberryPi {
+
+ @Override
+ public Map<String, String> getSystemProperties() {
+ Properties props = System.getProperties();
+
+ Map<String, String> result = new HashMap<String,String>();
+ for (final String name: props.stringPropertyNames())
+ result.put(name, props.getProperty(name));
+
+ System.out.println("REMOTE getSystemProperties(). Returning="+result);
+
+ return result;
+ }
+
+}
diff --git a/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management/.classpath b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management/.classpath
new file mode 100644
index 000000000..eca7bdba8
--- /dev/null
+++ b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management/.gitignore b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management/.gitignore
new file mode 100644
index 000000000..5e56e040e
--- /dev/null
+++ b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management/.gitignore
@@ -0,0 +1 @@
+/bin
diff --git a/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management/.project b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management/.project
new file mode 100644
index 000000000..d0e47d39e
--- /dev/null
+++ b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.ecf.examples.raspberrypi.management</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
diff --git a/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management/.settings/org.eclipse.jdt.core.prefs b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 000000000..0c68a61dc
--- /dev/null
+++ b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,7 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
+org.eclipse.jdt.core.compiler.compliance=1.8
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.8
diff --git a/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management/.settings/org.eclipse.pde.core.prefs b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management/.settings/org.eclipse.pde.core.prefs
new file mode 100644
index 000000000..f29e940a0
--- /dev/null
+++ b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management/.settings/org.eclipse.pde.core.prefs
@@ -0,0 +1,3 @@
+eclipse.preferences.version=1
+pluginProject.extensions=false
+resolve.requirebundle=false
diff --git a/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management/META-INF/MANIFEST.MF b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management/META-INF/MANIFEST.MF
new file mode 100644
index 000000000..c2372a28b
--- /dev/null
+++ b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management/META-INF/MANIFEST.MF
@@ -0,0 +1,8 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: Raspberry Pi Management API
+Bundle-SymbolicName: org.eclipse.ecf.examples.raspberrypi.management
+Bundle-Version: 1.0.0.qualifier
+Bundle-Vendor: Eclipse.org - ECF
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
+Export-Package: org.eclipse.ecf.examples.raspberrypi.management;version="1.0.0"
diff --git a/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management/build.properties b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management/build.properties
new file mode 100644
index 000000000..34d2e4d2d
--- /dev/null
+++ b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management/build.properties
@@ -0,0 +1,4 @@
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .
diff --git a/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management/src/org/eclipse/ecf/examples/raspberrypi/management/IRaspberryPi.java b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management/src/org/eclipse/ecf/examples/raspberrypi/management/IRaspberryPi.java
new file mode 100644
index 000000000..b880a60d7
--- /dev/null
+++ b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management/src/org/eclipse/ecf/examples/raspberrypi/management/IRaspberryPi.java
@@ -0,0 +1,9 @@
+package org.eclipse.ecf.examples.raspberrypi.management;
+
+import java.util.Map;
+
+public interface IRaspberryPi {
+
+ public Map<String,String> getSystemProperties();
+
+}
diff --git a/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management/src/org/eclipse/ecf/examples/raspberrypi/management/IRaspberryPiAsync.java b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management/src/org/eclipse/ecf/examples/raspberrypi/management/IRaspberryPiAsync.java
new file mode 100644
index 000000000..e79bbf6d6
--- /dev/null
+++ b/examples/bundles/org.eclipse.ecf.examples.raspberrypi.management/src/org/eclipse/ecf/examples/raspberrypi/management/IRaspberryPiAsync.java
@@ -0,0 +1,10 @@
+package org.eclipse.ecf.examples.raspberrypi.management;
+
+import java.util.Map;
+import java.util.concurrent.CompletableFuture;
+
+public interface IRaspberryPiAsync {
+
+ public CompletableFuture<Map<String,String>> getSystemPropertiesAsync();
+
+}

Back to the top