diff options
author | mkersten <mkersten> | 2003-07-15 12:11:39 +0000 |
---|---|---|
committer | mkersten <mkersten> | 2003-07-15 12:11:39 +0000 |
commit | 7d44a8a3a5014d65eee923b210e378049e3407b2 (patch) | |
tree | 701d36c6a2b96b8112ff95b809c767c02cc39f0b | |
parent | cc57abb7456100c16eb009707293d41d1f760db3 (diff) | |
download | aspectj-7d44a8a3a5014d65eee923b210e378049e3407b2.tar.gz aspectj-7d44a8a3a5014d65eee923b210e378049e3407b2.zip |
Updated module docs.
-rw-r--r-- | docs/developer/modules.html | 468 | ||||
-rw-r--r-- | docs/developer/overview.html | 2 |
2 files changed, 399 insertions, 71 deletions
diff --git a/docs/developer/modules.html b/docs/developer/modules.html index 14b8e01b9..29c1f1abe 100644 --- a/docs/developer/modules.html +++ b/docs/developer/modules.html @@ -142,80 +142,408 @@ <h3 align="center">AspectJ Modules</h3> -<p>There are a number of different structures [Parnas] : the module structure, -the uses structure, the runtime structure,… We focus first on the module -structure as found in the org.aspectj and org.eclipse.ajdt cvs roots.<br> -<br> -The CVS modules are all rooted at dev.eclipse.org:/home/technology. </p> -<ul> - <li>aspectj-home contains the AspectJ project web site on eclipse.org</li> - <li>org.aspectj contains the AspectJ project source code</li> - <li>org.eclipse.ajdt contains the AJDT project web site and the AJDT source - code</li> -</ul> -<h4>Core Modules</h4> -<h4 class="paragraph"><b>ajbrowser</b></h4> -<h4 class="paragraph">This module contains the ajbrowser application. It depends on the ajde module +<p>There are a number of different structures [Parnas]: "the module structure, +the uses structure, the runtime structure, .." This document overviews module structure and summarizes what is hidden by each. +For detailed documentation refer to the individual module sources and docs +available via CVS. </p> +<h4 align="center">Core Modules</h4> +<p><b>CVS Location: </b>dev.eclipse.org:/home/technology/org.aspectj/modules</p> +<p> +<table cellSpacing="4" cellPadding="1" width="100%" align="center" border="0" id="table1"> + <tr> + <td width="100" bgColor="#c8cedc"> + <p align="center" class="smallParagraph"><font color="#383e4c"><b>Module</b></font></td> + <td width="*" bgColor="#c8cedc"> + <p align="center"><font color="#383e4c"><b>Dependencies</b> </font></td> + <td width="*" bgColor="#c8cedc"> + <p class="smallParagraph" align="center"><b> + <font color="#383e4c" size="2">Description</font></b></td> + </tr> + <tr> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left">ajbrowser</td> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left">ajde, asm, bridge, taskdefs, util</td> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left"> + This module contains the ajbrowser application. It depends on the ajde module for access to the aspectj compiler, and also for the swing user interface -components that ajde provides.</h4> -<h4 class="paragraph"><b>ajde</b></h4> -<p>This module hides the details of accessing the aspectj compiler and interpreting -compilation results (error messages, structure model etc.) from other -applications (typically IDEs) that need to invoke it programmatically. <br> -<br> -It also contains a library of common swing user interface components that can be -used by any swing based IDE. Ajbrowser and the non-eclipse IDE integration -projects use this library (except for the emacs support).<br> +components that ajde provides.</td> + </tr> + <tr> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left">ajde</td> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left">asm, bridge, + org.aspectj.ajdt.core, org.eclipse.jdt.core, util</td> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left"> + Hides the details of accessing the aspectj compiler + and interpreting compilation results (error messages, structure + model, etc.) from other applications (typically IDEs) that need + to invoke it programmatically. + Changing any public interface in ajde can break all the IDE + integration projects and should be done with care.<br> <br> -Note: we need to separate the ajde component into two – ajde.core and ajde.ui. -The core should be independent of the ui component (currently this isn’t quite -true). This will allow non-swing based applications that need to integrate with -the aspectj compiler to do so without needing to provide a swing environment. -The issue is most pressing on Mac OS X where AJDT fails to load due to conflicts -between Eclipse’s SWT and swing<br> -<br> -Changing any public interface in ajde can break all the IDE integration projects -and should be done with care. </p> -<p><b>asm</b></p> -<p>This module contains the Abstract Structure Model which represents the result of + It also contains a library of common swing user interface + components that can be used by any swing based IDE. Ajbrowser + and the non-eclipse IDE integration projects use this library + (except for the emacs support).</td> + </tr> + <tr> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left">asm</td> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left">bridge</td> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left"> + Contains the Abstract Structure Model, which represents the result of an aspectj compilation. Clients of ajde are returned an instance of the -structure model which allows them to navigate and interpret the structure of a -compiled aspectj program.</p> -<p><b>bridge</b></p> -<p>...</p> -<p><b>org.aspectj.ajdt.core</b></p> -<p>...</p> -<p><b>org.eclipse.jdt.core</b></p> -<p>...</p> -<p><b>runtime</b></p> -<p>...</p> -<p><b>taskdefs</b></p> -<p>...</p> -<p><b>util</b></p> -<p>...</p> -<p><b>weaver</b></p> -<h4>...<br> +structure model which allows them to navigate and interpret the static structure of an aspectj program.</td> + </tr> + <tr> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left">bridge</td> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left">util</td> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left"> + Contains an interface and implementation of classes realted to + compiler messages including: source locations, handling, and + formatting. Intended to minimize dependencies between + testing, the compiler, and ajde.</td> + </tr> + <tr> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left">org.aspectj.ajdt.core</td> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left">asm, bridge, org.eclipse.jdt.core, + runtime, testing-util, util, weaver</td> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left"> + Front-end of the AspectJ compiler and extension of Eclipse's JDT compiler. + Extends the JDT compiler's parsing and name resolution to + understand AspectJ declarations. Also extends incremental + behavior with understanding of AspectJ dependancies.</td> + </tr> + <tr> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left">org.eclipse.ajdt.core</td> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left"> </td> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left"> + The additional extensibility needed from the JDT compiler is + captured by these deltas.</td> + </tr> + <tr> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left">runtime</td> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left"> </td> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left"> + Small runtime library required for building and running AspectJ + programs.</td> + </tr> + <tr> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left">taskdefs</td> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left">bridge, org.aspectj.ajdt.core, + util</td> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left"> + Ant taskdefs for the ajc and ajdoc command line tools.</td> + </tr> + <tr> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left">util</td> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left"> </td> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left"> + Common utility classes including data type, file, and stream + manipulation.</td> + </tr> + <tr> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left">weaver</td> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left">asm, bridge, runtime, testing-util, + util</td> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left"> + Back-end of the AspectJ compiler, built on top of the BCEL + bytecode toolkit. All advice planning and weaving is done + here. Takes an aspect bytecode format and other Java + classfiles as input. </td> + </tr> + <!-- + <tr> + <TD bgColor=#eeeeee> + <p class=smallParagraph align="left">appears in <font color="#383E4C"><b>ICSE + 2000 + </b></font></p> + </TD> + <TD bgColor=#eeeeee> + <p class=smallParagraph align="left">A Study on Exception Detection and Handling Using + Aspect-Oriented Programming (0.4)</p> + </TD> + <TD bgColor=#eeeeee><p class=smallParagraph align="center"><a href="/documentation/papersAndSlides/ICSE2000-ExcptnDetect.pdf">PDF</a> + </p></TD> + </tr> + --> + </table> + <h4 align="center">Supporting Modules</h4> +<p align="left"><b>CVS Location: </b>dev.eclipse.org:/home/technology/org.aspectj/modules</p> +<p> +<table cellSpacing="4" cellPadding="1" width="100%" align="center" border="0" id="table2"> + <tr> + <td width="100" bgColor="#c8cedc"> + <p align="center" class="smallParagraph"><font color="#383e4c"><b>Module</b></font></td> + <td width="*" bgColor="#c8cedc"> + <p class="smallParagraph" align="center"><b> + <font color="#383e4c" size="2">Description</font></b></td> + </tr> + <tr> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left">build</td> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left"> + Ant files, scripts, and taskdefs required for building the + AspectJ distribution. Also contains the GUI installer.</td> + </tr> + <tr> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left">docs</td> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left"> + Programmer and developer documentation.</td> + </tr> + <tr> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left">lib</td> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left"> + Libraries required for building AspectJ.</td> + </tr> + <tr> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left">testing</td> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left"> + Test support classes.</td> + </tr> + <tr> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left">testing-client</td> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left"> + Client used for running the harness and reporting results.</td> + </tr> + <tr> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left">testing-drivers</td> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left"> + Testing harness drivers and support classes.</td> + </tr> + <tr> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left">testing-util</td> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left"> + Common testing utility classes.</td> + </tr> + <tr> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left">tests</td> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left"> + AspectJ test suite, including all language tests, regression + tests, and test system sources.</td> + </tr> + <!-- + <tr> + <TD bgColor=#eeeeee> + <p class=smallParagraph align="left">appears in <font color="#383E4C"><b>ICSE + 2000 + </b></font></p> + </TD> + <TD bgColor=#eeeeee> + <p class=smallParagraph align="left">A Study on Exception Detection and Handling Using + Aspect-Oriented Programming (0.4)</p> + </TD> + <TD bgColor=#eeeeee><p class=smallParagraph align="center"><a href="/documentation/papersAndSlides/ICSE2000-ExcptnDetect.pdf">PDF</a> + </p></TD> + </tr> + --> + </table> + +<h4 align="center">Eclipse Support (AJDT)</h4> +<p align="left"><b>CVS Location: </b>dev.eclipse.org:/home/technology/org.eclipse.ajdt/plugins/org.eclipse.ajdt</p> +<table cellSpacing="4" cellPadding="1" width="100%" align="center" border="0" id="table3"> + <tr> + <td width="100" bgColor="#c8cedc"> + <p align="center" class="smallParagraph"><font color="#383e4c"><b> + Plug-in</b></font></td> + <td width="*" bgColor="#c8cedc"> + <p align="center"><font color="#383e4c"><b>Dependencies</b> </font></td> + <td width="*" bgColor="#c8cedc"> + <p class="smallParagraph" align="center"><b> + <font color="#383e4c" size="2">Description</font></b></td> + </tr> + <tr> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left">org.eclipse.ajdt.ui</td> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left">org.aspectj.ajde</td> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left"> + AspectJ IDE support for Eclipse.</td> + </tr> + <tr> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left">org.aspectj.ajde</td> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left">ajde, asm, bridge</td> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left"> + AspectJ libraries plug-in.</td> + </tr> + <!-- + <tr> + <TD bgColor=#eeeeee> + <p class=smallParagraph align="left">appears in <font color="#383E4C"><b>ICSE + 2000 + </b></font></p> + </TD> + <TD bgColor=#eeeeee> + <p class=smallParagraph align="left">A Study on Exception Detection and Handling Using + Aspect-Oriented Programming (0.4)</p> + </TD> + <TD bgColor=#eeeeee><p class=smallParagraph align="center"><a href="/documentation/papersAndSlides/ICSE2000-ExcptnDetect.pdf">PDF</a> + </p></TD> + </tr> + --> + </table> + <h4 align="center">JBuilder Support</h4> +<p align="left"><b>CVS Location: <span style="font-weight: 400"> +cvs.aspectj4jbuildr.sourceforge.net:/cvsroot/aspectj4jbuildr</span></b></p> +<table cellSpacing="4" cellPadding="1" width="100%" align="center" border="0" id="table4"> + <tr> + <td width="100" bgColor="#c8cedc"> + <p align="center" class="smallParagraph"><font color="#383e4c"><b> + OpenTool</b></font></td> + <td width="*" bgColor="#c8cedc"> + <p align="center"><font color="#383e4c"><b>Dependencies</b> </font></td> + <td width="*" bgColor="#c8cedc"> + <p class="smallParagraph" align="center"><b> + <font color="#383e4c" size="2">Description</font></b></td> + </tr> + <tr> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left">jbuilder</td> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left">ajde, asm, bridge</td> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left"> + AspectJ IDE support for JBuilder.</td> + </tr> + <!-- + <tr> + <TD bgColor=#eeeeee> + <p class=smallParagraph align="left">appears in <font color="#383E4C"><b>ICSE + 2000 + </b></font></p> + </TD> + <TD bgColor=#eeeeee> + <p class=smallParagraph align="left">A Study on Exception Detection and Handling Using + Aspect-Oriented Programming (0.4)</p> + </TD> + <TD bgColor=#eeeeee><p class=smallParagraph align="center"><a href="/documentation/papersAndSlides/ICSE2000-ExcptnDetect.pdf">PDF</a> + </p></TD> + </tr> + --> + </table> <br> -Supporting Modules</h4> -<p><b>build</b></p> -<p>...</p> -<p><b>docs</b></p> -<p>...</p> -<p><b>lib</b></p> -<p>...</p> -<p><b>releases</b></p> -<p>...</p> -<p><b>testing</b></p> -<p>...</p> -<p><b>testing-client</b></p> -<p>...</p> -<p><b>testing-drivers</b></p> -<p>...</p> -<p><b>testing-util</b></p> -<p>...</p> -<p><b>tests</b></p> -<p>...<br> - </p> +<h4 align="center">NetBeans Support</h4> +<p align="left"><b>CVS Location: <span style="font-weight: 400"> +cvs.aspectj4netbean.sourceforge.net:/cvsroot/aspectj4netbean</span></b></p> +<table cellSpacing="4" cellPadding="1" width="100%" align="center" border="0" id="table5"> + <tr> + <td width="100" bgColor="#c8cedc"> + <p align="center" class="smallParagraph"><font color="#383e4c"><b>Module</b></font></td> + <td width="*" bgColor="#c8cedc"> + <p align="center"><font color="#383e4c"><b>Dependencies</b> </font></td> + <td width="*" bgColor="#c8cedc"> + <p class="smallParagraph" align="center"><b> + <font color="#383e4c" size="2">Description</font></b></td> + </tr> + <tr> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left">netbeans</td> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left">ajde, asm, bridge</td> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left"> + AspectJ IDE support for NetBeans and SunONE Studio.</td> + </tr> + <!-- + <tr> + <TD bgColor=#eeeeee> + <p class=smallParagraph align="left">appears in <font color="#383E4C"><b>ICSE + 2000 + </b></font></p> + </TD> + <TD bgColor=#eeeeee> + <p class=smallParagraph align="left">A Study on Exception Detection and Handling Using + Aspect-Oriented Programming (0.4)</p> + </TD> + <TD bgColor=#eeeeee><p class=smallParagraph align="center"><a href="/documentation/papersAndSlides/ICSE2000-ExcptnDetect.pdf">PDF</a> + </p></TD> + </tr> + --> + </table> + <h4 align="center">Emacs Support</h4> +<p align="left"><b>CVS Location: <span style="font-weight: 400"> +cvs.aspectj4emacs.sourceforge.net:/cvsroot/aspectj4emacs</span></b></p> +<table cellSpacing="4" cellPadding="1" width="100%" align="center" border="0" id="table6"> + <tr> + <td width="100" bgColor="#c8cedc"> + <p align="center" class="smallParagraph"><font color="#383e4c"><b>Module</b></font></td> + <td width="*" bgColor="#c8cedc"> + <p align="center"><font color="#383e4c"><b>Dependencies</b> </font></td> + <td width="*" bgColor="#c8cedc"> + <p class="smallParagraph" align="center"><b> + <font color="#383e4c" size="2">Description</font></b></td> + </tr> + <tr> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left">emacs</td> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left">ajde, asm, bridge</td> + <td bgColor="#eeeeee"> + <p class="smallParagraph" align="left"> + AspectJ support for Emacs and XEmacs.</td> + </tr> + <!-- + <tr> + <TD bgColor=#eeeeee> + <p class=smallParagraph align="left">appears in <font color="#383E4C"><b>ICSE + 2000 + </b></font></p> + </TD> + <TD bgColor=#eeeeee> + <p class=smallParagraph align="left">A Study on Exception Detection and Handling Using + Aspect-Oriented Programming (0.4)</p> + </TD> + <TD bgColor=#eeeeee><p class=smallParagraph align="center"><a href="/documentation/papersAndSlides/ICSE2000-ExcptnDetect.pdf">PDF</a> + </p></TD> + </tr> + --> + </table> </body> diff --git a/docs/developer/overview.html b/docs/developer/overview.html index fdd7520d6..17adf1547 100644 --- a/docs/developer/overview.html +++ b/docs/developer/overview.html @@ -162,7 +162,7 @@ product. Those who made the changes, never did. In other words, *nobody* understands the modified product.<br> Software that has been repeatedly modified (maintained) in this way becomes very expensive to update. Changes take longer and are more likely to introduce new -'bugs'"</h4> +'bugs'."</h4> <h4>Contents</h4> <ul> <li><a href="modules.html">Module Structure</a></li> |