You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tuscany.apache.org by ant elder <an...@gmail.com> on 2009/04/22 09:42:08 UTC

Merging extension *-policy modules?

Might as well explore this one too at the same time as the *-xml module
discussion ;)

What are the reasons for having the -policy modules separate from the
-runtime modules?

There aren't so many of these, just binding-jms-policy and
binding-ws-axis2-policy, i'd like to merge those into the associated runtime
modules if there aren't reasons for having the separate.

   ...ant

Re: Merging extension *-policy modules?

Posted by ant elder <an...@apache.org>.
On Wed, Apr 22, 2009 at 10:54 AM, Simon Laws <si...@googlemail.com>wrote:

> However if we, as a group, think having less modules in
> the build is more important then I'll concede the point. I would like
> to keep it separate for the moment while we tidy the binding though.
>
> Simon
>

There is an alternative, perhaps we should bring up the aggregate jars from
1.x into the 2.x code as a complement to the current 2.x module break down.
That way those who like making packages as modules can go wild and those who
like fewer jars can use the same trunk code just repackaged.

   ...ant

Re: Merging extension *-policy modules?

Posted by ant elder <an...@gmail.com>.
On Wed, Apr 22, 2009 at 4:36 PM, Raymond Feng <en...@gmail.com> wrote:

> example, if I just want to expose a web service from a java component, why
> do I have to take the whole WS-*  stack.
>

Thats absolutely correct and the really good reason for have things in
separate modules IMHO. Notice that its something from a *users*
perspective, there's also a Tuscany developer perspective where using
separate modules to help avoiding code tangles can useful but having
that come out and be exposed to users doesn't make their life
better...And thats why so many other projects then aggregate modules
together into more functional user friendly jars.

    ...ant

Re: Merging extension *-policy modules?

Posted by Raymond Feng <en...@gmail.com>.
+1 on Simon's view. IMO, policies should be optional as some composite 
applications don't care about them at all or only need a subset. For 
example, if I just want to expose a web service from a java component, why 
do I have to take the whole WS-*  stack.

I also agree that our binding-ws-* story is a bit messy at this point. 
Taking this opportunity to tidy it up is a good idea. Merging the coupled 
modules into one probably hides the problems for now and it will become much 
painful if we want to decouple them later.

Thanks,
Raymond
--------------------------------------------------
From: "Simon Laws" <si...@googlemail.com>
Sent: Wednesday, April 22, 2009 2:54 AM
To: <de...@tuscany.apache.org>; <an...@apache.org>
Subject: Re: Merging extension *-policy modules?

>>
>> Removing binding-ws-axis2-policy from the build of binding-ws-axis build
>> gives *lots* of compile errors as the runtime code directly uses classes 
>> in
>> the policy module. We could change all those to be proper plugable 
>> extension
>> points but it seems unnecessary to me as i can't image anyone ever 
>> wanting
>> to plug in alternative implementations. Could we at least merge that code
>> thats not pluggable right now into the one module and when/if a pluggable
>> extension point is ever made then move it out?
>>
>>    ...ant
>>
>>
>
> Looking at it I agree that fixes need to be made to remove the
> dependencies but we should really treat this as an opportunity to tidy
> up the binding-ws-axis2. Most of the policy and handler
> difficulties/dependencies could be removed if we implemented the
> binding wire for binding-ws-axis2. At the moment it's a mix of
> different approaches.
>
> I think that having the policies separated helps us make this change
> and enforces the notion of them being pluggable. To put it another way
> if I were to do the tidying it would help me. Can't speak for anyone
> else. That's another reason I'm holding onto that thought.
>
> Personally I still like the idea of being able to replace the policies
> independently. However if we, as a group, think having less modules in
> the build is more important then I'll concede the point. I would like
> to keep it separate for the moment while we tidy the binding though.
>
> Simon 


Re: Merging extension *-policy modules?

Posted by Simon Laws <si...@googlemail.com>.
>
> Removing binding-ws-axis2-policy from the build of binding-ws-axis build
> gives *lots* of compile errors as the runtime code directly uses classes in
> the policy module. We could change all those to be proper plugable extension
> points but it seems unnecessary to me as i can't image anyone ever wanting
> to plug in alternative implementations. Could we at least merge that code
> thats not pluggable right now into the one module and when/if a pluggable
> extension point is ever made then move it out?
>
>    ...ant
>
>

Looking at it I agree that fixes need to be made to remove the
dependencies but we should really treat this as an opportunity to tidy
up the binding-ws-axis2. Most of the policy and handler
difficulties/dependencies could be removed if we implemented the
binding wire for binding-ws-axis2. At the moment it's a mix of
different approaches.

I think that having the policies separated helps us make this change
and enforces the notion of them being pluggable. To put it another way
if I were to do the tidying it would help me. Can't speak for anyone
else. That's another reason I'm holding onto that thought.

Personally I still like the idea of being able to replace the policies
independently. However if we, as a group, think having less modules in
the build is more important then I'll concede the point. I would like
to keep it separate for the moment while we tidy the binding though.

Simon

Re: Merging extension *-policy modules?

Posted by ant elder <an...@apache.org>.
On Wed, Apr 22, 2009 at 9:30 AM, Simon Laws <si...@googlemail.com>wrote:

> > these aren't pluggable modules as the -runtime module directly news up
> > classes from the -policy module so i can't see any reasons for keeping
> the
> > code in a separate module now.
> >
> >    ...ant
> >
>
> They should be pluggable and if there are things there that are
> explicitly created by the runtime then that's a mistake and needs
> fixing.
>
> Simon
>

Removing binding-ws-axis2-policy from the build of binding-ws-axis build
gives *lots* of compile errors as the runtime code directly uses classes in
the policy module. We could change all those to be proper plugable extension
points but it seems unnecessary to me as i can't image anyone ever wanting
to plug in alternative implementations. Could we at least merge that code
thats not pluggable right now into the one module and when/if a pluggable
extension point is ever made then move it out?

   ...ant

Re: Merging extension *-policy modules?

Posted by Simon Laws <si...@googlemail.com>.
> these aren't pluggable modules as the -runtime module directly news up
> classes from the -policy module so i can't see any reasons for keeping the
> code in a separate module now.
>
>    ...ant
>

They should be pluggable and if there are things there that are
explicitly created by the runtime then that's a mistake and needs
fixing.

Simon

Re: Merging extension *-policy modules?

Posted by ant elder <an...@apache.org>.
On Wed, Apr 22, 2009 at 8:57 AM, Simon Laws <si...@googlemail.com>wrote:

> snip...
>
> >
> > TUSCANY-2167 was caused by the base policy modules including WS binding
> > policy and dragging in some WS dependencies wasn't it? So thats fixed now
> > and isn't any issue with merging binding-ws-axis2-policy in the
> > binding-ws-axis2 module is it?
> >
> >    ...ant
> >
> >
>
> I made most of these changes and, at the time, the reason was two fold.
>
> - relate binding specific polices to those bindings. Hence
> binding-ws-axis2-policy which has axis2 specific code in but used to
> be something like policy-ws which wasn't particularly obvious.
> - allow policy jars to be deployed independently of the binding (or
> implementation) runtime jars which they affect. In this way a user who
> wants to change the default behaviour has a clear place to go to make
> the change rather than messing about inside the runtime jar.
>
> Simon
>

You said "...at the time..." does that mean things have changed and now we
could merge these at this time? I think these ones could be just packages in
the runtime module and that would keep things separate and obvious enough,
these aren't pluggable modules as the -runtime module directly news up
classes from the -policy module so i can't see any reasons for keeping the
code in a separate module now.

   ...ant

Re: Merging extension *-policy modules?

Posted by Simon Laws <si...@googlemail.com>.
snip...

>
> TUSCANY-2167 was caused by the base policy modules including WS binding
> policy and dragging in some WS dependencies wasn't it? So thats fixed now
> and isn't any issue with merging binding-ws-axis2-policy in the
> binding-ws-axis2 module is it?
>
>    ...ant
>
>

I made most of these changes and, at the time, the reason was two fold.

- relate binding specific polices to those bindings. Hence
binding-ws-axis2-policy which has axis2 specific code in but used to
be something like policy-ws which wasn't particularly obvious.
- allow policy jars to be deployed independently of the binding (or
implementation) runtime jars which they affect. In this way a user who
wants to change the default behaviour has a clear place to go to make
the change rather than messing about inside the runtime jar.

Simon

Re: Merging extension *-policy modules?

Posted by ant elder <an...@apache.org>.
On Wed, Apr 22, 2009 at 8:59 AM, Luciano Resende <lu...@gmail.com>wrote:

> On Wed, Apr 22, 2009 at 12:51 AM, ant elder <an...@apache.org> wrote:
> >
> >
> > TUSCANY-2167 was caused by the base policy modules including WS binding
> > policy and dragging in some WS dependencies wasn't it? So thats fixed now
> > and isn't any issue with merging binding-ws-axis2-policy in the
> > binding-ws-axis2 module is it?
> >
>
> You might be right, and you are probably more familiar with the JMS
> and WS bindings to make the decision.... just consider the issues we
> have been discussing on other threads... if it applies here...
>
>
Which issues specifically apply here? I'm not being pedantic just trying to
avoid having changes blocked out of fear of change. The 2.x codestream is
our opportunity to make things better, sure there are good reasons for the
way some things are but there are also no good reasons for the way some
other things are.

   ...ant

Re: Merging extension *-policy modules?

Posted by Luciano Resende <lu...@gmail.com>.
On Wed, Apr 22, 2009 at 12:51 AM, ant elder <an...@apache.org> wrote:
>
>
> TUSCANY-2167 was caused by the base policy modules including WS binding
> policy and dragging in some WS dependencies wasn't it? So thats fixed now
> and isn't any issue with merging binding-ws-axis2-policy in the
> binding-ws-axis2 module is it?
>

You might be right, and you are probably more familiar with the JMS
and WS bindings to make the decision.... just consider the issues we
have been discussing on other threads... if it applies here...


-- 
Luciano Resende
Apache Tuscany, Apache PhotArk
http://people.apache.org/~lresende
http://lresende.blogspot.com/

Re: Merging extension *-policy modules?

Posted by ant elder <an...@apache.org>.
On Wed, Apr 22, 2009 at 8:47 AM, Luciano Resende <lu...@gmail.com>wrote:

> On Wed, Apr 22, 2009 at 12:42 AM, ant elder <an...@gmail.com> wrote:
> > Might as well explore this one too at the same time as the *-xml module
> > discussion ;)
> >
> > What are the reasons for having the -policy modules separate from the
> > -runtime modules?
> >
> > There aren't so many of these, just binding-jms-policy and
> > binding-ws-axis2-policy, i'd like to merge those into the associated
> runtime
> > modules if there aren't reasons for having the separate.
> >
>
> TUSCANY-2167 might give some hints on issues we had in the past.
>
> [1] https://issues.apache.org/jira/browse/TUSCANY-2167
>
>
TUSCANY-2167 was caused by the base policy modules including WS binding
policy and dragging in some WS dependencies wasn't it? So thats fixed now
and isn't any issue with merging binding-ws-axis2-policy in the
binding-ws-axis2 module is it?

   ...ant

Re: Merging extension *-policy modules?

Posted by Luciano Resende <lu...@gmail.com>.
On Wed, Apr 22, 2009 at 12:42 AM, ant elder <an...@gmail.com> wrote:
> Might as well explore this one too at the same time as the *-xml module
> discussion ;)
>
> What are the reasons for having the -policy modules separate from the
> -runtime modules?
>
> There aren't so many of these, just binding-jms-policy and
> binding-ws-axis2-policy, i'd like to merge those into the associated runtime
> modules if there aren't reasons for having the separate.
>

TUSCANY-2167 might give some hints on issues we had in the past.

[1] https://issues.apache.org/jira/browse/TUSCANY-2167


-- 
Luciano Resende
Apache Tuscany, Apache PhotArk
http://people.apache.org/~lresende
http://lresende.blogspot.com/