Components are not services, it's a completely different model.
Yes, you can get into conflicts between the different enhancement
workers. Most enhancement workers are concerned with just a single
property (a method or pair of methods). There's some ability to let
multiple workers assemble a single method (they're called "incomplete
methods") but there's a lot of constraints, such as always invoking
the super implementation (if it exists) first.
On 8/9/05, Markus Joschko <[EMAIL PROTECTED]> wrote:
> I played around with the enhancementworkers and I can see one
> possibility to modify e.g the renderBody method more or less proxy
> like: using the addMethod method from the EnhancementOperation class
> to add a renderBody method to the subclass with a body like this:
>
> System.out.println("start");
> super.renderBody($$);
> System.out.println("end");
>
> This will work for the moment. But it's not very cooperative. What
> happens when a second enhancementworker also wants to modify the
> renderBody method? I think that's a last one wins situation or?
> Unless there is some javassist magic I don't know about, I think it is
> not possible to add a proxy behaviour to the components.
> Is there another way? I can't see a service point where I could add a
> logging interceptor to the components.
>
> thanks,
> Markus
>
>
>
>
>
> On 8/9/05, Markus Joschko <[EMAIL PROTECTED]> wrote:
> > OK, I had a look at the ComponentConstructorImpl and the EnhancementWorkers.
> > Is this the right place to go? Should I make an enhancementworker out
> > of the logging interceptor?
> > Is it possible to add a proxy with an enhancementworker (don't think
> > so as they are chained) or do I have to add the logging lines to the
> > renderBody method (as e.g. seen in EnhancementOperationImpl)?
> > But then I wonder how to add a line at the beginning and a line at the
> > end of the method?
> > Any help?
> > Thanks,
> > Markus
> >
> > On 8/8/05, Markus Joschko <[EMAIL PROTECTED]> wrote:
> > > I never wanted to question the decision to use hivemind. For me it's
> > > always fun to learn new concepts. The only problem is to get started
> > > if you have a usecase in mind and no time to learn from the basics.
> > > So may be you can give me the starting point, how to handle the
> > > enhancer (just where to look to grasp the concepts)?
> > >
> > > Thanks,
> > > Markus
> > >
> > > On 8/8/05, Howard Lewis Ship <[EMAIL PROTECTED]> wrote:
> > > > People keep asking me "why HiveMind? why not Spring?" It's because of
> > > > stuff like this ... HiveMind provides a particular kind of flexibility
> > > > and late binding that Spring simply can't express. Spring's focus is
> > > > a simple IoC container used to build applications. HiveMind is a more
> > > > complex IoC container used to build frameworks.
> > > >
> > > > On 8/8/05, Markus Joschko <[EMAIL PROTECTED]> wrote:
> > > > > Oh, sorry, yes thats complete nonsense. I meant logging interceptor.
> > > > > But even this is nonsense. I just had the logging interceptor example
> > > > > from hivemind and the IComponent interface open in browser and IDE and
> > > > > came out with this example ;-)
> > > > >
> > > > > Maybe you can give me a starting point how to add or where to find the
> > > > > enhancer.
> > > > > Coming from springland I'm a little bit helpless currently....
> > > > >
> > > > > But nice to know that this flexibility is given in the framework.
> > > > >
> > > > >
> > > > > On 8/8/05, Howard Lewis Ship <[EMAIL PROTECTED]> wrote:
> > > > > > Every page and component class is run through the enhancer, so if
> > > > > > you
> > > > > > wanted that behaviour, you could add it quite easily.
> > > > > >
> > > > > > Did you mean "login interceptor" around renderBody()? That seems
> > > > > > very, very odd.
> > > > > >
> > > > > > I *could* see adding PageValidationListener to your pages, with an
> > > > > > implementation that, say, checked against meta data to determine if
> > > > > > access to a page should be allowed. That's reasonable.
> > > > > >
> > > > > > On 8/8/05, Markus Joschko <[EMAIL PROTECTED]> wrote:
> > > > > > > Hi,
> > > > > > > I'm just wondering if it's possible for an external library to
> > > > > > > front
> > > > > > > all components with a proxy by configuration?
> > > > > > >
> > > > > > > I saw some hivemind.xml which have promising names like e.g.
> > > > > > > tapestry.enhance.xml
> > > > > > > E.g. would it be possible to add a loginterceptor around
> > > > > > > IComponent.renderBody calls?
> > > > > > >
> > > > > > > Sorry if this question is totally stupid but I'm still fighting to
> > > > > > > understand the way hivemind works and tapestry is internally
> > > > > > > wired.
> > > > > > >
> > > > > > > Thanks,
> > > > > > > Markus
> > > > > > >
> > > > > > > ---------------------------------------------------------------------
> > > > > > > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > > > > > > For additional commands, e-mail: [EMAIL PROTECTED]
> > > > > > >
> > > > > > >
> > > > > >
> > > > > >
> > > > > > --
> > > > > > Howard M. Lewis Ship
> > > > > > Independent J2EE / Open-Source Java Consultant
> > > > > > Creator, Jakarta Tapestry
> > > > > > Creator, Jakarta HiveMind
> > > > > >
> > > > > > Professional Tapestry training, mentoring, support
> > > > > > and project work. http://howardlewisship.com
> > > > > >
> > > > > > ---------------------------------------------------------------------
> > > > > > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > > > > > For additional commands, e-mail: [EMAIL PROTECTED]
> > > > > >
> > > > > >
> > > > >
> > > > > ---------------------------------------------------------------------
> > > > > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > > > > For additional commands, e-mail: [EMAIL PROTECTED]
> > > > >
> > > > >
> > > >
> > > >
> > > > --
> > > > Howard M. Lewis Ship
> > > > Independent J2EE / Open-Source Java Consultant
> > > > Creator, Jakarta Tapestry
> > > > Creator, Jakarta HiveMind
> > > >
> > > > Professional Tapestry training, mentoring, support
> > > > and project work. http://howardlewisship.com
> > > >
> > > > ---------------------------------------------------------------------
> > > > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > > > For additional commands, e-mail: [EMAIL PROTECTED]
> > > >
> > > >
> > >
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>
--
Howard M. Lewis Ship
Independent J2EE / Open-Source Java Consultant
Creator, Jakarta Tapestry
Creator, Jakarta HiveMind
Professional Tapestry training, mentoring, support
and project work. http://howardlewisship.com
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]