eclipse communication framework
an eclipse technology subproject New and Noteworthy 0.8.4 Stable Release Return to ECF download page Return to ECF communication resources page New and Noteworthy for 0.4.0 New and Noteworthy for 0.5.2 New and Noteworthy for 0.5.4 New and Noteworthy for 0.6.0 New and Noteworthy for 0.6.2 New and Noteworthy for 0.7.0 New and Noteworthy for 0.7.5 New and Noteworthy for 0.7.6 New and Noteworthy for 0.8.0 New and Noteworthy for 0.8.1 New and Noteworthy for 0.8.2 |
|
|
|
Application-Defined Peer-to-Peer Protocols Using XMPP |
|
New Example Application |
The org.eclipse.ecf.example.clients plugin has a new example client: XMPPSORobotApplication. This application shows the use an XMPP's extension mechanism to implement new protocols that can run directly on XMPP. This can be accomplished because the ECF XMPP provider (ecf.xmpp.smack) implements the ISharedObjectContainer API. The ISharedObjectContainer API allows applications to design, implement, and use new protocols, by creating components implementing the ISharedObject interface. These components may then be added to an ISharedObjectContainer instance at runtime. So, for example, consider the following snippet: // Get shared object container from xmpp container instance ISharedObjectContainer socontainer = (ISharedObjectContainer) xmppcontainer.getAdapter(ISharedObjectContainer.class); // Create shared object ID...this will be a singleton so the ID can be the class name ID newID = IDFactory.getDefault().createStringID(TrivialSharedObject.class.getName()); // Create shared object itself ISharedObject sharedObject = new TrivialSharedObject(); // Add shared object to container soontainer.getSharedObjectManager().addSharedObject(newID, sharedObject, null); In the case of this example application, the ISharedObject component is implemented by the TrivialSharedObject class. See the source code for this class to examine the implementation of the custom protocol. The source code for all ECF plugins is available via anonymous CVS access described on the ECF Dev Resources Page. Other ECF clients may define any point-to-point protocol they wish using similar mechanisms (implemented as ISharedObject instances like TrivialSharedObject), and this new protocol will then run on XMPP without requiring modification to existing XMPP servers. Other XMPP clients (e.g. GAIM, Google Talk, etc.) that do not know about the new protocol will simply ignore any messages directed sent to them. |
|
|
Call API Additions/Changes |
|
Enhancements to Support Jingle/JEP-166 |
The ECF plugin org.eclipse.ecf.call is intended to provide an abstract 'Call' API, to allow clients to do call setup in a protocol independent manner. The API is not finished yet (still experimental), but the ECF team is working on an implementation based upon Google Talk's Jingle protocol. The new/enhanced API javadocs are here
|