1.1 --- a/openide.util/src/org/openide/util/doc-files/api.html Thu Oct 13 12:48:51 2005 +0000
1.2 +++ b/openide.util/src/org/openide/util/doc-files/api.html Wed Oct 19 06:36:10 2005 +0000
1.3 @@ -115,29 +115,21 @@
1.4
1.5 <div class="nonnormative">
1.6
1.7 -While service types are a useful abstraction for things like script types,
1.8 -they are not flexible enough to handle all of the
1.9 -IDE's needs for registering and finding services. For one thing, the
1.10 -IDE is moving toward installation of services via XML layer rather
1.11 -than manifest, and service types are normally defined via manifest.
1.12 -Layer-based installation is more flexible in many ways. Also, many
1.13 -things need to be registered that practically cannot be subclasses of
1.14 -<code>ServiceType</code>, and there is no particular reason to make
1.15 -this restriction; similarly, <code>ServiceType</code> registration is
1.16 -oriented towards registering service classes, whereas in many cases it
1.17 -is necessary to use one implementing class with many instances.
1.18 -Finally, a more generic registration system was desired in order to
1.19 -simplify the APIs and make it easier to implement some APIs
1.20 -independently of the others.
1.21 +The whole NetBeans platform is moving toward
1.22 +installation of services via XML layer or <code>META-INF/services</code>.
1.23 +Layer-based installation is more flexible in many ways.
1.24
1.25 -<p>These considerations gave rise to the <em>lookup</em> system first
1.26 +<p>The need for having a standard interface to access such
1.27 +registrations
1.28 +gave rise to the <em>lookup</em> system first
1.29 introduced in NetBeans 3.2 and expanded upon for NetBeans 3.3. The
1.30 center of this API from the client perspective is very simple - you
1.31 can look up a class, and get an instance of that class (or a
1.32 collection of them). The service provider side of it is more complex
1.33 -but useful lookup implementations are already provided in the IDE
1.34 -core; for common cases you can register an object into lookup just by
1.35 -adding one simple file to an XML layer.
1.36 +but useful lookup implementations are already provided in the
1.37 +core system; for common cases you can register an object into lookup just by
1.38 +adding one simple file to an XML layer or <code>META-INF/services/classname</code>
1.39 +in your module JAR file.
1.40
1.41 <p>This section of the Services API will first discuss what
1.42 <em>instances</em> are and how to create them from files, as this is
1.43 @@ -150,9 +142,7 @@
1.44 standard for service provider registration</a>.
1.45 Lookup templates, which separate the
1.46 provision of instances from the provision of categories, will be
1.47 -explained. Finally, a note is made of the compatibility system which
1.48 -ensures that older manifest-installed services (such as service types)
1.49 -are available via lookup transparently.
1.50 +explained.
1.51
1.52 </div>
1.53