Thank you for the time you guys have already spent on this, but if you have any other comments I would really appreciate them. Is there just no way to do this given the current tapestry annotation class structure?
On Thu, 2006-05-25 at 10:51 -0400, Dan Adams wrote: > Well, I've been digging around in all the annotation source for 4.0.1 > and I seem to be stuck. It seems like there isn't any way to get to the > javassist methods or to do what I'm trying to do. I've looked at the > hivemind config and how to add the annotation. My only problem is how to > actually get the annotation to do what it needs to do. Any suggestions > on how to approach the problems I mentioned earlier? I also attached the > source which is pretty short. > > On Thu, 2006-05-25 at 10:42 -0400, Jesse Kuhnert wrote: > > Ah well...The annotations stuff in tapestry is pretty easy to follow (just > > added a lot of logic in this area myself). It would be best for you to refer > > to the tapestry annotations source, but the biggest thing is to also > > remember that annotations are done almost the same way that the > > "enhancement" stuff is done - with a hivemind chained pipeline > > configuration. There is an annotations hivemind configuration section that > > configures and sets up all of them as well. > > > > On 5/25/06, Dan Adams <[EMAIL PROTECTED]> wrote: > > > > > > You are right about this. I hadn't realized you could do that with > > > parameters. But that doesn't really apply to my problem since @Once > > > won't normally be used on parameters. It came up because in some > > > situations you have a method that does a hibernate query and returns a > > > list of objects and you'd like to be able to easily refer to that > > > property more than once in the template. A common situation is checking > > > the list size in an @If before doing something with it. > > > > > > On Thu, 2006-05-25 at 10:28 -0400, Jesse Kuhnert wrote: > > > > Doesn't tapestry support marking a parameter as cache-able already? > > > > > > > > On 5/25/06, James Carman <[EMAIL PROTECTED]> wrote: > > > > > > > > > > Have you looked into AspectJ? > > > > > > > > > > -----Original Message----- > > > > > From: Dan Adams [mailto:[EMAIL PROTECTED] > > > > > Sent: Thursday, May 25, 2006 10:00 AM > > > > > To: Tapestry users > > > > > Subject: RE: Help in writing a custom annotation > > > > > > > > > > Okay, my annotation is called @Once and if put on accessor will make > > > > > sure that the method is only executed once and then the return value > > > is > > > > > cached. Any further calls to the method will just return the saved > > > > > value. I've got pretty far but I think I'm stuck as I want to do > > > > > something that I could do with javassist but I'm not sure how to do > > > > > within the tapestry enhancement classes. I've attached what I have so > > > > > far and I would greatly appreciated it if someone could give me some > > > > > suggestions on what to do. My big problem is: > > > > > > > > > > - I could add code at the beginning and end of the method with > > > javassit > > > > > but can't see a way to do that > > > > > - Perhaps I could somehow rename the old method to something else and > > > > > put in a new method that calls it? > > > > > > > > > > Thanks a lot. > > > > > > > > > > On Thu, 2006-05-25 at 07:11 -0400, James Carman wrote: > > > > > > I'd look at the one that injects messages, or beans, or even the one > > > > > that > > > > > I > > > > > > wrote for "autowiring" (available in SVN on the 4.1 branch). > > > > > > > > > > > > -----Original Message----- > > > > > > From: Dan Adams [mailto:[EMAIL PROTECTED] > > > > > > Sent: Wednesday, May 24, 2006 10:44 PM > > > > > > To: Tapestry users > > > > > > Subject: Help in writing a custom annotation > > > > > > > > > > > > I want to write an annotation that will intercept a method and add a > > > > > > property to the class. I've started digging around in some of the > > > > > > annotation sources but it's going pretty slow. Can someone point me > > > at > > > > > > the right place to look for where to start? > > > > > > > > > > > -- > > > > > Dan Adams > > > > > Software Engineer > > > > > Interactive Factory > > > > > 617.235.5857 > > > > > > > > > > > > > > > > > > > > --------------------------------------------------------------------- > > > > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > > > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > > > > > > > > > > > > > > > -- > > > Dan Adams > > > Software Engineer > > > Interactive Factory > > > 617.235.5857 > > > > > > > > > --------------------------------------------------------------------- > > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > > > > -- Dan Adams Software Engineer Interactive Factory 617.235.5857 --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]