RE: some questions about the 0.3 / 0.4 codeline
Steve Conover <[email protected]> Thu, 1 May 2003 17:11:36 -0700 (PDT)
| Newsgroups | gmane.comp.java.nanning.devel |
|---|---|
| Message-ID | <[email protected]> |
I've been doing some converting today to MixinAspects (I really like the new config system, very clean). My AspectFactory returns an AspectInstance from the newInstance(class) method. I do an AspectInstance.getProxy() and try to cast it to the interface class I fed into the AspectInstance constructor, but I get a classcastexception. I notice in the code to construct a proxy the only interfaces fed into the Proxy.newProxyInstance are from the mixins. Why isn't the interface class I passed into the AspectInstance constrctor also included? Regards, Steve --- Jon Tirsen <[email protected]> wrote: > Yeah, you should probably try to move away from the > c.t.n.definition-classes. The AspectInstance/MixinInstance has a > similar > API although you'll find it to be more flexible. The main difference > is > that you'll need to create a new AspectInstance for every instance > you > create and then invoke getProxy() to get the proxy for this instance > only. But I guess you've got a factory somewhere where this is done > in a > central place (if not, I suggest you do that :-). > > The new c.t.n.config-stuff is not really ready and a lot of things > will > probably happen there. The main purpose is to have Aspect/J-semantics > in > Nanning where cross-cutting concerns are truly modular, ie. mixins > and > interceptors are tied together into a single aspect. There's a > description about it here: > http://sourceforge.net/mailarchive/forum.php?thread_id=1621907&forum_id= > 12937 > > I'm using it myself and it's very powerful, but it's not very > well-documented and kind of weird sometimes. If you want to use it I > can > answer questions you may have. > > (c.t.n.definition-classes is in fact implemented on top of the > AspectInstance stuff.) > > > -----Original Message----- > > From: [email protected] > [mailto:nanning- > > [email protected]] On Behalf Of Steve Conover > > Sent: Wednesday, April 30, 2003 10:55 PM > > To: nanning-developer > > Subject: [Nanning-developer] some questions about the 0.3 / 0.4 > codeline > > > > Jon, > > > > I'm just integrating the 0.4 codeline into my project, and had a > few > > questions. > > > > My aspects are still working due to this code in > > AspectDefinition.checkObject: > > > > if (target == null) { > > return; > > } > > > > However I still would like to provide a target that doesn't > implement > > the interfaceClass, as we discussed earlier. That's not really > > possible via the AspectDefinition. > > > > I remember you said something about extending MixinInstance (which > I > > notice is final). However I guess I haven't been keeping up with > > changes very well - what are the purposes of these new config > classes > > (Pointcut, Advise, MixinAspect, etc)? > > > > I'm defining these AspectDefinitions, and then building up an > > AspectClass and instanciating that to create my objects. Should I > be > > moving this stuff to MixinXXX? > > > > Regards, > > Steve > > > > > > > > > > ------------------------------------------------------- > > This sf.net email is sponsored by:ThinkGeek > > Welcome to geek heaven. > > http://thinkgeek.com/sf > > _______________________________________________ > > Nanning-developer mailing list > > [email protected] > > https://lists.sourceforge.net/lists/listinfo/nanning-developer > > > > ------------------------------------------------------- > This sf.net email is sponsored by:ThinkGeek > Welcome to geek heaven. > http://thinkgeek.com/sf > _______________________________________________ > Nanning-developer mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/nanning-developer ===== ***************** Steve Conover Jr. Verify chainmail here: http://www.snopes.com ***************** ------------------------------------------------------- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf