Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristoph Läubrich2020-10-27 18:44:43 +0000
committerChristoph Läubrich2020-10-27 18:44:43 +0000
commitc48b50276ba3b0b68dc3d8d67c10ad5fc7ca2f3f (patch)
tree25bb27c624e06c2cf329c6bf15644930b21118cb
parent16105c3e0aa68ca9ee59c80704bbbffebf1a2feb (diff)
downloadnews-c48b50276ba3b0b68dc3d8d67c10ad5fc7ca2f3f.tar.gz
news-c48b50276ba3b0b68dc3d8d67c10ad5fc7ca2f3f.tar.xz
news-c48b50276ba3b0b68dc3d8d67c10ad5fc7ca2f3f.zip
Bug 567344 - Support registration of IAdapterFactory as OSGi Service
N&N entry added Change-Id: I8afea89c64d6fbc889bda607574a9d63e0aaf15e Signed-off-by: Christoph Läubrich <laeubi@laeubi-soft.de>
-rw-r--r--4.18/platform_isv.html11
1 files changed, 10 insertions, 1 deletions
diff --git a/4.18/platform_isv.html b/4.18/platform_isv.html
index 68cae09f..bcba9217 100644
--- a/4.18/platform_isv.html
+++ b/4.18/platform_isv.html
@@ -55,7 +55,16 @@ ul {padding-left: 13px;}
scaling factors beside the 150/200% currently supported.</p>
</td>
</tr>
-
+ <tr id="dialog-adapterfactory-as-service"> <!-- https://bugs.eclipse.org/bugs/show_bug.cgi?id=567344 -->
+ <td class="title"><a href="#dialog-adapterfactory-as-service">IAdapterFactory as Service</a></td>
+ <td class="content">
+ <p>Previously <code>IAdapterFactory</code> has to be registered via plugin.xml, this has the disadvantage that one has to keep code with xml in sync (e.g. the adapter classes has to be provided in xml and in the IAdapterFactory.getAdapterList()). Also the code is bound to the static Extension Point Model that means that it has to gather all necessary dependencies from external (static) sources as there is no injection mechanism available.</p>
+ <p>From now on it is possible to also register an OSGi Service for this purpose and thus can take advantage of Declarative Services for example or even specialized construction and registration with plain OSGi mechanism.
+ The service must only supply a string property (or even multiple ones) with <code>IAdapterFactory.SERVICE_PROPERTY_ADAPTABLE_CLASS</code> that promotes the types that can be adapted.
+ The code then activates the service upon first request of the adaptation of adaptable class and calls IAdapterFactory.getAdapterList() to find out the adapter classes.<br>
+ If even more laziness is required a list of adapter classes can be declared via the <code>IAdapterFactory.SERVICE_PROPERTY_ADAPTER_NAMES</code> service-property and the activation of the service will even be further delayed to the point where an actual adaptation of adaptable class for one of the static available types is requested.</p>
+ </td>
+ </tr>
<tr id="dialog-settings-provider"> <!-- https://bugs.eclipse.org/bugs/show_bug.cgi?id=549929 -->
<td class="title"><a href="#dialog-settings-provider">IDialogSettingsProvider</a></td>
<td class="content">

Back to the top