Re: [aspectwerkz-dev] Creating AOPified javadocs
Jack Tang <[email protected]> Sat, 28 Aug 2004 00:03:43 +0800
| Newsgroups | gmane.comp.java.aspectwerkz.devel |
|---|---|
| Message-ID | <[email protected]> |
<Quote>
PS: there is a small drawback in the solution 1 [snif/]. If the
project has compilation error (at aop level) then no javadocs
</Quote>
One switch will reduce the risk? Like this:
if(hasNoCompilationErrors())
{
generateAopJavaDoc();
}
else
{
reportErrors();
generateOnlyJavaDoc();
}
/Jack
On Fri, 27 Aug 2004 18:54:33 +0300, the_mindstorm
<[email protected]> wrote:
> Quote Jack Tang::
>
> > Hello Alexandru
> >
> > After reading Alex's comments, I think I got some points. If something
> > wrong, please correct me, Alex.
> >
> > The key of this problem is when to collect aop model information and
> > who will supply these information. Two solution list here:
> >
> > 1.javac + weave classes + generate stubs and javadoc [method 1 and
> > method with emitted join points]
> > 2.parse sources + generate stubs and javadoc
> >
> > And I divide AW engine workflow into five phrase(maybe more,but here
> > I think five is enough).
> > 1.hook phrase : pipe BootClasspathStarter/JDWPStarter after
> > java.lang.ClassLoader
> > 2.preProcess phrase: initialize preProcessor,filter certain CL and modify CL
> > 3.parse phrase : parse xml and javadoc @tags
> > 4.compile phrase : compile Java source
> > 5.transform/weave phrase: weave the cross-cutting info
> >
> > diagram like this:
> > (see attached file)
> >
> > Let's discuss solution 2 first. We should parse java sources by
> > ourself using QDox, then parse xml def, finally we structure aop
> > domain model by our hand. This solution is better to me first
> > impression, because I dream he can avoid "compile phrase". But maybe
> > it's my daydream.
>
> Initially I thought it may work this way. But I see no use to create another tool that knows how to
> create an "aop domain model" (this is my actual conclusion following the discussion with Alex).
>
> Also solving pointcuts is already done in the compiler/weaver (and the only place where it must be).
>
> Finally, I must admit that I have changed my option to follow the 1st solution (the ajdoc one - Mik
> was right ;-) ).
>
> ::the_mindstorm
>
> .
>
>
>
> >
> > And if we refer to solution 1, "compile phrase" has to be involved,
> > but we can access aop domain model easily through weaver context.
> >
> >
> > /Jack
>
>