Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "Eclipse Communication Framework Project"

(Additional Documentation)
(97 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
[[Image:container.png|right|300px]]  
 
[[Image:container.png|right|300px]]  
  
=Documentation (for consumers)=
 
 
==OSGi Remote Services==
 
==OSGi Remote Services==
  
 
===What's New===
 
===What's New===
  
'''PLEASE NOTE''': [[Running TimeService examples on Java7]]
+
[https://www.eclipse.org/ecf/downloads.php ECF 3.14.37]
  
There was a talk about the use of Remote Services from Neil Bartlett at EclipseCon 2014. It was called [https://www.youtube.com/watch?v=Jp2sVAmgrSA Scaling and Orchestrating Microservices with OSGi].   About midway through the talk he discusses the use of Remote Services.  Sadly, he doesn't use ECF's open implementation of RSA, but he does make some interesting points about the utility of using Remote Services for scaling microservices across processes.
+
New Videos! - See four parts for OSGi Remote Services with gRPC: [https://www.youtube.com/watch?v=289BGznS_so Part 1], [https://www.youtube.com/watch?v=58ZU_KIKUAo Part 2], [https://www.youtube.com/watch?v=c4tMPbDPiVw Part 3], [https://www.youtube.com/watch?v=9Q2qfiL8QMA Part 4].
 +
 
 +
[https://wiki.eclipse.org/Etcd3-based_Discovery_Provider etcd3 discovery provider]
 +
 
 +
[[Extending the Jersey JaxRS Remote Services Provider]]
 +
 
 +
[https://modumind.com/2020/11/05/ecf-and-rest-improved-support-for-properties-and-profiles/ RCP Application Imports JaxRS Remote Services]
 +
 
 +
[[Using Properties to Import Endpoint Descriptions]]
 +
 
 +
[https://github.com/ECF/grpc-RemoteServicesProvider gRPC Distribution Provider]
 +
 
 +
[https://github.com/ECF/JaxRSProviders Release 1.14.0 of JaxRS Distribution Providers]
 +
 
 +
[[OSGi Remote Service Admin User's Guide]]
 +
 
 +
[[OSGi Services between Python and Java]]
 +
 
 +
[[Gogo Commands for Remote Services Development]]
 +
 
 +
[[Bndtools Support for Remote Services Development]]
 +
 
 +
[[RSA Console Commands]]
 +
 
 +
[[Karaf Remote Management with Eclipse]]
 +
 
 +
[[EIG:Install Timeline Example into Apache Karaf|Install and run TimeService Tutorial in Apache Karaf]]
 +
 
 +
Christoph Keimel presented a very cool [http://de.slideshare.net/keimel/how-to-diffuse-a-bomb-with-ecf-and-efxclipse Internet of Things game based upon ECF Remote Services] at [http://eclipsesource.com/blogs/2015/12/23/eclipse-democamp-december-munich-2015/ Eclipse Democamp].  [http://de.slideshare.net/keimel/how-to-diffuse-a-bomb-with-ecf-and-efxclipse Check it out]...it's really cool!
  
 
===Download and Install===
 
===Download and Install===
 +
 +
[https://git.eclipse.org/c/ecf/org.eclipse.ecf.git/tree/releng/org.eclipse.ecf.releng/projectSet-git.psf  Project Set file of active ECF projects]
  
 
[http://www.eclipse.org/ecf Download and Install into Eclipse]
 
[http://www.eclipse.org/ecf Download and Install into Eclipse]
Line 18: Line 47:
 
[[EIG:Install Timeline Example into Apache Karaf|Install and run TimeService Tutorial in Apache Karaf]]
 
[[EIG:Install Timeline Example into Apache Karaf|Install and run TimeService Tutorial in Apache Karaf]]
  
===Introductory Materials===
+
===Tutorials===
  
NEW 3.9.2: [[Tutorial: ECF Remote Services for Accessing Existing REST Services]]
+
[[Tutorial: Extending the JaxRS Remote Services Provider]]
  
[http://www.eclipse.org/ecf/presentations/ese2014/How%20to%20Cook%20an%20Egg%20with%20the%20Eclipse%20Communication%20Framework.pdf NEW 3.9.1: How to Cook an Egg with ECF (Wim Jongman presentation at EclipseCon 2014)]
+
[[Tutorial: JaxRS Remote Services on Karaf]]
  
[[Tutorial:  Building your first OSGi Remote Service]]
+
[[Using the Bndtools Remote Services Project Templates]]
  
NEW 3.9: [[Tutorial:  Raspberry Pi GPIO with OSGi Services]]
+
[[Tutorial:  Python for OSGi Services]]
  
NEW 3.9: [[Tutorial:  OSGi Remote Services for Raspberry Pi GPIO]]
+
[[Tutorial:  Using Google RPC/ProtocolBuffers for Remote Services]]
  
NEW 3.9.1: [[ECF Remote Services for Raspberry Pi GPIO]]
+
[[Tutorial:  Creating Custom Distribution Providers]]
  
NEW Luna: [[Tutorial:  Building your first Asynchronous OSGi Remote Service]]
+
[[Tutorial:  Exposing a Jax REST service as an OSGi Remote Service]]
  
NEW Luna: [[Tutorial:  OSGi Remote Services for the Raspberry Pi]]
+
[[Tutorial:  Using REST and OSGi Standards for Micro Services]]
  
[[Getting Started with ECF's OSGi Remote Services Implementation]]
+
[[Tutorial:  ECF Remote Services for Accessing Existing REST Services]]
  
New Luna: [[OSGi Remote Services and ECF|ECF Remote Services Architecture]]
+
[[Tutorial:  Creating a RESTful Remote Service Provider]]
  
===Discovery and Distribution Providers===
+
[http://www.eclipse.org/ecf/presentations/ese2014/How%20to%20Cook%20an%20Egg%20with%20the%20Eclipse%20Communication%20Framework.pdf How to Cook an Egg with ECF (Wim Jongman presentation at EclipseCon 2014)]
  
====Discovery Providers====
+
[[Tutorial:  Building your first OSGi Remote Service]]
  
[[Zookeeper Based ECF Discovery| Zookeeper Discovery]]
+
[[Tutorial:  Raspberry Pi GPIO with OSGi Services]]
  
[[Etcd-Based Discovery Provider| etcd Discovery]]
+
[[Tutorial:  OSGi Remote Services for Raspberry Pi GPIO]]
  
[[SLP-Based Discovery Provider| SLP Discovery]]
+
[[ECF Remote Services for Raspberry Pi GPIO]]
  
[[File-based Discovery | Static File-based Discovery of Remote Service Endpoints]]
+
[[Tutorial:  Building your first Asynchronous OSGi Remote Service]]
  
====Distribution Providers====
+
[[Tutorial:  OSGi Remote Services for the Raspberry Pi]]
  
[[Distribution Providers]]
+
===Remote Service Distribution and Discovery Providers===
  
[[Distribution Provider Configuration Properties]]
+
[[Discovery Providers]]
 +
 
 +
[[Distribution Providers]]
  
 
===Remote Service Admin===
 
===Remote Service Admin===
 +
 +
[[Getting Started with ECF's OSGi Remote Services Implementation]]
 +
 +
[[OSGi Remote Services and ECF|ECF Remote Services Architecture]]
  
 
[[Remote Services Admin|OSGi Remote Service Admin (RSA) Management Agent]]
 
[[Remote Services Admin|OSGi Remote Service Admin (RSA) Management Agent]]
Line 64: Line 99:
 
===Other Cool Topics===
 
===Other Cool Topics===
  
[[Tutorial:  Creating a RESTful Remote Service Provider]]
+
[[ECF Filetransfer Docs (used in Eclipse/P2)|ECF Filetransfer Docs]]
  
 
[[Asynchronous Proxies for Remote Services]]
 
[[Asynchronous Proxies for Remote Services]]
Line 73: Line 108:
  
 
[[iPopo Compatible Providers]]
 
[[iPopo Compatible Providers]]
 
[[REST_abstraction_for_ECF|REST-style Remote Services Providers]]
 
  
 
[[Comparison of Discovery and Distribution Providers | Technical Comparison of Discovery and Distribution Providers]]
 
[[Comparison of Discovery and Distribution Providers | Technical Comparison of Discovery and Distribution Providers]]
Line 82: Line 115:
 
==ECF Documentation Project==
 
==ECF Documentation Project==
  
We know we have a problem with insufficient and disorganized documentation.  We are working on it.  We would appreciate any help that anyone is willing to provide, so if you would like to contribute to ECF by editing and/or creating documentation, please get a hold of us via the ]https://dev.eclipse.org/mailman/listinfo/ecf-dev ecf-dev mailing list]
+
We know we have a problem with insufficient and disorganized documentation.  We are working on it.  We would appreciate any help that anyone is willing to provide, so if you would like to contribute to ECF by editing and/or creating documentation, please get a hold of us via the [https://dev.eclipse.org/mailman/listinfo/ecf-dev ecf-dev mailing list]
  
 
*[[Remote Service SDK - Annotated listing of bundles included in SDK]]
 
*[[Remote Service SDK - Annotated listing of bundles included in SDK]]
Line 90: Line 123:
 
* [[EUG:How to Contribute|How to Contribute]]
 
* [[EUG:How to Contribute|How to Contribute]]
 
* [[ECF Documentation Priorities]]
 
* [[ECF Documentation Priorities]]
* [http://download.eclipse.org/rt/ecf/3.8.1/javadoc/index.html ECF API Javadoc ]
+
* [http://download.eclipse.org/rt/ecf/latest/javadoc/index.html ECF API Javadoc ]
  
==Additional Documentation==
+
==Real-Time Shared Editing==
  
*[[ECF Servers|Servers]]
 
 
*[[DocShare Plugin|Real-Time Shared Editing]]
 
*[[DocShare Plugin|Real-Time Shared Editing]]
 
*[[Extending Real-Time Shared Editing for Use with Other Editors]]
 
*[[Extending Real-Time Shared Editing for Use with Other Editors]]
  
==Recent Presentations==
+
==Presentations==
  
*[http://www.lemmster.de/publications/Discover_Remote_Services_-_Democamp_HH_2013_-_Markus_Alexander_Kuppe.pdf Democamp presentation by Markus Kuppe]
+
*[http://www.eclipse.org/ecf/presentations/ese2014/How%20to%20Cook%20an%20Egg%20with%20the%20Eclipse%20Communication%20Framework.pdf How to Cook an Egg with ECF (Wim Jongman presentation at EclipseCon 2014)]
*[http://www.eclipsecon.org/europe2013/discover-remote-osgi-services Discover Remote OSGi Services]
+
*[http://vimeo.com/14247502 Fun with remote services]
+
  
 +
*[http://vimeo.com/14247502 Fun with remote services]
  
 
=Development (for contributors & committers)=
 
=Development (for contributors & committers)=
 
==ECF Calls and Meetings==
 
 
ECF has open bi-weekly Google Hangouts to discuss current and future issues on our roadmap.  '''Anyone interested is welcome to join us (Consumers too)'''.  We typically share the Hangout URL on the [https://dev.eclipse.org/mailman/listinfo/ecf-dev ecf-dev mailing list] shortly before the hangout begins...so please [https://dev.eclipse.org/mailman/listinfo/ecf-dev  join the ecf-dev mailing list]
 
 
===Next Hangout (proposed):  ===
 
 
===Notes from Recent Meetings===
 
*[[ECF_Conference_Call_01.07.2013|1.07.2014 Call Agenda and Notes]]
 
 
====Archive Notes====
 
 
*[[ECF Meeting Notes|Notes from Previous Meetings]]
 
  
 
===IRC===
 
===IRC===
Line 124: Line 142:
 
*IRC (public):  <b>irc.freenode.net</b>  channel: <b>#eclipse-ecf</b>  ECF URL <b>[irc://irc.freenode.net/#eclipse-ecf irc://<user>@irc.freenode.net/#eclipse-ecf]</b><br>
 
*IRC (public):  <b>irc.freenode.net</b>  channel: <b>#eclipse-ecf</b>  ECF URL <b>[irc://irc.freenode.net/#eclipse-ecf irc://<user>@irc.freenode.net/#eclipse-ecf]</b><br>
  
==Project Planning==
+
==Source Code==
  
[[Planning for ECF 3.8 | Plan for ECF 3.8]]
+
[https://github.com/eclipse/ecf.git Source code on GitHub]
  
[[ECF 4.0 ToDos]]
+
[http://git.eclipse.org/c/ecf/ecf.git/ Website Repository]
 
+
==Access to Source Code==
+
 
+
[http://git.eclipse.org/c/ecf/org.eclipse.ecf.git source code repository]
+
 
+
[http://git.eclipse.org/c/ecf/ecf.git/ web documentation repository]
+
  
 
==Coding Conventions==
 
==Coding Conventions==
  
ECF has decided to use the [http://www.eclipse.org/equinox/documents/coding.php Equinox Coding Conventions]. Also [http://www.eclipse.org/equinox/documents/coding.php on this page] are links to java
+
ECF is using the [http://www.eclipse.org/equinox/documents/coding.php Equinox Coding Conventions]. Also [http://www.eclipse.org/equinox/documents/coding.php on this page] are links to java
 
source code formatter to use in Eclipse to easily enforce these conventions.
 
source code formatter to use in Eclipse to easily enforce these conventions.
  
==Builds==
+
{{:Eclipse Communication Framework Project/Builds}}
 
+
ECF has nightly and continuous builds with automated integration testing.  We use Jenkins and Buckminster and is hosted at the Oregon State University Open Source Lab.  See [https://build.ecf-project.org/jenkins/ here].
+
 
+
Both Maven and p2 repositories are available from nightly builds [http://download.ecf-project.org/ here].
+
 
+
==Appendix==
+
 
+
[[ECF/Adopters|ECF Adopters List (please add yourself if you are using ECF)]]
+
  
 
{{ECF}}
 
{{ECF}}

Revision as of 21:43, 20 November 2022

Container.png

OSGi Remote Services

What's New

ECF 3.14.37

New Videos! - See four parts for OSGi Remote Services with gRPC: Part 1, Part 2, Part 3, Part 4.

etcd3 discovery provider

Extending the Jersey JaxRS Remote Services Provider

RCP Application Imports JaxRS Remote Services

Using Properties to Import Endpoint Descriptions

gRPC Distribution Provider

Release 1.14.0 of JaxRS Distribution Providers

OSGi Remote Service Admin User's Guide

OSGi Services between Python and Java

Gogo Commands for Remote Services Development

Bndtools Support for Remote Services Development

RSA Console Commands

Karaf Remote Management with Eclipse

Install and run TimeService Tutorial in Apache Karaf

Christoph Keimel presented a very cool Internet of Things game based upon ECF Remote Services at Eclipse Democamp. Check it out...it's really cool!

Download and Install

Project Set file of active ECF projects

Download and Install into Eclipse

Apache Karaf Install of ECF RS SDK

Install and run TimeService Tutorial in Apache Karaf

Tutorials

Tutorial: Extending the JaxRS Remote Services Provider

Tutorial: JaxRS Remote Services on Karaf

Using the Bndtools Remote Services Project Templates

Tutorial: Python for OSGi Services

Tutorial: Using Google RPC/ProtocolBuffers for Remote Services

Tutorial: Creating Custom Distribution Providers

Tutorial: Exposing a Jax REST service as an OSGi Remote Service

Tutorial: Using REST and OSGi Standards for Micro Services

Tutorial: ECF Remote Services for Accessing Existing REST Services

Tutorial: Creating a RESTful Remote Service Provider

How to Cook an Egg with ECF (Wim Jongman presentation at EclipseCon 2014)

Tutorial: Building your first OSGi Remote Service

Tutorial: Raspberry Pi GPIO with OSGi Services

Tutorial: OSGi Remote Services for Raspberry Pi GPIO

ECF Remote Services for Raspberry Pi GPIO

Tutorial: Building your first Asynchronous OSGi Remote Service

Tutorial: OSGi Remote Services for the Raspberry Pi

Remote Service Distribution and Discovery Providers

Discovery Providers

Distribution Providers

Remote Service Admin

Getting Started with ECF's OSGi Remote Services Implementation

ECF Remote Services Architecture

OSGi Remote Service Admin (RSA) Management Agent

Other Cool Topics

ECF Filetransfer Docs

Asynchronous Proxies for Remote Services

OSGi Remote Services and Sync vs. Async Remote Procedure Call

Distributed EventAdmin Service

iPopo Compatible Providers

Technical Comparison of Discovery and Distribution Providers

ECF Blog

ECF Documentation Project

We know we have a problem with insufficient and disorganized documentation. We are working on it. We would appreciate any help that anyone is willing to provide, so if you would like to contribute to ECF by editing and/or creating documentation, please get a hold of us via the ecf-dev mailing list

Real-Time Shared Editing

Presentations

Development (for contributors & committers)

IRC

Source Code

Source code on GitHub

Website Repository

Coding Conventions

ECF is using the Equinox Coding Conventions. Also on this page are links to java source code formatter to use in Eclipse to easily enforce these conventions.

Build

ECF has nightly and continuous builds with automated integration testing. We use Jenkins and Tycho running on the ECF JIPP Instance.

Latest p2 snapshot repository is available here. Show Directory Contents, the site.p2 directory is the p2 repository, the zip contains the contents as zip.

Maven release repositories are available at maven central.

See ECF downloads for more information.

Eclipse Communication Framework
API
API DocumentationJavadocProviders
Development
Development GuidelinesIntegrators Guide

Back to the top