From ebbc41255384e85db03c4eb6aae4e6464803d0a9 Mon Sep 17 00:00:00 2001 From: Alexander Kriegisch Date: Tue, 29 Jun 2021 13:18:25 +0700 Subject: Add initial set of AsciiDoc files, converted from HTML/XML Some originals have been deleted already. Others, especially the user guides, still exist in both formats because they have not been proof-read and probably lots of links do not function as expected. But I want to see what the files look like directly on GitHun. Signed-off-by: Alexander Kriegisch --- docs/sandbox/ubc-design-patterns/docs/readme.adoc | 59 +++++++++++++++++++++ docs/sandbox/ubc-design-patterns/docs/readme.pdf | Bin 13954 -> 0 bytes docs/sandbox/ubc-design-patterns/docs/readme.txt | 55 ------------------- .../ubc-design-patterns/patterns-readme.adoc | 23 ++++++++ .../ubc-design-patterns/patterns-readme.html | 40 -------------- 5 files changed, 82 insertions(+), 95 deletions(-) create mode 100644 docs/sandbox/ubc-design-patterns/docs/readme.adoc delete mode 100644 docs/sandbox/ubc-design-patterns/docs/readme.pdf delete mode 100644 docs/sandbox/ubc-design-patterns/docs/readme.txt create mode 100644 docs/sandbox/ubc-design-patterns/patterns-readme.adoc delete mode 100644 docs/sandbox/ubc-design-patterns/patterns-readme.html (limited to 'docs/sandbox/ubc-design-patterns') diff --git a/docs/sandbox/ubc-design-patterns/docs/readme.adoc b/docs/sandbox/ubc-design-patterns/docs/readme.adoc new file mode 100644 index 000000000..f485a54f0 --- /dev/null +++ b/docs/sandbox/ubc-design-patterns/docs/readme.adoc @@ -0,0 +1,59 @@ += Implementations of GoF Design Patterns in Java and AspectJ + +_Code base documentation (April 2, 2004)_ + +== Overview + +The goal was to provide parallel implementations in AspectJ and Java that allow for direct comparisons. It has to be noted that most patterns offer variability in the implementation approach. We choose the one that appeared to be the most general. Sometimes, the AspectJ version implements a slightly different (or additional) case(s). This is due to the fact that AJ sometimes allows for additional functionality. Please refer to the web page and our OOPSLA '02 paper for a detailed description of this work. + +== Example Setup + +All pattern examples have a class called `Main`. This class is the driver for the particular example. The Main classes are extensively documented using ajdoc, describing the experimental setup and the assignment of roles to participants. In most cases, the differences between Java and AspectJ implementations are also mentioned. + +== Documentation (ajdoc) + +While all files are extensively documented using ajdoc (the AspectJ version of javadoc), ajdoc is not yet compatible with the later AspectJ releases, so it is currently not possible to generate HTML documents from it. This will be added when ajdoc is updated. +Within the ajdoc documentation, we tried to separate type names used in our examples from role names (as presented in GoF). We show roles names in italics and actual type names in code font. + +== Questions, feedback, suggestions, etc. + +The AODP web page is http://www.cs.ubc.ca/labs/spl/aodp.html + +Please send all questions, feedback, and suggestions to Jan Hannemann (jan [AT] cs.ubc.ca). We are very much interested in improving our code. Please do not hesitate to drop us a line. + +== Appendix + +This appendix outlines how to compile and run the examples provided. DOS batch files exist that automate these tasks somewhat. Note that the batch files only work in Windows environments. The following is a list of tasks and a description of what commands accomplish them. For compiling, running and generating documentation, two options are given. The first one is using a provided script; the second is the standard command-line option (longer, but will work on all operation systems). + +=== Using the Eclipse IDE + +Setting up your system and running the examples + +1. Install https://www.eclipse.org[Eclipse] and https://www.eclipse.org/ajdt[AJDT]. Currently, AJDT only works with release 2.1.X and not with version 3.0+ of Eclipse. Check the AJDT web page for more information and updates. +2. Import the ZIP file with the AOP pattern examples into Eclipse +3. Compile & run + + +=== Using other AspectJ-compatible IDEs + +Note: The code base has not been tested with other IDEs. Chances are that this will work similar to the above, though. + +=== Using command-line compilation + +Setting up your system + +1. Install Java (version 1.4+) and AspectJ (version 1.1+) +2. Extract the ZIP file into a directory of your choice +3. Make sure your `CLASSPATH` contains the example's src directory +4. Change to that directory + +Compile Java and AspectJ versions the design pattern examples. Choose one: + +* Use the `buildAllPatterns` batch file (just call it from the examples root directory. Needs no arguments). +* `ajc -d bin @src/allPatterns.lst` + +Run a compiled example (e.g. Observer). Choose one: + +* Test pattern Observer (this runs both Java and AspectJ versions) +** `java ca.ubc.cs.spl.aspectPatterns.examples.observer.java.Main` for the Java version, +** `java ca.ubc.cs.spl.aspectPatterns.examples.observer.java.Main` for the AspectJ version diff --git a/docs/sandbox/ubc-design-patterns/docs/readme.pdf b/docs/sandbox/ubc-design-patterns/docs/readme.pdf deleted file mode 100644 index cde37b24b..000000000 Binary files a/docs/sandbox/ubc-design-patterns/docs/readme.pdf and /dev/null differ diff --git a/docs/sandbox/ubc-design-patterns/docs/readme.txt b/docs/sandbox/ubc-design-patterns/docs/readme.txt deleted file mode 100644 index 8908cf8b6..000000000 --- a/docs/sandbox/ubc-design-patterns/docs/readme.txt +++ /dev/null @@ -1,55 +0,0 @@ -Implementations of GoF Design Patterns in Java and AspectJ -Code base documentation (April 2, 2004) - - -Overview -The goal was to provide parallel implementations in AspectJ and Java that allow for direct comparisons. It has to be noted that most patterns offer variability in the implementation approach. We choose the one that appeared to be the most general. Sometimes, the AspectJ version implements a slightly different (or additional) case(s). This is due to the fact that AJ sometimes allows for additional functionality. Please refer to the web page and our OOPSLA '02 paper for a detailed description of this work. - -Example Setup -All pattern examples have a class called Main. This class is the driver for the particular example. The Main classes are extensively documented using ajdoc, describing the experimental setup and the assignment of roles to participants. In most cases, the differences between Java and AspectJ implementations are also mentioned. - -Documentation (ajdoc) -While all files are extensively documented using ajdoc (the AspectJ version of javadoc), ajdoc is not yet compatible with the later AspectJ releases, so it is currently not possible to generate HTML documents from it. This will be added when ajdoc is updated. -Within the ajdoc documentation, we tried to separate type names used in our examples from role names (as presented in GoF). We show roles names in italics and actual type names in code font. - -Questions, feedback, suggestions, etc. -The AODP web page is http://www.cs.ubc.ca/labs/spl/aodp.html -Please send all questions, feedback, and suggestions to Jan Hannemann (jan [AT] cs.ubc.ca). We are very much interested in improving our code. Please do not hesitate to drop us a line. - - -=============================== - - -Appendix -This appendix outlines how to compile and run the examples provided. DOS batch files exist that automate these tasks somewhat. Note that the batch files only work in Windows environments. The following is a list of tasks and a description of what commands accomplish them. For compiling, running and generating documentation, two options are given. The first one is using a provided script; the second is the standard command-line option (longer, but will work on all operation systems). - - -A1: Using the Eclipse IDE -Setting up your system and running the examples -1. Install Eclipse (www.eclipse.org) and AJDT (www.eclipse.org/ajdt). Currently AJDT only works with release 2.1.X and not with version 3.0+ of Eclipse. Check the AJDT web page for more information and updates. -2. Import the ZIP file with the AOP pattern examples into Eclipse -3. Compile & run - - -A2: Using other AspectJ-compatible IDEs -Note: the code base has not been tested with other IDEs. Chances are that this will work similar to the above, though. - - -A3: Using command-line compilation -Setting up your system -1. Install Java (version 1.4+) and AspectJ (version 1.1+) -2. Extract the ZIP file into a directory of your choice -3. Make sure your CLASSPATH contains the example's src directory -4. Change to that directory - -Compile Java and AspectJ versions the design pattern examples. Choose one: -* Use the buildAllPatterns batch file (just call it from the examples root directory. Needs no arguments). -* ajc -d bin @src/allPatterns.lst - -Run a compiled example (e.g. observer). Choose one: -* testPattern observer (this runs both Java and AspectJ versions) -* java ca.ubc.cs.spl.aspectPatterns.examples.observer.java.Main (for the Java version), -java ca.ubc.cs.spl.aspectPatterns.examples.observer.java.Main (for the AspectJ version) - - - April 2, 2004 diff --git a/docs/sandbox/ubc-design-patterns/patterns-readme.adoc b/docs/sandbox/ubc-design-patterns/patterns-readme.adoc new file mode 100644 index 000000000..501677747 --- /dev/null +++ b/docs/sandbox/ubc-design-patterns/patterns-readme.adoc @@ -0,0 +1,23 @@ +== AspectJ Patterns + +_Last updated: 2004-03-31 by wisberg_ + +This directory contains Java and AspectJ implementations of the patterns +described in the "Design Patterns" book by the so-called gang-of-four +(Gamma, Helm, Johnson, Vlissides). Jan Hannemann from UBC contributed +the code under the Mozilla Public License 1.0. For more details, see +xref:docs/readme.adoc[]. + +Build options + +* To build the code manually with ajc, use the corresponding build.lst + files, creating the aspect library first (to create lib.jar). +* Ajbrowser and the other IDE support does not support options like + sourceroots or -outjar in the .lst files, so you'll have to create new + .lst files if you want to build portions of the project in an IDE. +* To build with eclipse, there are .project and .classpath files, but + you will need to adjust the `aspectjrt.jar` entry after importing the + project. +* To build for testing, see patterns-test.xml. + +Enjoy! diff --git a/docs/sandbox/ubc-design-patterns/patterns-readme.html b/docs/sandbox/ubc-design-patterns/patterns-readme.html deleted file mode 100644 index 4230c97e3..000000000 --- a/docs/sandbox/ubc-design-patterns/patterns-readme.html +++ /dev/null @@ -1,40 +0,0 @@ - -AspectJ Patterns - - -

AspectJ Patterns

-

- This directory contains - Java and AspectJ implementations of the patterns described - in the "Design Patterns" book by the so-called gang-of-four - (Gamma, Helm, Johnson, Vlissides). - Jan Hannemann from UBC contributed the code - under the Mozilla Public License 1.0. - For more details, see docs/readme-1.1.txt - or docs/readme-1.1.pdf. -

-

- Build options -

-

- Enjoy! -

- - - -- cgit v1.2.3