<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>ECF New and Noteworthy</title>
<link rel="stylesheet" href="http://www.eclipse.org/default_style.css" type="text/css">

</head>

<body bgcolor="#FFFFFF">
<table border=0 cellspacing=5 cellpadding=2 width="100%">
  <tbody>
    <tr>
      <td width="69%" class="bannertext">
        <font class="indextop style">eclipse communication framework</font>
        <br><br>
        <font class="indexsub">an eclipse technology subproject</font>
        <br><br>
        <font class="indextop style2">New and Noteworthy</font><br>0.4.0 Stable Release</font>
        <br><br><br>
        Return to <a href="downloads.php">ECF download page</a></br>
        Return to <a href="comm_resources.php">ECF communication resources page</a>
      </td>
      <td width="31%">
        <div align="center">
          <img src="../images/Idea.jpg" width="120" height="86" hspace="50" align="middle">
        </div>
      </td>
    </tr>
  </tbody>
</table>

<table>
  <TR> <!----------------------------------------------------->
    <TD colSpan=2> <HR> </TD>
  </TR>
  <TR><TD colSpan=2><H2>Instant Messaging Improvements</H2></TD>

  <TR>
    <TD vAlign=top align=left width="30%">
    <p></p>
        <P align=left>
	<B>Support for XMPP (Jabber) MultiUser Chat</B>
        </P>
    </TD>
    <TD vAlign=top width="70%">
    <p></p>
      <P>The XMPP provider now provides access to server chat rooms.  Once connected to
      a XMPP server, the ECF Buddy List view provide a list of available chat rooms via the
      icon with small plus and 'C' in the upper right of the buddy list view:<br><br>
      <IMG src="images/screens/buddy_list_chat1.png">      </P>
      <p>Selecting this toolbar button will produce a list of chat rooms:</p>
      <p><img src="images/screens/chatroomlist.png"></p>
    </TD>
  </TR>
  <TR>
    <TD vAlign=top align=left width="30%">
    <p><br></p>
        <P align=left>
	<B>Interoperability with Google Talk IM</B>
        </P>
    </TD>
    <TD vAlign=top width="70%">
      <p><br></p>
      <P>The XMPP provider now provides support for using your Google Talk IM/Gmail account.
      To connect to your google talk/gmail account, bring up the 'Join ECF Group' dialog
      via the ECF  toolbar button <img src="images/screens/small_guy.png">:<br><br>
      <img src="images/screens/joingroupdialog.png"><br>
      <p>Once logged into the account your Google Talk buddies will appear in the ECF Buddy List and you can IM them via the buddy list context menu</p>
    </TD>
  </TR>
  <TR>
    <TD vAlign=top align=left width="30%">
    <p><br></p>
        <P align=left>
	<B>Support for Multiple XMPP (Jabber) Accounts</B>
        </P>
    </TD>
    <TD vAlign=top width="70%">
      <p><br></p>
      <P>The Buddy List view now supports presenting buddy lists from multiple XMPP (Jabber) accounts.
      Opening up the 'Join ECF Group' dialog
      via the ECF toolbar button <img src="images/screens/small_guy.png"> and connecting to multiple Jabber/XMPP accounts
      will present all the buddies for all connected accounts:</p>
      <IMG src="images/screens/buddy_list_expand.png">
    </TD>
  </TR>
  <TR> <!----------------------------------------------------->
    <TD colSpan=2> <HR> </TD>
  </TR>
  <TR><TD colSpan=2><H2>Team Collaboration Improvements</H2></TD>
  <TR>
    <TD vAlign=top align=left width="30%">
    <p><br></p>
        <P align=left>
	<B>Access to ECF Collaboration Server Groups</B>
        </P>
    </TD>
    <TD vAlign=top width="70%">
      <p><br></p>
      <P>The org.eclipse.ecf.example.collab plugin provides access to ECF generic server-provided collaboration groups.
      These collaboration groups provide access to multi-user chat, group file sharing, group co-web-browsing and a few
      other features.  These collaboration groups can be joined with the 'Join ECF Group' dialog via the ECF  toolbar button <img src="images/screens/small_guy.png">:</p>
      <img src="images/screens/joingroupdialog_generic.png">
      <p>Or, the project context menu:</p>
      <img src="images/screens/packageeplorercontext.png">

    </TD>
  </TR>

  <TR> <!----------------------------------------------------->
    <TD colSpan=2> <HR> </TD>
  </TR>
  <TR><TD colSpan=2><H2>New ECF Provider Implementations</H2></TD>
  <TR>
    <TD vAlign=top align=left width="30%">
    <p><br></p>
        <P align=left>
	<B>Java Messaging Service (JMS) Provider Implementation</B>
        </P>
    </TD>
    <TD vAlign=top width="70%">
      <p><br></p>
      <P>An ECF provider that uses <a href="http://www.activemq.com">ActiveMQ's</a> implementation of the
      <a href="http://java.sun.com/jms">Java Messaging Service</a> is now available.  To use this provider immediately,
      please contact the ECF team directly at <a href="mailto:ecf-dev@eclipse.org">ECF dev mailing list</a>.</p>
    </TD>
  </TR>

  <TR>
    <TD vAlign=top align=left width="30%">
    <p><br></p>
        <P align=left>
	<B>Zeroconf Discovery Provider Implementation</B>
        </P>
    </TD>
    <TD vAlign=top width="70%">
      <p><br></p>
      <P>An ECF provider implementing the org.eclipse.ecf.discovery API is now available that uses the
      <a href="http://www.zeroconf.org/">Zeroconf</a>/<a href="http://www.apple.com/macosx/features/bonjour/">Bonjour</a> protocols.
      To use this provider immediately,
      please contact the ECF team directly at <a href="mailto:ecf-dev@eclipse.org">ECF dev mailing list</a>.</p>
    </TD>
  </TR>

  <TR> <!----------------------------------------------------->
    <TD colSpan=2> <HR> </TD>
  </TR>
  <TR><TD colSpan=2><H2>ECF API Changes</H2></TD>
  <TR>
    <TD vAlign=top align=left width="30%">
    <p><br></p>
        <P align=left>
	<B>Simplification of ECF Namespace Extension Point</B>
        </P>
    </TD>
    <TD vAlign=top width="70%">
      <p><br></p>
      <P>The ECF Namespace extension point has been vastly simplified.  This allows plugin developers
      to easily substitute their own Namespace implementation for the creation of ID instances.
      See the schema documentation in the org.eclipse.ecf/schema/namespace.exsd schema definition
      file or in the Eclipse ECF Developers Guide in the Eclipse Online Help.</p>
    </TD>
  </TR>

  <TR>
    <TD vAlign=top align=left width="30%">
    <p><br></p>
        <P align=left>
	<B>Simplification of ECF Container Factory Extension Point</B>
        </P>
    </TD>
    <TD vAlign=top width="70%">
      <p><br></p>
      <P>Previously, ECF provider implementers had to provide an extension for the ECF 'containerFactory' extension point, and this
      extension point required that the supplied containerFactory had to create instances of
      the <a href="http://www.eclipse.org/ecf/org.eclipse.ecf.docs/api/org/eclipse/ecf/core/ISharedObjectContainer.html">ISharedObjectContainer</a> interface.
      The requirements on containerFactory extensions
      have been simplified so to that they now only must produce instances that implement the much
      simpler <a href="http://www.eclipse.org/ecf/org.eclipse.ecf.docs/api/org/eclipse/ecf/core/IContainer.html">IContainer</a> interface.
      This makes it significantly easier for ECF providers to be created that have very simple and lightweight
      functionality, without requiring support for the distributed component model required
      by <a href="http://www.eclipse.org/ecf/org.eclipse.ecf.docs/api/org/eclipse/ecf/core/ISharedObjectContainer.html">ISharedObjectContainer</a></p></TD>
  </TR>

  <TR>
    <TD vAlign=top align=left width="30%">
    <p><br></p>
        <P align=left>
	<B>API Method and Class Name Changes</B>
        </P>
    </TD>
    <TD vAlign=top width="70%">
      <p><br></p>
      <P>A number of class and method name changes have occurred for consistency and API usability.  For example, previously the
      core methods for initiating a connection with a single or group of remote
      processes was IContainer.joinGroup().  Now, it is <a href="http://www.eclipse.org/ecf/org.eclipse.ecf.docs/api/org/eclipse/ecf/core/IContainer.html#connect(org.eclipse.ecf.core.identity.ID,%20org.eclipse.ecf.core.security.IConnectContext)">IContainer.connect()</a></p></TD>
  </TR>

  <TR>
    <TD vAlign=top align=left width="30%">
    <p><br></p>
        <P align=left>
	<B>Revised Architectural Overview Documentation</B>
        </P>
    </TD>
    <TD vAlign=top width="70%">
      <p><br></p>
      <P>See <a href="http://www.eclipse.org/ecf/documentation.html">architectural overview documentation</a></p></TD>
  </TR>

</table>
</body>
</html>