Lookup
From APIDesign
Line 1: | Line 1: | ||
- | [[Lookup]] is an acient library that aligns [[Injection|component injection]] with adaptable pattern. It is baded on long time [[JDK]] standard for registering instances of services in [[JAR]] files. | + | [[Lookup]] is an acient library that aligns [[Injection|component injection]] with adaptable pattern. It is baded on long time [[JDK]] standard for registering instances of services in [[JAR]] files which has been formalized as [[ServiceLoader]] in [[JDK]] 6. [[Lookup]] extends this area and allows ''local pools'' of objects that can be queries for certain capability. [[Lookup]] is also suited for dynamic environment as it supports notification of changes. [[Lookup]] bridges the classical [[Injection|injection]] pattern with local adaptable pattern. |
* See [http://hudson.apidesign.org/hudson/job/lookup/org.apidesign$lookup/javadoc/ javadoc] | * See [http://hudson.apidesign.org/hudson/job/lookup/org.apidesign$lookup/javadoc/ javadoc] |
Revision as of 05:18, 21 April 2009
Lookup is an acient library that aligns component injection with adaptable pattern. It is baded on long time JDK standard for registering instances of services in JAR files which has been formalized as ServiceLoader in JDK 6. Lookup extends this area and allows local pools of objects that can be queries for certain capability. Lookup is also suited for dynamic environment as it supports notification of changes. Lookup bridges the classical injection pattern with local adaptable pattern.
- See javadoc
- Download page
The basic idea, in its ServiceLoader incarnation is that it is enough to compose an application from various JAR files and let these JAR files communicate. This is achieved by well-known location, META-INF/services/etc. that is read from all available libraries JARs on the classpath. This simplifies deployment of the application. It is enough to make the right JARs available in the system and all the pieces may start to work together by mutually discovering themselves.