aries-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Guillaume Nodet (JIRA)" <>
Subject [jira] Commented: (ARIES-28) Allow extenders of blueprint to function without requiring specific declaration in deployed blueprint components xml.
Date Wed, 21 Oct 2009 12:20:59 GMT


Guillaume Nodet commented on ARIES-28:

Let me rephrase my thoughts a bit.

In a number of places, the spec  makes room for extensions.  Such extensions have to be explicitely
enabled by the user in order to leverage those.  This includes custom namespaces.

What I really would not want, is to have a blueprint bundle behave differently depending if
a BeanProcessor has been registered in the OSGi registry or not.   I want to user to be aware
of any processing by enabling it explicitely somehow.  This ensure that users don't rely on
anything non portable without being aware of that.  That's currently the case for all extensions
in our blueprint implementation, as they are all enabled by using a custom namespace somehow.

That said, I think it's not sufficient either.  I do agree we could make use of bean processors
registered in the OSGi registry, but I think the user should enable a bean processor somehow
explicitely.   And in doing so, I'm not quite sure if we really need to have those processors
registered in the OSGi registry anymore.   For example, if you have a custom namespace handler
that defines a bean processor which should be applied, you'd have to enable that using for
example an attribute on the blueprint element:

<blueprint tx:use="true" xmlns:tx="xxx"> ...

When the custom namespace handler for the tx prefix is called to parse the "tx:use" attribute,
it could register the bean processor in the blueprint context.

So, could you give a bit more details ?

> Allow extenders of blueprint to function without requiring specific declaration in deployed
blueprint components xml.
> ---------------------------------------------------------------------------------------------------------------------
>                 Key: ARIES-28
>                 URL:
>             Project: Aries
>          Issue Type: Improvement
>          Components: Blueprint
>            Reporter: Andrew Osborne
> Problem:
> BeanProcessors (in conjunction with NamespaceHandlers) are useful to supplement or extend
Blueprint processing. However, unlike NamespaceHandlers, BeanProcessors must currently be
declared in the blueprint xml itself. This would mean that where Blueprint is extended through
the BeanProcessor approach, that every blueprint xml would require updating to make use of
the new function.
> Proposal:
> Like Namespace Handlers, to allow BeanProcessors to be declared in the ServiceRegistry,
as well as in the blueprint xml. 

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message