]> source.dussan.org Git - aspectj.git/commitdiff
Updated module docs.
authormkersten <mkersten>
Tue, 15 Jul 2003 12:11:39 +0000 (12:11 +0000)
committermkersten <mkersten>
Tue, 15 Jul 2003 12:11:39 +0000 (12:11 +0000)
docs/developer/modules.html
docs/developer/overview.html

index 14b8e01b94a8c1d77cda0ddaa1129b2cc5094632..29c1f1abe520c4e3172d914ac2556bb3137a82d6 100644 (file)
 
 <h3 align="center">AspectJ Modules</h3>
 
-<p>There are a number of different structures [Parnas] : the module structure, 
-the uses structure, the runtime structure,\85 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]: &quot;the module structure, 
+the uses structure, the runtime structure, ..&quot;&nbsp; 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 \96 ajde.core and ajde.ui. 
-The core should be independent of the ui component (currently this isn\92t 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\92s 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.&nbsp; 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.&nbsp; 
+                               Extends the JDT compiler's parsing and name resolution to 
+                               understand AspectJ declarations.&nbsp; 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">&nbsp;</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">&nbsp;</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">&nbsp;</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.&nbsp; All advice planning and weaving is done 
+                               here.&nbsp; Takes an aspect bytecode format and other Java 
+                               classfiles as input.&nbsp; </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>
+&nbsp;<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.&nbsp; 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>
+&nbsp;<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>
-&nbsp;</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>
+&nbsp;<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>
 
index fdd7520d6620ada3a68455fea666c8af4cf55915..17adf154754fac37d2a02f75dbbb7baa66149f65 100644 (file)
@@ -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'&quot;</h4>
+'bugs'.&quot;</h4>
 <h4>Contents</h4>
 <ul>
        <li><a href="modules.html">Module Structure</a></li>