]> source.dussan.org Git - aspectj.git/commitdiff
Fix misplaced or incorrectly nested HTML tags
authorJerry James <loganjerry@gmail.com>
Mon, 14 Sep 2020 14:25:20 +0000 (08:25 -0600)
committerJerry James <loganjerry@gmail.com>
Mon, 14 Sep 2020 14:25:20 +0000 (08:25 -0600)
29 files changed:
ajde/src/main/java/org/aspectj/ajde/internal/StructureUtilities.java
asm/src/main/java/org/aspectj/asm/IRelationshipMap.java
loadtime/src/main/java/org/aspectj/weaver/loadtime/Aj.java
loadtime/src/main/java/org/aspectj/weaver/loadtime/DefaultMessageHandler.java
loadtime/src/main/java/org/aspectj/weaver/loadtime/Options.java
org.aspectj.ajdt.core/src/main/java/org/aspectj/ajdt/internal/core/builder/AjBuildConfig.java
org.aspectj.ajdt.core/src/main/java/org/aspectj/org/eclipse/jdt/core/dom/AjNaiveASTFlattener.java
org.aspectj.matcher/src/main/java/org/aspectj/weaver/ConcreteTypeMunger.java
org.aspectj.matcher/src/main/java/org/aspectj/weaver/ResolvedType.java
org.aspectj.matcher/src/main/java/org/aspectj/weaver/patterns/BindingAnnotationFieldTypePattern.java
org.aspectj.matcher/src/main/java/org/aspectj/weaver/patterns/ExactAnnotationFieldTypePattern.java
org.aspectj.matcher/src/main/java/org/aspectj/weaver/patterns/FormalBinding.java
org.aspectj.matcher/src/main/java/org/aspectj/weaver/patterns/HasMemberTypePatternForPerThisMatching.java
org.aspectj.matcher/src/main/java/org/aspectj/weaver/patterns/PatternNodeVisitor.java
org.aspectj.matcher/src/main/java/org/aspectj/weaver/patterns/PerThisOrTargetPointcutVisitor.java
taskdefs/src/main/java/org/aspectj/tools/ant/taskdefs/Ajc11CompilerAdapter.java
taskdefs/src/main/java/org/aspectj/tools/ant/taskdefs/AjcTask.java
taskdefs/src/main/java/org/aspectj/tools/ant/taskdefs/compilers/Ajc.java
weaver/src/main/java/org/aspectj/weaver/bcel/AtAjAttributes.java
weaver/src/main/java/org/aspectj/weaver/bcel/BcelAccessForInlineMunger.java
weaver/src/main/java/org/aspectj/weaver/loadtime/IWeavingContext.java
weaver/src/main/java/org/aspectj/weaver/loadtime/definition/Definition.java
weaver/src/main/java/org/aspectj/weaver/tools/cache/AsynchronousFileCacheBacking.java
weaver/src/main/java/org/aspectj/weaver/tools/cache/CacheBacking.java
weaver/src/main/java/org/aspectj/weaver/tools/cache/CacheKeyResolver.java
weaver/src/main/java/org/aspectj/weaver/tools/cache/CachedClassReference.java
weaver/src/main/java/org/aspectj/weaver/tools/cache/DefaultCacheKeyResolver.java
weaver/src/main/java/org/aspectj/weaver/tools/cache/DefaultFileCacheBacking.java
weaver/src/main/java/org/aspectj/weaver/tools/cache/WeavedClassCache.java

index 866a5bad8752fb786a4771b360526dc6159b42ba..6e84a99c54df19a6b6c5c047c91970b346d7f054 100644 (file)
@@ -20,7 +20,7 @@ package org.aspectj.ajde.internal;
 
 /**
  * Utility class for building a structure model for a given compile. Typical command-line usage: <BR>
- * &nbsp;&nbsp;&gt; <TT>java org.aspectj.tools.ajde.StructureManager @&lt;config-file&gt;.lst</TT>
+ * &nbsp;&nbsp;&gt; {@code java org.aspectj.tools.ajde.StructureManager @&lt;config-file&gt;.lst}
  */
 public class StructureUtilities {
 
index fdaab0ad6efccc999ea8e40609bf1185ca6b48fa..9d03aef75d12f2c5356c87e7c2ea4a9d316d8abe 100644 (file)
@@ -21,15 +21,16 @@ import java.util.Set;
  * the list or relationships is uniquely identified by a kind and a relationship name. For example, the advice affecting a
  * particular shadow (e.g. method call) can be retrieved by calling <CODE>get</CODE> on the handle for that method. Symmetrically
  * the method call shadows that an advice affects can be retrieved.
- * <p>
  *
  * <p>
  * The elements can be stored and looked up as IProgramElement(s), in which cases the element corresponding to the handle is looked
  * up in the containment hierarchy.
+ * </p>
  *
  * <p>
  * put/get methods taking IProgramElement as a parameter are for convenience only. They work identically to calling their
  * counterparts with IProgramElement.getIdentifierHandle()
+ * </p>
  *
  * @author Mik Kersten
  * @author Andy Clement
index fbbc28f9b6ecae6c94f7745e6d9c1ff50ba773aa..110e0c062281638c78c791e693c5b21bffd17c63 100644 (file)
@@ -34,7 +34,7 @@ import org.aspectj.weaver.tools.cache.SimpleCacheFactory;
  * Adapter between the generic class pre processor interface and the AspectJ weaver Load time weaving consistency relies on
  * Bcel.setRepository
  * 
- * @author <a href="mailto:alex AT gnilux DOT com">Alexandre Vasseur</a>
+ * @author Alexandre Vasseur (alex AT gnilux DOT com)
  */
 public class Aj implements ClassPreProcessor {
 
index a1f6902ee3d24a5e40da3526ce89c8b993c2e386..6b38fab9a60215903278b585429d11da787411b6 100644 (file)
@@ -16,7 +16,7 @@ import org.aspectj.bridge.IMessage;
 import org.aspectj.bridge.IMessageHandler;
 
 /**
- * @author <a href="mailto:alex AT gnilux DOT com">Alexandre Vasseur</a>
+ * @author Alexandre Vasseur (alex AT gnilux DOT com)
  */
 public class DefaultMessageHandler implements IMessageHandler {
 
index cb5f00f091ef6fc331d7cfe7669d61e5c2ccf769..e76f60e7cae9d860bd22bfa878b3c98940ebdebe 100644 (file)
@@ -23,7 +23,7 @@ import org.aspectj.util.LangUtil;
  * A class that hanldes LTW options. Note: AV - I choosed to not reuse AjCompilerOptions and alike since those implies too many
  * dependancies on jdt and ajdt modules.
  *
- * @author <a href="mailto:alex AT gnilux DOT com">Alexandre Vasseur</a>
+ * @author Alexandre Vasseur (alex AT gnilux DOT com)
  */
 public class Options {
 
index 35a71fd109a658308740a1d819eeedbe1bf2c09f..9f497df361b1feb60ad5ef19f78f8424f998b3a7 100644 (file)
@@ -448,8 +448,8 @@ public class AjBuildConfig implements CompilerConfigurationChangeFlags {
         * <li>Collections are unioned</li>
         * <li>values takes local value unless default and global set</li>
         * <li>this only sets one of outputDir and outputJar as needed</li>
-        * <ul>
-        * This also configures super if javaOptions change.
+        * </ul>
+        * <p>This also configures super if javaOptions change.</p>
         *
         * @param global the AjBuildConfig to read globals from
         */
index 8244a3a8d0e30324342ab7d2c86a6777edcd7ddd..e4f3cdeea7a0b488f8a8d0f0e7fac018b25937cf 100644 (file)
@@ -23,13 +23,15 @@ import java.util.List;
  * fine for generating debug print strings.
  * <p>
  * Example usage:
- * <code>
+ * </p>
  * <pre>
+ * <code>
  *    NaiveASTFlattener p = new NaiveASTFlattener();
  *    node.accept(p);
  *    String result = p.getResult();
- * </pre>
  * </code>
+ * </pre>
+ * <p>
  * Call the <code>reset</code> method to clear the previous result before reusing an
  * existing instance.
  * </p>
index b8f344f2e75e6548bb25306bb91fdef888c7a0e0..153e73d062474a849b2094bb75046a5be3405f82 100644 (file)
@@ -109,13 +109,13 @@ public abstract class ConcreteTypeMunger implements PartialOrder.PartialComparab
        /**
         * returns true if the ITD target type used type variables, for example I&lt;T&gt;. When they are specified like this, the ITDs
         * 'share' type variables with the generic type. Usually this method is called because we need to know whether to tailor the
-        * munger for addition to a particular type. For example: <code>
+        * munger for addition to a particular type. For example: <pre><code>
         *   interface I&lt;T&gt; {}
         *   
         *   aspect X implements I&lt;String&gt; {
         *     List&lt;T&gt; I&lt;T&gt;.foo { return null; }
         *   }
-        * </code> In this case the munger matches X but it matches with the form <code>
+        * </code></pre> In this case the munger matches X but it matches with the form <code>
         *   List&lt;String&gt; foo() { return null; }
         * </code>
         */
index b78f855a51d02565a3f4afef79a649035511c160..59f767148e4d5db7aafa0979dd03767ae24f34da 100644 (file)
@@ -202,14 +202,14 @@ public abstract class ResolvedType extends UnresolvedType implements AnnotatedEl
        /**
         * returns an iterator through all of the fields of this type, in order for checking from JVM spec 2ed 5.4.3.2. This means that
         * the order is
-        * <p/>
         * <ul>
         * <li>fields from current class</li>
         * <li>recur into direct superinterfaces</li>
         * <li>recur into superclass</li>
         * </ul>
-        * <p/>
+        * <p>
         * We keep a hashSet of interfaces that we've visited so we don't spiral out into 2^n land.
+        * </p>
         */
        public Iterator<ResolvedMember> getFields() {
                final Iterators.Filter<ResolvedType> dupFilter = Iterators.dupFilter();
@@ -225,13 +225,11 @@ public abstract class ResolvedType extends UnresolvedType implements AnnotatedEl
        /**
         * returns an iterator through all of the methods of this type, in order for checking from JVM spec 2ed 5.4.3.3. This means that
         * the order is
-        * <p/>
         * <ul>
         * <li>methods from current class</li>
         * <li>recur into superclass, all the way up, not touching interfaces</li>
         * <li>recur into all superinterfaces, in some unspecified order (but those 'closest' to this type are first)</li>
         * </ul>
-        * <p/>
         * 
         * @param wantGenerics is true if the caller would like all generics information, otherwise those methods are collapsed to their
         *        erasure
@@ -739,14 +737,14 @@ public abstract class ResolvedType extends UnresolvedType implements AnnotatedEl
        /**
         * returns an iterator through all of the pointcuts of this type, in order for checking from JVM spec 2ed 5.4.3.2 (as for
         * fields). This means that the order is
-        * <p/>
         * <ul>
         * <li>pointcuts from current class</li>
         * <li>recur into direct superinterfaces</li>
         * <li>recur into superclass</li>
         * </ul>
-        * <p/>
+        * <p>
         * We keep a hashSet of interfaces that we've visited so we don't spiral out into 2^n land.
+        * </p>
         */
        public Iterator<ResolvedMember> getPointcuts() {
                final Iterators.Filter<ResolvedType> dupFilter = Iterators.dupFilter();
@@ -1557,10 +1555,11 @@ public abstract class ResolvedType extends UnresolvedType implements AnnotatedEl
        /**
         * Returns a ResolvedType object representing the declaring type of this type, or null if this type does not represent a
         * non-package-level-type.
-        * <p/>
+        * <p>
         * <strong>Warning</strong>: This is guaranteed to work for all member types. For anonymous/local types, the only guarantee is
         * given in JLS 13.1, where it guarantees that if you call getDeclaringType() repeatedly, you will eventually get the top-level
         * class, but it does not say anything about classes in between.
+        * </p>
         * 
         * @return the declaring type, or null if it is not an nested type.
         */
@@ -2672,10 +2671,9 @@ public abstract class ResolvedType extends UnresolvedType implements AnnotatedEl
        /**
         * Determines if values of another type could possibly be cast to this type. The rules followed are from JLS 2ed 5.5,
         * "Casting Conversion".
-        * <p/>
         * <p>
         * This method should be commutative, i.e., for all UnresolvedType a, b and all World w:
-        * <p/>
+        * </p>
         * <blockquote>
         * 
         * <pre>
index 707f1e79eb944bd501ed3c1a3c12fb0de073b1c4..0cbd65a2dab82cfa83b210fa18b0a4da6e5c9f67 100644 (file)
@@ -31,11 +31,11 @@ import org.aspectj.weaver.WeaverMessages;
 import org.aspectj.weaver.World;
 
 /**
- * Represents an attempt to bind the field of an annotation within a pointcut. For example:<br>
- * <code><pre>
+ * Represents an attempt to bind the field of an annotation within a pointcut. For example:
+ * <pre><code>
  * before(Level lev): execution(* *(..)) &amp;&amp; @annotation(TraceAnnotation(lev))
- * </pre></code><br>
- * This binding annotation type pattern will be for 'lev'.
+ * </code></pre>
+ * <p>This binding annotation type pattern will be for 'lev'.</p>
  */
 public class BindingAnnotationFieldTypePattern extends ExactAnnotationTypePattern implements BindingPattern {
 
index bef0d145c811970923a567b1e2013dff4a05276a..9d5fd8bd3cf22075ebc2db1a3d173522497e2bae 100644 (file)
@@ -28,11 +28,11 @@ import org.aspectj.weaver.VersionedDataInputStream;
 import org.aspectj.weaver.World;
 
 /**
- * Represents an attempt to bind the field of an annotation within a pointcut. For example:<br>
- * <code><pre>
+ * Represents an attempt to bind the field of an annotation within a pointcut. For example:
+ * <pre><code>
  * before(Level lev): execution(* *(..)) &amp;&amp; @annotation(TraceAnnotation(lev))
- * </pre></code><br>
- * This binding annotation type pattern will be for 'lev'.
+ * </code></pre>
+ * <p>This binding annotation type pattern will be for 'lev'.</p>
  */
 public class ExactAnnotationFieldTypePattern extends ExactAnnotationTypePattern {
 
index 73693f07c5c47df5a9ea99bd3dba21dc338317af..36ff221985969c7ddec23cd54b4ee207b03580d0 100644 (file)
@@ -71,7 +71,7 @@ public class FormalBinding implements IHasPosition {
         * A marker class for bindings for which we want to ignore unbound issue and consider them as implicit binding - f.e. to handle
         * JoinPoint in @AJ advices
         * 
-        * @author <a href="mailto:alex AT gnilux DOT com">Alexandre Vasseur</a>
+        * @author Alexandre Vasseur (alex AT gnilux DOT com)
         */
        public static class ImplicitFormalBinding extends FormalBinding {
                public ImplicitFormalBinding(UnresolvedType type, String name, int index) {
index 128338f8e16aa824add259638caa7d715cc450dd..66c395dd7570befc801f6f37fc8ad00f617f1e3f 100644 (file)
@@ -19,11 +19,11 @@ import org.aspectj.weaver.ConcreteTypeMunger;
 import org.aspectj.weaver.ResolvedType;
 
 /**
- * pr354470. This is a special subtype of HasMemberTypePattern. In order to optimize this situation: <br>
- * <code><pre>
+ * pr354470. This is a special subtype of HasMemberTypePattern. In order to optimize this situation:
+ * <pre><code>
  * aspect X perthis(transactional()) {<br>
  * pointcut transactional: execution(@Foo * *(..));<br>
- * </pre></code>
+ * </code></pre>
  * <p>
  * When this occurs we obviously only want an aspect instance when there is a method annotated with @Foo. For a regular execution
  * pointcut we couldn't really do this due to the multiple joinpoint signatures for each joinpoint (and so lots of types get the
@@ -36,6 +36,7 @@ import org.aspectj.weaver.ResolvedType;
  * subclass is created to say 'if the supertype thinks it is a match, great, but if it doesnt then if there are ITDs on the target,
  * they might match so just say 'true''. Note that returning true is just confirming whether the 'mightHaveAspect' interface (and
  * friends) are getting added.
+ * </p>
  * 
  * @author Andy Clement
  */
index 336a33e51618fab465a90125e792efaa30393ef7..98abec1465003f6cc1f939be8729169d7a65a81a 100644 (file)
@@ -16,7 +16,7 @@ package org.aspectj.weaver.patterns;
 /**
  * A Pointcut or TypePattern visitor
  *
- * @author <a href="mailto:alex AT gnilux DOT com">Alexandre Vasseur</a>
+ * @author Alexandre Vasseur (alex AT gnilux DOT com)
  */
 public interface PatternNodeVisitor {
 
index b5d4e967da7b24309defb3488ed62316ad88f9b3..100754a77caa8e5755177d0de9373e50207cfe32 100644 (file)
@@ -21,7 +21,7 @@ import org.aspectj.weaver.Shadow;
  * Foo+ (this one is a special case..) - pertarget(execution(* Foo.do()) &rarr; Foo - perthis(call(* Foo.do()) &rarr; * - perthis(!call(*
  * Foo.do()) &rarr; * (see how the ! has been absorbed here..)
  * 
- * @author <a href="mailto:alex AT gnilux DOT com">Alexandre Vasseur</a>
+ * @author Alexandre Vasseur (alex AT gnilux DOT com)
  */
 public class PerThisOrTargetPointcutVisitor extends AbstractPatternNodeVisitor {
 
index d74fa51348d948ab23291bef0cc34400a13e2471..463c24325c98743a22af5a9d79064f775ee54ef2 100644 (file)
@@ -33,8 +33,9 @@ import java.io.File;
  * requires all the files every time.  To work around this,
  * set the global property CLEAN ("build.compiler.clean") to delete
  * all .class files in the destination directory before compiling.
+ * </p>
  * 
- * <p><u>Warnings</u>: 
+ * <p><u>Warnings</u>:</p>
  * <ol>
  * <li>cleaning will not work if no destination directory
  *     is specified in the javac task.
@@ -46,7 +47,7 @@ import java.io.File;
  * <li>If no files are out of date, then the adapter is <b>never</b> called
  *     and thus cannot gain control to clean out the destination dir.
  *     </li>
- * <p>
+ * </ol>
  * 
  * @author Wes Isberg
  * @since AspectJ 1.1, Ant 1.5.1
index 141f2873bc30bf2662e20daa865659022b9ec161..34db3e9c51bda5958c182d84be321b3cc8defc12 100644 (file)
@@ -601,7 +601,7 @@ public class AjcTask extends MatchingTask {
        }
 
        /**
-        * -Xlint - set default level of -Xlint messages to warning (same as </code>-Xlint:warning</code>)
+        * -Xlint - set default level of -Xlint messages to warning (same as <code>-Xlint:warning</code>)
         */
        public void setXlintwarnings(boolean xlintwarnings) {
                cmd.addFlag("-Xlint", xlintwarnings);
index 6b0380afe3cc72f75a214d40d709f6d7c87a1fb8..7d6b2ab8dab1a71a7dab94beab2bd2846762897e 100644 (file)
@@ -59,7 +59,7 @@ public class Ajc extends DefaultCompilerAdapter {
 
     /**
      * Checks the command line for arguments allowed only in AJC and
-     * disallowed by AJC and then calls the <code>compile()<code> method.
+     * disallowed by AJC and then calls the <code>compile()</code> method.
      *
      * @return true if a good compile, false otherwise.
      * @throws org.apache.tools.ant.BuildException
index 5f20327049b2b37e337d012f9c25974021d4ca16..7ad6b6f13901b73f0621eab7aebc666cfd5191ea 100644 (file)
@@ -86,7 +86,7 @@ import org.aspectj.weaver.patterns.TypePattern;
 /**
  * Annotation defined aspect reader. Reads the Java 5 annotations and turns them into AjAttributes
  *
- * @author <a href="mailto:alex AT gnilux DOT com">Alexandre Vasseur</a>
+ * @author Alexandre Vasseur (alex AT gnilux DOT com)
  */
 public class AtAjAttributes {
 
@@ -1851,7 +1851,7 @@ public class AtAjAttributes {
         * LazyResolvedPointcutDefinition lazyly resolve the pointcut so that we have time to register all pointcut referenced before
         * pointcut resolution happens
         *
-        * @author <a href="mailto:alex AT gnilux DOT com">Alexandre Vasseur</a>
+        * @author Alexandre Vasseur (alex AT gnilux DOT com)
         */
        public static class LazyResolvedPointcutDefinition extends ResolvedPointcutDefinition {
                private final Pointcut m_pointcutUnresolved; // null for abstract
index 497df1a3a80b288adeb6181dc3422471f5775d4e..a32ea69b7844f342cc824f95a78d4a6aca4aa54d 100644 (file)
@@ -42,11 +42,13 @@ import org.aspectj.weaver.UnresolvedType;
 /**
  * Looks for all access to method or field that are not public within the body of the around advices and replace the invocations to
  * a wrapper call so that the around advice can further be inlined.
- * <p/>
+ * <p>
  * This munger is used for @AJ aspects for which inlining wrapper is not done at compile time.
- * <p/>
+ * </p>
+ * <p>
  * Specific state and logic is kept in the munger ala ITD so that call/get/set pointcuts can still be matched on the wrapped member
  * thanks to the EffectiveSignature attribute.
+ * </p>
  *
  * @author Alexandre Vasseur
  * @author Andy Clement
index 2a6523bb58224b8b01753419a5fb6eb025e010ea..0ffd9dbe9562721a96f99fd64c239695d15842e3 100644 (file)
@@ -40,7 +40,7 @@ public interface IWeavingContext {
 
        /**
         * In an OSGi environment, determin which bundle a URL originated from.
-        * In a non-OSGi environment, implementors should return <code>null<code>.
+        * In a non-OSGi environment, implementors should return <code>null</code>.
         * @param url
         * @return
         * @deprecated use getFile() or getClassLoaderName()
index 81330ed362f6f0d635f585bae322463aeb8fba75..e706b240edc2fccb56f6d25406d2ad4ebce2e2aa 100644 (file)
@@ -19,7 +19,7 @@ import java.util.Map;
 /**
  * A POJO that contains raw strings from the XML (sort of XMLBean for our simple LTW DTD)
  * 
- * @author <a href="mailto:alex AT gnilux DOT com">Alexandre Vasseur</a>
+ * @author Alexandre Vasseur (alex AT gnilux DOT com)
  */
 public class Definition {
 
index 8203584f02f02cbb0bad4ed50661b1009921462c..bb1b8880731c7ea0ccb778925218ef280ecdb667 100644 (file)
@@ -35,7 +35,7 @@ import org.aspectj.weaver.tools.TraceFactory;
  * to signal to a background thread various actions required to &quot;synchronize&quot;
  * the in-memory cache with the persisted copy. Whenever there is a cache miss
  * from the {@link #get(CachedClassReference)} call, the weaver issues a
- * {@link #put(CachedClassEntry)} call. This call has 2 side-effects:</BR>
+ * {@link #put(CachedClassEntry)} call. This call has 2 side-effects:
  * <UL>
  *             <LI>
  *             The in-memory cache is updated so that subsequent calls to {@link #get(CachedClassReference)}
index 0a018d9c898f684f02b512d4477c5187982bcfc0..f6eb1f58523115eab04656edd386a84e19d0caae 100644 (file)
@@ -15,10 +15,11 @@ package org.aspectj.weaver.tools.cache;
 /**
  * Interface for the backing to the cache; usually a file,
  * but could be an in-memory backing for testing.
- * <p/>
+ * <p>
  * aspectj and jvmti provide no suitable guarantees
  * on locking for class redefinitions, so every implementation
  * must have a some locking mechanism to prevent invalid reads.
+ * </p>
  */
 public interface CacheBacking {
        /**
index 8c76ad878e4d0122623499c68e3aee9696b86343..c729efe7fe63a83976440f72c51846949b292aa9 100644 (file)
@@ -20,10 +20,11 @@ import java.util.List;
  * a reasonable naive implementation, the management and invalidation
  * of the cache may be more usefully accomplished at the Application
  * or Container level.
- * <p/>
+ * <p>
  * The key is not a one-way hash; it must be convertible back to a
  * className and must match the regex for the type of key it is
  * (generated or weaved).
+ * </p>
  */
 public interface CacheKeyResolver {
        /**
index 430354855dcf9c27152fb68f0d4d203b942f46ad..44395840655afed37a4ad8d7c66907f5f8dbc2c3 100644 (file)
@@ -18,9 +18,10 @@ package org.aspectj.weaver.tools.cache;
  * cache entry is a simple string, but that string may contain
  * some specialized encoding. This class handles all of that
  * encoding.
- * <p/>
+ * <p>
  * External users of the cache should not be able to create these
  * objects manually.
+ * </p>
  */
 public class CachedClassReference {
        enum EntryType {
index e2d8288c473bbe56b5c85652d991a34896cb6293..11e9b2f2d43190b1480a7b62c18d237e9efd1616 100644 (file)
@@ -22,15 +22,18 @@ import java.util.zip.CRC32;
 /**
  * Naive default class and classloader hashing implementation useful
  * for some multi-classloader environments.
- * <p/>
- * This implementation creates classloader scopes of the form:<br/>
+ * <p>
+ * This implementation creates classloader scopes of the form:<br>
  * "ExampleClassLoaderName.[crc hash]"
- * <p/>
- * And weaved class keys of the form:<br/>
+ * </p>
+ * <p>
+ * And weaved class keys of the form:<br>
  * "com.foo.BarClassName.[bytes len][crc].weaved"
- * <p/>
- * And generated class keys of the form:<br/>
+ * </p>
+ * <p>
+ * And generated class keys of the form:<br>
  * "com.foo.BarClassName$AjClosure.generated
+ * </p>
  */
 public class DefaultCacheKeyResolver implements CacheKeyResolver {
        public static final String GENERATED_SUFFIX = ".generated";
index 21543a80dcc8e7b0d064b299993160939e7695c2..7bfee20683bd4a4ffe98dff01e44ee38b4184566 100644 (file)
@@ -28,20 +28,23 @@ import org.aspectj.util.LangUtil;
 /**
  * Naive File-Backed Class Cache with no expiry or application
  * centric invalidation.
- * <p/>
+ * <p>
  * Enabled with the system property, "aj.weaving.cache.dir"
  * If this system property is not set, no caching will be
  * performed.
- * <p/>
+ * </p>
+ * <p>
  * A CRC checksum is stored alongside the class file to verify
  * the bytes on read. If for some reason there is an error
  * reading either the class or crc file, or if the crc does not
  * match the class data the cache entry is deleted.
- * <p/>
+ * </p>
+ * <p>
  * An alternate implementation of this could store the class file
  * as a jar/zip directly, which would have the required crc; as
  * a first pass however it is somewhat useful to view these files
  * in expanded form for debugging.
+ * </p>
  */
 public class DefaultFileCacheBacking extends AbstractIndexedFileCacheBacking {
        private final Map<String, IndexEntry> index;
index c5c079dcfc21a7bd00889c5bd68076981defe5c5..cc05323169cc138d336ad6dee9f6494db6a11d0c 100644 (file)
@@ -27,44 +27,49 @@ import org.aspectj.weaver.tools.GeneratedClassHandler;
  * except designed to operate across multiple restarts of the JVM and with one
  * cache per classloader; allowing URLClassLoaders with the same set of URI
  * paths to share the same cache (with the default configuration).
- * <p/>
+ * <p>
  * To enable the default configuration two system properties must be set:
+ * </p>
  * <pre>
  *    "-Daj.weaving.cache.enabled=true"
  *    "-Daj.weaving.cache.dir=/some/directory"
  * </pre>
- * <p/>
+ * <p>
  * The class cache is often something that application developers or
  * containers would like to manage, so there are a few interfaces for overriding the
  * default behavior and performing other management functions.
+ * </p>
  * <p/>
- * {@link CacheBacking} <br/>
+ * {@link CacheBacking} <br>
  * Provides an interface for implementing a custom backing store
  * for the cache; The default implementation in {@link DefaultFileCacheBacking}
  * provides a naive file-backed cache. An alternate implementation may ignore
  * caching until signaled explicitly by the application, or only cache files
  * for a specific duration. This class delegates the locking and synchronization
  * requirements to the CacheBacking implementation.
- * <p/>
- * {@link CacheKeyResolver} <br/>
+ * </p>
+ * <p>
+ * {@link CacheKeyResolver} <br>
  * Provides methods for creating keys from classes to be cached and for
  * creating the "scope" of the cache itself for a given classloader and aspect
  * list. The default implementation is provided by {@link DefaultCacheKeyResolver}
  * but an alternate implementation may want to associate a cache with a particular
  * application running underneath a container.
- * <p/>
+ * </p>
+ * <p>
  * This naive cache does not normally invalidate *any* classes; the interfaces above
  * must be used to implement more intelligent behavior. Cache invalidation
  * problems may occur in at least three scenarios:
- * <pre>
- *    1. New aspects are added dynamically somewhere in the classloader hierarchy; affecting
- *       other classes elsewhere.
- *    2. Use of declare parent in aspects to change the type hierarchy; if the cache
+ * </p>
+ * <ol>
+ *    <li>New aspects are added dynamically somewhere in the classloader hierarchy; affecting
+ *       other classes elsewhere.</li>
+ *    <li>Use of declare parent in aspects to change the type hierarchy; if the cache
  *       has not invalidated the right classes in the type hierarchy aspectj may not
- *       be reconstruct the class incorrectly.
- *    3. Similarly to (2), the addition of fields or methods on classes which have
- *       already been weaved and cached could have inter-type conflicts.
- * </pre>
+ *       be reconstruct the class incorrectly.</li>
+ *    <li>Similarly to (2), the addition of fields or methods on classes which have
+ *       already been weaved and cached could have inter-type conflicts.</li>
+ * </ol>
  */
 public class WeavedClassCache {
        public static final String WEAVED_CLASS_CACHE_ENABLED = "aj.weaving.cache.enabled";