Jump to: navigation, search

ECF/Providers

The Eclipse Communication Framework defines a number of APIs that can be implemented by adopters and add-in providers. The project itself provides implementations of some existing networking protocols. This page is intended to list all known providers, official or third-party, along with some basic information about the provider such as its runtime requirements and licensing.

Call (org.eclipse.ecf.call)

Skype

See Skype Provider

Discovery (org.eclipse.ecf.discovery)

Zeroconf/aka Bonjour/Rendevous

JmDNS is a java-based open source implementation of the zeroconf protocol. This provides an implementation of the ECF Discovery API.

Bundle Name: org.eclipse.ecf.provider.jmdns

License: Eclipse Public License 1.0

Required Bundles:

Imported Packages:

  • org.osgi.framework
  • org.osgi.util.tracker

Download: Included with ECF as of 1.0.0M6.

Execution Environment: J2SE-1.3

Original Implementation: Eclipse.org

Notes: None.

File Transfer (org.eclipse.ecf.filetransfer)

URL/URLConnection Protocols (file retrieval)

There is a base ECF file transfer provider based upon the JRE URL/URLConnection classes, which will allow the file transfer API to be used based only upon the JRE-built-in URL/URLConnection protocol handlers.

Bundle Name: org.eclipse.ecf.provider.filetransfer

License: Eclipse Public License 1.0

Required Bundles:

Imported Packages:

  • org.eclipse.core.runtime.jobs
  • org.eclipse.osgi.util
  • org.osgi.framework
  • org.osgi.service.url
  • org.osgi.util.tracker
  • org.osgi.service.log

Download: Included with ECF as of 1.0.0M6.

Execution Environment: J2SE-1.3

Original Implementation: Eclipse.org

Notes: None.

Apache Httpclient for HTTP/HTTPS

Bundle Name: org.eclipse.ecf.provider.filetransfer.httpclient

License: Eclipse Public License 1.0

Required Bundles:

Imported Packages:

  • org.eclipse.core.runtime.jobs
  • org.eclipse.osgi.util
  • org.osgi.framework
  • org.osgi.service.url
  • org.osgi.util.tracker
  • org.osgi.service.log

Download: Included with ECF as of 1.0.0M6.

Execution Environment: J2SE-1.3

Original Implementation: Eclipse.org

Notes: None.

BitTorrent (file retrieval)

The BitTorrent protocol is a peer-to-peer protocol that uses the upload speed of the people currently downloading a file so that pieces of the file can be distributed among the various parties as quickly and as efficiently as possible.

Bundle Name: org.eclipse.ecf.provider.bittorrent

License: Eclipse Public License 1.0

Required Bundles:

Imported Packages:

  • org.eclipse.osgi.service.datalocation (1.0.0)
  • org.eclipse.osgi.util
  • org.osgi.framework
  • org.osgi.service.url
  • org.osgi.util.tracker

Download: Included with ECF as of 1.0.0M6.

Execution Environment: J2SE-1.4

Original Implementation: Eclipse.org

Notes: None.

XMPP (peer-to-peer file sending)

The XMPP protocol has an extension for peer-to-peer file transfer (XEP-0096).

See XMPP below for XMPP provider information.

Presence (org.eclipse.ecf.presence)

IRC

The IRC protocol is a popular chatting protocol that allows a group of people to discuss about something together as well as one-to-one communication via private messages.

Bundle Name: org.eclipse.ecf.provider.irc

License: Eclipse Public License 1.0, implementation code is under the Apache License 2.0

Required Bundles:

  • org.eclipse.equinox.common
  • org.eclipse.ecf
  • org.eclipse.ecf.presence

Imported Packages:

  • org.eclipse.osgi.util (1.0.0)
  • org.osgi.framework (1.3.0)
  • org.osgi.service.log (1.3.0)
  • org.osgi.util.tracker (1.3.2)

Download: Included with ECF as of 0.9.0

Execution Environment: J2SE-1.4

Original Implementation: IRClib

Notes: None.

MSN

The MSN protocol is the protocol used by Microsoft's Windows Live Messenger instant messaging application.

Bundle Name: org.eclipse.ecf.provider.msn

License: Eclipse Public License 1.0

Required Bundles:

  • org.eclipse.ecf
  • org.eclipse.ecf.presence
  • org.eclipse.equinox.common
  • org.hantsuki.gokigenyou

Imported Packages:

  • org.osgi.framework (1.3.0)

Download: Included with ECF as of 1.0.0M6.

Execution Environment: CDC-1.0/Foundation-1.0 (see Notes)

Original Implementation: Gokigenyou

Notes: While the bundle itself will compile under a CDC-1.0/Foundation-1.0 environment, the library itself will actually not work out of the box as the library needs to make an HTTPS connection. No implementations of the HTTPS protocol is included with the CDC-1.0/Foundation-1.0 runtime environment by default. This library will run in a CDC-1.1/Foundation-1.1 runtime environment provided that the optional security classes has been added to the classpath.

XMPP

XMPP is an open standards protocol that allows for the exchanging of messages and presence information in real-time. Google Talk is an example of an application that uses XMPP.

Bundle Name: org.eclipse.ecf.provider.xmpp

License: Eclipse Public License 1.0, implementation code is under the Apache License 2.0

Requird Bundles:

  • org.eclipse.equinox.common
  • org.eclipse.ecf
  • org.eclipse.ecf.filetransfer
  • org.eclipse.ecf.sharedobject
  • org.eclipse.ecf.presence
  • org.eclipse.ecf.provider
  • org.jivesoftware.smack

Imported Packages:

  • org.eclipse.core.runtime.jobs,
  • org.eclipse.osgi.util (1.0.0)
  • org.osgi.framework (1.3.0)
  • org.osgi.service.log (1.3.0)
  • org.osgi.util.tracker (1.3.2)

Download: Included with ECF

Execution Environment: J2SE-1.4

Original Implementation: Smack

Notes: None.

Bot (org.eclipse.ecf.presence.bot)

See Bot Framework

Remote Services (org.eclipse.ecf.remoteservice)

ECF Generic

ECF Generic is a TCP-based protocol. Both client and server implementations are included in the org.eclipse.ecf.provider bundle. The ECF Generic provider implements the ECF Shared Sbject API.

Bundle Name: org.eclipse.ecf.provider

License: Eclipse Public License 1.0

Required Bundles:

Imported Packages:

  • org.osgi.framework
  • org.eclipse.osgi.util
  • org.osgi.service.log
  • org.osgi.util.tracker

Download: Included with ECF as of 1.0.0M6.

Execution Environment: J2SE-1.3

Original Implementation: Eclipse.org

Notes: None.