blob: b7fa4b0f9bfa3d52163bc36859b4d716c8c3cb4c [file] [log] [blame]
<!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.8.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>
<br><br>
<a href="NewAndNoteworthy_0.4.0.html">New and Noteworthy for 0.4.0</a><br>
<a href="NewAndNoteworthy_0.5.2.html">New and Noteworthy for 0.5.2</a><br>
<a href="NewAndNoteworthy_0.5.4.html">New and Noteworthy for 0.5.4</a><br>
<a href="NewAndNoteworthy_0.6.0.html">New and Noteworthy for 0.6.0</a><br>
<a href="NewAndNoteworthy_0.6.2.html">New and Noteworthy for 0.6.2</a><br>
<a href="NewAndNoteworthy_0.7.0.html">New and Noteworthy for 0.7.0</a><br>
<a href="NewAndNoteworthy_0.7.5.html">New and Noteworthy for 0.7.5</a><br>
<a href="NewAndNoteworthy_0.7.6.html">New and Noteworthy for 0.7.6</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>ECF New Applications and Features</H2></TD>
<TR>
<TD vAlign=top align=left width="30%">
<p><br></p>
<P align=left>
<B>New Example App: Real-time Shared Text Editing</B>
</P>
</TD>
<TD vAlign=top width="70%">
<p><br></p>
<P>There is a new example plugin: <b>org.eclipse.ecf.example.collab.editor</b>. This plugin provides an example
of real-time shared editing of text files. See <a href="http://www.eclipse.org/ecf/downloads.php">here</a> to download and install
(see "Shared Text Editor"), and
<a href="http://wiki.eclipse.org/index.php/Example_Shared_Text_Editor">here</a> for an explanation of how to
setup and run this example application.</P>
<img src="images/screens/sharededitor.jpg">
</TD>
</TR>
<TR>
<TD vAlign=top align=left width="30%">
<p><br></p>
<P align=left>
<B>Add Buddy Menu Item</B>
</P>
</TD>
<TD vAlign=top width="70%">
<p><br></p>
<P>There is now an 'Add Buddy' menu item in the context menu for accounts
in ECF buddy list view. This supports the sending of an authorization request to
a propective buddy.</P>
<img src="images/screens/addbuddy.png">
</TD>
</TR>
<TR>
<TD vAlign=top align=left width="30%">
<p><br></p>
<P align=left>
<B>Change Password Menu Item</B>
</P>
</TD>
<TD vAlign=top width="70%">
<p><br></p>
<P>There is now an 'Change Password' menu item in the context menu for accounts
in ECF buddy listview. This supports the changing of a password on XMPP servers.</P>
<img src="images/screens/changepassword.png">
</TD>
</TR>
<TR>
<TD vAlign=top align=left width="30%">
<p><br></p>
<P align=left>
<B>Autologin for ECF Accounts</B>
</P>
</TD>
<TD vAlign=top width="70%">
<p><br></p>
<P>It's now possible to have ECF automatically login in to a set of accounts upon Eclipse startup. To have ECF login to a given account,
simply open the ECF 'Connect' dialog and select the 'Login automatically at startup' check box before choosing OK:
</P>
<img src="images/screens/autologin.png">
<p></p>
The next time that you start Eclipse, this account will automatically be logged into with the given information. To remove an automatic login
simply login again with the autologin check box left unselected. <b>NOTE</b>: the password information is stored in cleartext in the Preference store for
a given workspace, and so is insecure.
</TD>
</TR>
<TR> <!----------------------------------------------------->
<TD colSpan=2> <HR> </TD>
</TR>
<TR><TD colSpan=2><H2>ECF API Additions and Changes</H2></TD>
<TR>
<TD vAlign=top align=left width="30%">
<p><br></p>
<P align=left>
<B>New Extension Point: org.eclipse.ecf.startup</B>
</P>
</TD>
<TD vAlign=top width="70%">
<p><br></p>
<P>There is now a new ECF extension point <b>org.eclipse.ecf.startup</b>. This extension point allows plugins to be
called in a separate Job during ECF startup. This so that ECF client applications can create IContainer
instances and connect to remote services upon ECF startup. Extensions must implement the
<a href="http://www.eclipse.org/ecf/org.eclipse.ecf.docs/api/org/eclipse/ecf/core/start/IECFStart.html">IECFStart</a> interface.
Upon ECF start, the <b>startup</b> method will be called via a separate Thread/Job.
Here's an example extension definition for this extension point:
<pre>
&lt;extension
point="org.eclipse.ecf.startup">
&lt;ecfstart
class="org.eclipse.ecf.example.collab.start.CollabStart"/>
&lt;/extension>
</pre>
At ECF startup time the <b>org.eclipse.ecf.example.collab.start.CollabStart.startup</b> method will be called by a new Job. The ProgressMonitor
parameter will be non-null.
</TD>
</TR>
<TR>
<TD vAlign=top align=left width="30%">
<p><br></p>
<P align=left>
<B>Removed unnecessary method in org.eclipse.ecf.core.events.ISharedObjectActivatedEvent</B>
</P>
</TD>
<TD vAlign=top width="70%">
<p><br></p>
<P>Previously, <a href="http://www.eclipse.org/ecf/org.eclipse.ecf.docs/api/org/eclipse/ecf/core/events/ISharedObjectActivatedEvent.html">ISharedObjectActivatedEvent</a>
had a method getGroupMemberIDs(). This method is superfluous so removed from ISharedObjectActivatedEvent and implementing class org.eclipse.ecf.core.events.SharedObjectActivatedEvent.
</p>
</TD>
</TR>
<TR>
<TD vAlign=top align=left width="30%">
<p><br></p>
<P align=left>
<B>Made IContainerEvent notifications for ISharedObjectContainer consistent</B>
</P>
</TD>
<TD vAlign=top width="70%">
<p><br></p>
<P>Made the IContainer event notifications include shared object activated (ISharedObjectActivatedEvent), deactivated (ISharedObjectDeactivatedEvent)
consistent and added to <b>org.eclipse.ecf.provider</b> implementation the appropriate construction and delivery of these events via any listeners
added to the IContainer via <a href="http://www.eclipse.org/ecf/org.eclipse.ecf.docs/api/org/eclipse/ecf/core/IContainer.html#addListener(org.eclipse.ecf.core.IContainerListener,%20java.lang.String)">IContainer.addListener</a></p>
</TD>
</TR>
<TR>
<TD vAlign=top align=left width="30%">
<p><br></p>
<P align=left>
<B>Refactored Presence API</B>
</P>
</TD>
<TD vAlign=top width="70%">
<p><br></p>
<P>Refactored the interfaces in the <b>org.eclipse.ecf.presence</b> API, specifically in the
<a href="http://www.eclipse.org/ecf/org.eclipse.ecf.docs/api/org/eclipse/ecf/presence/chat/package-summary.html">org.eclipse.ecf.presence.chat package</a>
<p>Changes to <a href="http://www.eclipse.org/ecf/org.eclipse.ecf.docs/api/org/eclipse/ecf/presence/chat/IChatRoomManager.html">IChatRoomManager</a></p>
<ul>
<li>ADDED <a href="http://www.eclipse.org/ecf/org.eclipse.ecf.docs/api/org/eclipse/ecf/presence/chat/IChatRoomManager.html#getParent()">IChatRoomManager.getParent()</a></li>
<li>ADDED <a href="http://www.eclipse.org/ecf/org.eclipse.ecf.docs/api/org/eclipse/ecf/presence/chat/IChatRoomManager.html#getChildren()">IChatRoomManger.getChildren()</a></li>
<li>REMOVED createChatRoomContainer()</li>
</ul>
<p>Changes to <a href="http://www.eclipse.org/ecf/org.eclipse.ecf.docs/api/org/eclipse/ecf/presence/chat/IRoomInfo.html">IRoomInfo</a></p>
<ul>
<li>Reparented IRoomInfo to extend IAdaptable</a></li>
<li>ADDED <a href="http://www.eclipse.org/ecf/org.eclipse.ecf.docs/api/org/eclipse/ecf/presence/chat/IRoomInfo.html#createChatRoomContainer()">IRoomInfo.createChatRoomContainer()</a></li>
</ul>
Now, the typical way to connect to a chat room is shown by this example code:
<pre>
IRoomInfo roominfo = chatroommanager.getChatRoomInfo("roomname");
IChatRoomContainer chatroom = roominfo.createChatRoomContainer();
chatroom.connect(roominfo.getRoomID(),null);
</pre>
</p>
</TD>
</TR>
</table>
</body>
</html>