Sunday, May 17, 2009

Impala 1.0 M6 released

I am pleased to announce the 1.0M6 release of Impala. The 1.0M6 is an important release for Impala, as it is the last pre-1.0 final release to include major enhancements and API changes. I am now pretty comfortable that the APIs and abstractions are correct and suitable for the 1.0 final release, but as always welcome any feedback from users on this.

The 1.0M6 release includes a major reworking of the shared service registry and proxying mechanisms, a new Spring namespace for importing and exporting services, and enhancements to the dynamic reloading of modules.

The headline improvements include the following.
  • Configuration of Impala services is now much simpler, as a new Spring 'service' namespace has been provided for easily exporting and importing services.
  • Service export and import can now be done not only by name but also by type or by custom attributes, the latter using a model similar to that used in OSGi.
  • Impala's mechanism for proxying services obtained from the service registry has improved, and is now more easily configurable.
  • It is now possible to export and import Impala services without having to specify an interface - proxying of the service implementation class is now also supported.
  • Impala now supports exporting and importing services based on Spring beans which are not singletons or not created using non-singleton Factory beans. It does this in a way that is totally transparent to users of the services, effectively allowing clients to treat all beans as singletons.
  • Impala now provides implementations of java.util.List and java.util.Map, dynamically backed by beans imported from the service registry.
The 1.0M6 release also introduces a number of improvements to make dynamic module reloading more robust, particularly when using the module 'auto-reload' feature, as well as other minor enhancements and bug fixes.

For more information on this release see

No comments: