eclipse communication framework

an eclipse technology subproject

New and Noteworthy
0.9.5 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
New and Noteworthy for 0.8.4
New and Noteworthy for 0.8.5
New and Noteworthy for 0.8.6
New and Noteworthy for 0.8.7
New and Noteworthy for 0.8.9
New and Noteworthy for 0.9.0
New and Noteworthy for 0.9.1
New and Noteworthy for 0.9.2
New and Noteworthy for 0.9.3
New and Noteworthy for 0.9.4

API Enhancements


Refactoring to Support JFace Content Providers


The presence API (plugin: org.eclipse.ecf.presence) has been enhanced to support JFace viewers. Specifically, the roster interface classes (IRosterManager, IRoster, IRosterEntry, IRosterGroup, IRosterItem) have been enhanced so that they can easily be used as the basis of an JFace ITreeContentProvider. This allows the use and automatic update of a roster (buddy) list by an ECF provider that implements the presence API (e.g. the XMPP provider). For example, here is code in the new plugin org.eclipse.ecf.presence.ui that creates a tree viewer to display multiple rosters:
      	protected void setupTreeViewer(Composite parent) {
		    treeViewer = new TreeViewer(parent, SWT.BORDER | SWT.MULTI
				| SWT.V_SCROLL);
		    getSite().setSelectionProvider(treeViewer);
		    multiRosterContentProvider = new MultiRosterContentProvider();
		    multiRosterLabelProvider = new MultiRosterLabelProvider();
		    treeViewer.setLabelProvider(multiRosterLabelProvider);
		    treeViewer.setContentProvider(multiRosterContentProvider);
		    treeViewer.setInput(new Object());
	    }
      
With this approach, the UI/viewer code does not need to know anything about the messaging to change/update the roster model. This model is managed by the ECF provider (XMPP) and when The MultiRosterContentProvider class (and others to support this new approach) are available in the (new) plugin: org.eclipse.ecf.presence.ui. See the classes in the org.eclipse.ecf.presence.ui package for example usage and reusable base classes.


IRCLib Update


The IRC provider plugin (org.eclipse.ecf.provider.irc) is based upon the IRCLib by Christoph Schwering. This library was update from 1.04 to 1.10 with specific improvements to support ECF usage.


Filetransfer Provider Uses Apache HttpClient 3.0.1


The filetransfer provider implementation (plugin org.eclipse.ecf.provider.filetransfer) previously was based upon the JDK java.net.URLConnection class for http file transfer support. Now this plugin uses the Apache HttpClient code v3.0.1. API was added to support the use of http authentication and http proxies.


Overall Improvements to Presence API


A number of improvements were made by refactoring the presence API (plugin: org.eclipse.ecf.presence). Interface and class names were changed for more consistency, interfaces and classes were moved around, and the API was simplified in many ways. For details see bug: #167363