Hi glen;

Now I also feel this is a cool feature , but is this a 1.0 requirement
?    ................ :)

Glen Daniels wrote:

> Hi all:
>
> A huge +1 to allowing Modules (and maybe Services) to deploy their own
> Phases.  We can perhaps discuss this on this week's chat, but a quick
> summary from my POV...
>
> * An ExecutionChain is just a list of named Handlers which execute
>   in order.
>
> * A Phase is (should be) just a Handler that happens to a) live
>   at the top level (i.e. not inside another Phase), and b) act as
>   a container for other Handlers.  (also, it has pre and post
>   conditions, but that's not relevant here)
>
> * When you deploy a Phase you're doing almost exactly the same
>   thing you do when you deploy a Handler within a Phase - you're
>   saying "add this named component to the EC, and please follow
>   these placement rules (BEFORE X, AFTER Y, etc)".  As an
>   example, imagine this ExecutionChain:
>
> 1. Handler1
> 2. [PhaseA : Handler2, Handler5 ]
> 3. [PhaseB : Handler3]
> 4. Handler4
>
> Now I deploy a Module which has "PhaseC AFTER PhaseA" and
> "Handler6 IN PhaseC BEFORE Handler99"...
>
> 1. Handler1
> 2. [PhaseA : Handler2, Handler5 ]
> 3. [PhaseC : Handler99 ]
> 4. [PhaseB : Handler3 ]
> 5. Handler4
>
> Doesn't that seem handy?
>
> * If multiple Modules define the same Phase, it's no problem
>   as long as each deployment rule is checked out as the Module
>   is engaged.  For instance, if another Module engaged after
>   the one above had declared "PhaseC BEFORE PhaseB" and another
>   Handler in PhaseC, we'd be fine.  Doing this checking might
>   not be entirely necessary - as a first cut we could simply
>   let the first one to define a Phase (either core Axis2 or
>   a Module) deploy it, and then if we notice a duplicate name
>   later, just ignore it and assume it's ok.
>
> * Doing this is, I think, an important part of the composability
>   puzzle - just like Module authors are allowed to define their
>   own Handlers, they should be able to declare the Phases in
>   which those Handlers do their work, without forcing the Axis2
>   admin to figure out how to deploy the correct Phases before
>   they can even use the Module.
>
> --Glen
>
>

-- 
Thanks,
Deepal
................................................................
~Future is Open~ 


Reply via email to