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
> 
>