eclipse communication framework

an eclipse technology subproject

New and Noteworthy
1.0.0 Milestone 5


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
New and Noteworthy for 0.9.5
New and Noteworthy for 0.9.6

UI Additions

Additions to IRC UI, IM Roster UI, and ECF generic collaboration UI.



Enhanced Support for IRC command handling

Added greater support for IRC command handling. See bug #172958 for details. Thanks to Mark Kropf for code contributions.

API Enhancements

Presence API Addition

Added org.eclipse.ecf.presence.chatroom.IChatRoomAdminListener to notify registered listeners (listener registration via IChatRoomContainer.addChatRoomAdminListener) when the chat room subject changes/is changed asynchronously.

Shared Object API Addition

Added event notification for shared object message send and receive. See bug #172349 for details.


New Extension Point: URL Stream Handler Service


Normally, when creating an instance of java.net.URL, it's necessary to use one of the 'built-in' protocols...e.g. http, ftp, file, etc. Any other protocols will not have an URLStreamHandler associated with them, and the java.net.URL constructor will throw a MalformedURLException. For example:

      // throws MalformedURLException
      URL anURL = new URL("foobar://whateverIwanttohave/here/and/there/and/everywhere");
      
The new ECF filetransfer extension point org.eclipse.ecf.filetransfer.urlStreamHandlerService allows plugins to add new URL protocols to the Platform, and register a class for handling the parsing of the URL and/or the creation of URLConnection instances (via the URL.openConnection() method). So, for example the following extension will setup a 'foobar' protocol handler service:

   <extension
         point="org.eclipse.ecf.filetransfer.urlStreamHandlerService">
      <urlStreamHandlerService
            protocol="foobar"
            serviceClass="org.eclipse.ecf.tests.filetransfer.TestURLStreamHandlerService">
      </urlStreamHandlerService>
   </extension>
	
With such an extension defined, and the ECF filetransfer API plugin started, the following code will no longer throw an exception:
      // does not throw MalformedURLException
      URL anURL = new URL("foobar://whateverIwanttohave/here/and/there/and/everywhere");
      URLConnection connection = anURL.openConnection();
      
Note that the 'serviceClass' must be a valid subclass of org.osgi.service.url.AbstractURLStreamHandlerService. Here is a trivial example implementation class:

public class TestURLStreamHandlerService extends
  AbstractURLStreamHandlerService {

 }
 /* (non-Javadoc)
  * @see org.osgi.service.url.AbstractURLStreamHandlerService#openConnection(java.net.URL)
  */
 public URLConnection openConnection(URL u) throws IOException {
  return new TestHttpURLConnection(u);
 }

}
      
See also the extension point documentation for the org.eclipse.ecf.filetransfer.urlStreamHandlerService extension point.