| <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" | 
 |        "http://www.w3.org/TR/html4/loose.dtd"> | 
 | <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"> | 
 | 				<img src="https://wiki.eclipse.org/images/b/b8/Logo128x37.png" alt="ECF Logo"/> | 
 | 				<font class="indextop style">Eclipse Communication Framework (ECF)</font> | 
 | 						 | 
 | 						<br> | 
 | 				<br> <font class="indexsub">an eclipse runtime project</font> <br> | 
 | 				<br> <font class="indextop style2">New and Noteworthy</font><br> | 
 | 					3.13.0 Release <br> <br> | 
 | 				<br> Return to <a href="downloads.php">ECF download page</a><br> | 
 | 					<br> | 
 |  | 
 | 				<br><a | 
 | 					href="NewAndNoteworthy_3.12.0.html">New and Noteworthy for 3.12.0/Mars</a><br> | 
 | 					<br> | 
 | 				<br><a | 
 | 					href="NewAndNoteworthy_3.12.1.html">New and Noteworthy for 3.12.1</a><br> | 
 | 					<br> | 
 | 				<br></td> | 
 | 				<td width="31%"> | 
 | 					<div align="center"> | 
 | 						<img src="images/Idea.jpg" width="120" height="86" hspace="50" | 
 | 							align="middle" alt="Idea Icon"> | 
 | 					</div> | 
 | 				</td> | 
 | 			</tr> | 
 | 		</tbody> | 
 | 	</table> | 
 |  | 
 | 	<hr> | 
 |  | 
 | 	<table> | 
 | 				 <tr> | 
 | 			<td valign="top" align="left" width="15%"> | 
 | 				<p align="left"> | 
 | 					<b>API to Create Distribution Providers</b> | 
 | 				</p> | 
 | 			</td> | 
 | 			<td valign="top" width="85%"><p>For some time, it has been possible to create custom remote service distribution | 
 | 			providers.  A number of distribution providers <a href="https://wiki.eclipse.org/Distribution_Providers">already exist</a>, | 
 | 			but with 3.13.0 new API has been added to simplify the creation of new distribution providers.  This API is described | 
 | 			with examples in a new <a href="https://wiki.eclipse.org/Tutorial:_Creating_Custom_Distribution_Providers">Tutorial: Creating  | 
 | 			Custom Distribution Providers</a>.  See <a href="https://wiki.eclipse.org/Tutorial:_Creating_Custom_Distribution_Providers">new tutorial | 
 | 			for details</a> | 
 | 			</td> | 
 | 		</tr> | 
 | 	 | 
 | 					 <tr> | 
 | 			<td valign="top" align="left" width="15%"> | 
 | 				<p align="left"> | 
 | 					<b>Remote Management for OSGi Runtimes and Eclipse</b> | 
 | 				</p> | 
 | 			</td> | 
 | 			<td valign="top" width="85%"><p>At the <a href="https://github.com/ECF">ECF Github organization</a>, we've created OSGi Remote Services allow remote monitoring and management | 
 | 			of any OSGi container (e.g. Eclipse, Equinox, Karaf, Concierge, others).   The repository containing the service APIs, implementations, and tooling for Remote Management are  | 
 | 			<a href="https://github.com/ECF/OSGIRemoteManagement">here</a>.  Each management service is declared and implemented in separate bundles, | 
 | 			so that only relevant services may be installed and used in appropriate environments.  For example, if <a href="https://wiki.eclipse.org/EIG:Install_into_Apache_Karaf">Karaf server environments</a> the | 
 | 			OSGi management services would be completely appropriate, and the Eclipse-specific services listed below would not be needed. | 
 | 			 | 
 | 			<ul> | 
 | 			   <li><b>Framework Management Services</b> | 
 | 			      <ul> | 
 | 			         <li> | 
 | 			           <a href="https://github.com/ECF/OSGIRemoteManagement/tree/master/bundles/org.eclipse.ecf.mgmt.framework/src/org/eclipse/ecf/mgmt/framework/IFrameworkManager.java">Framework Manager</a> - Remotely access framework-level information such as framework properties, and get/set start levels. | 
 | 			         </li> | 
 | 			      	 <li> | 
 | 			           <a href="https://github.com/ECF/OSGIRemoteManagement/tree/master/bundles/org.eclipse.ecf.mgmt.framework/src/org/eclipse/ecf/mgmt/framework/IServiceManager.java">Service Manager</a> - Remotely access information about running services. | 
 | 			         </li> | 
 | 			      	 <li> | 
 | 			           <a href="https://github.com/ECF/OSGIRemoteManagement/tree/master/bundles/org.eclipse.ecf.mgmt.framework/src/org/eclipse/ecf/mgmt/framework/IBundleManager.java">Bundle Manager</a> - Remotely access information about bundles in framework, and remotely start/stop bundles. | 
 | 			         </li> | 
 |  | 
 | 			          <li> | 
 | 			           <a href="https://github.com/ECF/OSGIRemoteManagement/tree/master/bundles/org.eclipse.ecf.mgmt.framework/src/org/eclipse/ecf/mgmt/framework/wiring/IWiringManager.java">Wiring Manager</a> - Remotely access information about bundle wiring. | 
 | 			         </li> | 
 | 			          <li> | 
 | 			           <a href="https://github.com/ECF/OSGIRemoteManagement/blob/master/bundles/org.eclipse.ecf.mgmt.application/src/org/eclipse/ecf/mgmt/application/IApplicationManager.java">Application Manager</a> - Remotely access information about OSGi applications.  Also allows remotely starting/stopping applications. | 
 | 			         </li> | 
 | 			          <li> | 
 | 			           <a href="https://github.com/ECF/OSGIRemoteManagement/blob/master/bundles/org.eclipse.ecf.mgmt.scr/src/org/eclipse/ecf/mgmt/scr/ISCRManager.java">Service Component Runtime (SCR) Manager</a> - Remotely access meta-data about SCR/DS components.  Also allows remotely enabling/disabling components. | 
 | 			         </li> | 
 | 			          <li> | 
 | 			           <a href="https://github.com/ECF/OSGIRemoteManagement/blob/master/bundles/org.eclipse.ecf.mgmt.rsa/src/org/eclipse/ecf/mgmt/rsa/IRemoteServiceAdminManager.java">Remote Service Admin Manager</a> - Remotely access meta-data about RSA such as RSA events, and remote service registrations and references.  Also allows remotely exporting, importing, updating, and closing remote services. | 
 | 			         </li> | 
 | 			      </ul> | 
 | 			   </li> | 
 | 			   			      <li><b>ECF Management Services</b> | 
 | 				      <ul> | 
 | 				         <li> | 
 | 				           <a href="https://github.com/ECF/OSGIRemoteManagement/blob/master/bundles/org.eclipse.ecf.mgmt.identity/src/org/eclipse/ecf/mgmt/identity/IIdentityFactoryManager.java">Identity Manager</a> - Remotely access meta-data about ECF Namespaces and IDs, and remotely create/add namespaces and IDs. | 
 | 				         </li> | 
 | 				      	 <li> | 
 | 				           <a href="https://github.com/ECF/OSGIRemoteManagement/blob/master/bundles/org.eclipse.ecf.mgmt.container/src/org/eclipse/ecf/mgmt/container/IContainerFactoryManager.java">Container Manager</a> - Remotely access meta-data about existing and active ECF Containers, and remotely create new containers. | 
 | 				         </li> | 
 | 				      	 <li> | 
 | 				           <a href="https://github.com/ECF/OSGIRemoteManagement/tree/master/bundles/org.eclipse.ecf.mgmt.sharedobject">Shared Object Manager</a> - Remotely access information about existing meta-data about shared object containers and shared objects, and remotely create and delete shared objects. | 
 | 				         </li> | 
 | 				      </ul> | 
 | 				  </li> | 
 | 			    | 
 | 			   <li><b>Eclipse-specific Management Services</b> | 
 | 			      <ul> | 
 | 			      <li><b>P2 Management Services</b> | 
 | 				      <ul> | 
 | 				         <li> | 
 | 				           <a href="https://github.com/ECF/OSGIRemoteManagement/blob/master/bundles/org.eclipse.ecf.mgmt.p2.install/src/org/eclipse/ecf/mgmt/p2/install/IFeatureInstallManager.java">Feature Install Manager</a> - Remotely access feature meta-data and install, update, and install P2 feature groups. | 
 | 				         </li> | 
 | 				      	 <li> | 
 | 				           <a href="https://github.com/ECF/OSGIRemoteManagement/blob/master/bundles/org.eclipse.ecf.mgmt.p2.profile/src/org/eclipse/ecf/mgmt/p2/profile/IProfileManager.java">Profile Manager</a> - Remotely access meta-data about existing and active P2 profiles. | 
 | 				         </li> | 
 | 				      	 <li> | 
 | 				           <a href="https://github.com/ECF/OSGIRemoteManagement/blob/master/bundles/org.eclipse.ecf.mgmt.p2.repository/src/org/eclipse/ecf/mgmt/p2/repository/IRepositoryManager.java">Repository Manager</a> - Remotely access meta-data about repositories and their contents, and remotely add, refresh, and remove repositories. | 
 | 				         </li> | 
 | 				      </ul> | 
 | 				  </li> | 
 | 			      </ul> | 
 | 			   </li>   | 
 | 			</ul> | 
 | 			</p><p></p> | 
 | 			<p> | 
 | 			Each of the above services also has an async proxy service interface (e.g. IServiceManagerAsync), allowing the remote service to be accessed via a non-blocking<a href="https://wiki.eclipse.org/ECF/Asynchronous_Remote_Services">async proxy</a> created automatically for the  | 
 | 			service by ECF's Remote Services implementation.  Host implementations of each of these services are also available in corresponding <a href="https://github.com/ECF/OSGIRemoteManagement/tree/master/bundles/org.eclipse.ecf.mgmt.framework.host">host bundles</a>. | 
 | 			</p> | 
 | 			<p> | 
 | 			Also included in the OSGi Remote Management repository are Eclipse plugins to expose a running Eclipse as a host for remote management, or to use Eclipse views as a consumer to manage a remote host.   | 
 | 			For example, here is a new Eclipse Preferences user interface for exporting a Service Manager and an RSA Manager remote services: | 
 | 			</p> | 
 | 	        <p> | 
 | 			<img src="images/screens/remotemanagementhost.png"> | 
 | 			</p> | 
 | 			<p> | 
 | 			Once exported, then on Eclipse consumers where the service can be discovered (e.g. on same LAN), a Remote OSGi Service view and  | 
 | 			a Remote RSA Manager views may be displayed, showing the remote host's currently Exported remote services (above) and the remote host's | 
 | 			currently running OSGi services. | 
 | 			</p> | 
 | 	        <p> | 
 | 			<img src="images/screens/remotemanagementconsumer.png"> | 
 | 			</p> | 
 | 			<p> | 
 | 			A P2 Repo containing the Remote Management API, Eclipse Remote Management Host and Eclipse Remote Management Consumer  | 
 | 			along with the Remote OSGi Services, | 
 | 			and Remote RSA Manager views shown above can be found  <a href="https://github.com/ECF/OSGIRemoteManagement/tree/master/builds">here</a>.   | 
 | 			The P2 Repo containing the 5 Remote Management Features can be accessed directly or via the zip. | 
 | 			</p> | 
 | 			</td> | 
 | 		</tr> | 
 | 	 | 
 | 			 <tr> | 
 | 			<td valign="top" align="left" width="15%"> | 
 | 				<p align="left"> | 
 | 					<b>Enhanced Remote Services/Remote Service Admin Tooling</b> | 
 | 				</p> | 
 | 			</td> | 
 | 			<td valign="top" width="85%"><p>In <a | 
 | 					href="NewAndNoteworthy_3.10.0.html">ECF 3.10.0/Mars a Remote Services Perspective</a> was introduced.   This perspective included | 
 | 					an Endpoint Discovery View allowing endpoints to be discovered (via network discovery and/or xml/EDEF-file-based discovery), examined, | 
 | 					and imported for use as a remote service.    | 
 | 			<p> | 
 | 			<p> | 
 | 			In this release, there's a new Remote Service Admin (RSA) manager view.  This view presents the Exported Services and Imported Endpoints  | 
 | 			for the RSA running within Eclipse, allowing the programmer to <a href="http://wiki.eclipse.org/Remote_Services_Admin">examine and manipulate exported services and imported endpoints</a>.   | 
 | 			This tooling may be used to test and debug ECF Remote Services by monitoring and managing the remote services export, discovery, and import. | 
 | 			<p> | 
 | 			<p> | 
 | 			For example, here is a screenshot showing an endpoint that has been exported and published for  | 
 | 			by a remote   | 
 | 			host (e.g. by a <a href="http://wiki.eclipse.org/EIG:Install_Timeline_Example_into_Apache_Karaf">Karaf-based host</a>), | 
 | 			and then <a href="http://wiki.eclipse.org/Discovery_Providers">discovered via the Zeroconf protocol</a> (presented | 
 | 			in the Endpoint Discovery View)<p> | 
 | 			<p> | 
 | 			<img src="images/screens/remoteserviceperspective.3.12.1.png"> | 
 | 			</p> | 
 | 			The user can select this Discovered Endpoint, open the context menu, and select the 'Import Remote Service' menu. | 
 | 			The selected Endpoint will then be imported, and the Imported Endpoint will appear in the RSA Manager view. | 
 | 			<p> | 
 | 			<p> | 
 | 			<img src="images/screens/remoteserviceperspective.3.12.2.png"> | 
 | 			</p> | 
 | 			<p> | 
 | 			Note that the imported endpoint (the remote service proxy) is also presented in the OSGi Services View, and the properties | 
 | 			associated with the selected mported endpoint are presented in the properties view.<p> | 
 | 			<p> | 
 | 			The Imported Endpoints presented in the RSA Manager view can be Unimported (again via context menu).  As well, | 
 | 			if remote service hosts are exported, they will appear under the Exported Services group in the RSA Manager, and | 
 | 			can also be unexported via the RSA Manager context menu. | 
 | 			</p> | 
 | 			</td> | 
 | 		</tr> | 
 | 	 | 
 | 				 <tr> | 
 | 			<td valign="top" align="left" width="15%"> | 
 | 				<p align="left"> | 
 | 					<b>New Distribution Providers and Distribution Provider documentation</b> | 
 | 				</p> | 
 | 			</td> | 
 | 			<td valign="top" width="85%"><p>Using the remote services distribution provider API above, several new  | 
 | 			distribution providers have been created: | 
 | 			<ul> | 
 | 			<li><a href="https://github.com/ECF/JaxRSProviders">Jax-RS Providers (Jersey, CXF, Resteasy)</a></li> | 
 | 			<li><a href="https://github.com/ECF/HazelcastProvider">Hazelcast</a></li> | 
 | 			<li><a href="https://github.com/ECF/Mqtt-Provider">MQTT</a></li> | 
 | 			</ul> | 
 | 			</p> | 
 | 			<p><a href="https://wiki.eclipse.org/Distribution_Providers">Detailed documentation of existing distribution providers</a> | 
 | 			</td> | 
 | 		</tr> | 
 | 		 | 
 | 		 | 
 | </table>  | 
 |   | 
 | </body>  | 
 | </html>  |