[jboss-cvs] JBossAS SVN: r71180 - projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Sun Mar 23 21:21:05 EDT 2008
Author: flavia.rainone at jboss.com
Date: 2008-03-23 21:21:05 -0400 (Sun, 23 Mar 2008)
New Revision: 71180
Modified:
projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/AllSearcher.java
projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/ConjunctiveSearchKey.java
projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/DisjunctiveSearchKey.java
projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/EmptySearchKey.java
projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/JoinPointGraph.java
projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/ParsedSearchKey.java
projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/PointcutDelegateSearchKey.java
projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/SearchKey.java
projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/SearchKeyImpl.java
projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/SearchKeyParser.java
projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/Searcher.java
projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/SimpleSearchKey.java
projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/TreeInsertionUtil.java
Log:
[JBAOP-508] Refactoring.
Modified: projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/AllSearcher.java
===================================================================
--- projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/AllSearcher.java 2008-03-24 01:19:16 UTC (rev 71179)
+++ projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/AllSearcher.java 2008-03-24 01:21:05 UTC (rev 71180)
@@ -52,9 +52,9 @@
public AllSearcher()
{
this.allMethodExecutions = new BehaviorSearcher("* *(*)",
- SearchKeyParser.EMPTY_ATTRIBUTES, SearchKeyParser.EMPTY_EXCEPTIONS, null, true);
+ ParsedSearchKey.EMPTY_ATTRIBUTES, ParsedSearchKey.EMPTY_EXCEPTIONS, null, true);
this.allMethodExecutions.setSearchType(BehaviorSearcher.SearchType.EXECUTION);
- this.allFieldAccesses = new FieldSearcher("*", SearchKeyParser.EMPTY_ATTRIBUTES, null);
+ this.allFieldAccesses = new FieldSearcher("*", ParsedSearchKey.EMPTY_ATTRIBUTES, null);
this.allFieldAccesses.setSearchType(FieldSearcher.SearchType.ALL);
}
Modified: projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/ConjunctiveSearchKey.java
===================================================================
--- projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/ConjunctiveSearchKey.java 2008-03-24 01:19:16 UTC (rev 71179)
+++ projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/ConjunctiveSearchKey.java 2008-03-24 01:21:05 UTC (rev 71180)
@@ -34,81 +34,77 @@
*/
public class ConjunctiveSearchKey extends ParsedSearchKey
{
- private ParsedSearchKey searchKey1;
- private ParsedSearchKey searchKey2;
+ private SearchKey searchKey1;
+ private SearchKey searchKey2;
- public ConjunctiveSearchKey(ParsedSearchKey searchKey1, ParsedSearchKey searchKey2)
+ public ConjunctiveSearchKey(SearchKey searchKey1, ParsedSearchKey searchKey2)
{
this.searchKey1 = searchKey1;
this.searchKey2 = searchKey2;
}
- public void addTypeRestriction(TypeFilter typeRestriction)
+ public void addTypeFilter(TypeFilter typeRestriction)
{
- searchKey2.addTypeRestriction(typeRestriction);
+ ((ParsedSearchKey) searchKey2).addTypeFilter(typeRestriction);
}
- public void addWithinRestriction(WithinSearcher withinRestriction)
+ public void addWithinSearcher(WithinSearcher withinRestriction)
{
- searchKey2.addWithinRestriction(withinRestriction);
+ ((ParsedSearchKey) searchKey2).addWithinSearcher(withinRestriction);
}
- public String getClassExpression()
+ public boolean hasSearcher()
{
- return searchKey2.getClassExpression();
+ return ((ParsedSearchKey) searchKey2).hasSearcher();
}
public void setClassExpression(String className, boolean instanceOf)
{
- searchKey2.setClassExpression(className, instanceOf);
+ ((ParsedSearchKey) searchKey2).setClassExpression(className, instanceOf);
}
- public void setClassNodeSearcher(Searcher<ClassNode> classNodeSearcher)
+ public void setSearcher(Searcher<ClassNode> classNodeSearcher)
{
- searchKey2.setClassNodeSearcher(classNodeSearcher);
+ ((ParsedSearchKey) searchKey2).setSearcher(classNodeSearcher);
}
- public void addNegativeSearchKey(ParsedSearchKey searchKey)
+ public void addNegativeSearchKey(SearchKey searchKey)
{
- searchKey2.addNegativeSearchKey(searchKey);
+ ((ParsedSearchKey) searchKey2).addNegativeSearchKey(searchKey);
}
public ParsedSearchKey finishParsing()
{
- this.searchKey2 = this.searchKey2.finishParsing();
+ this.searchKey2 = ((ParsedSearchKey) searchKey2).finishParsing();
return this;
}
public Object getLastAddedElement()
{
- return this.searchKey2.getLastAddedElement();
+ return ((ParsedSearchKey) searchKey2).getLastAddedElement();
}
public void merge(SimpleSearchKey simpleSearchKey)
{
- this.searchKey2.merge(simpleSearchKey);
+ ((ParsedSearchKey) searchKey2).merge(simpleSearchKey);
}
public void replaceNegativeSearchKey(ParsedSearchKey searchKey)
{
- this.searchKey2.replaceNegativeSearchKey(searchKey);
+ ((ParsedSearchKey) searchKey2).replaceNegativeSearchKey(searchKey);
}
- public void replaceTypeRestriction(TypeFilter restriction)
+ public void replaceTypeFilter(TypeFilter restriction)
{
- this.searchKey2.replaceTypeRestriction(restriction);
+ ((ParsedSearchKey) searchKey2).replaceTypeFilter(restriction);
}
- public void replaceWithinRestriction(WithinSearcher restriction)
+ public void replaceWithinSearcher(WithinSearcher restriction)
{
- this.searchKey2.replaceWithinRestriction(restriction);
+ ((ParsedSearchKey) searchKey2).replaceWithinSearcher(restriction);
}
- /* (non-Javadoc)
- * @see org.jboss.aop.joinpoint.graph.ParsedSearchKey#search(org.jboss.aop.joinpoint.graph.tree.Tree, java.util.Collection)
- */
- @Override
- void search(Tree<ClassNode> classTree, Collection<JoinPointInfo> result)
+ public void search(Tree<ClassNode> classTree, Collection<JoinPointInfo> result)
{
Set<JoinPointInfo> firstResult = new HashSet<JoinPointInfo>();
this.searchKey1.search(classTree, firstResult);
Modified: projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/DisjunctiveSearchKey.java
===================================================================
--- projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/DisjunctiveSearchKey.java 2008-03-24 01:19:16 UTC (rev 71179)
+++ projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/DisjunctiveSearchKey.java 2008-03-24 01:21:05 UTC (rev 71180)
@@ -32,78 +32,77 @@
*/
public class DisjunctiveSearchKey extends ParsedSearchKey
{
- private ParsedSearchKey searchKey1;
- private ParsedSearchKey searchKey2;
+ private SearchKey searchKey1;
+ private SearchKey searchKey2;
- public DisjunctiveSearchKey(ParsedSearchKey searchKey1, ParsedSearchKey searchKey2)
+ public DisjunctiveSearchKey(SearchKey searchKey1, SearchKey searchKey2)
{
this.searchKey1 = searchKey1;
this.searchKey2 = searchKey2;
}
- public void addTypeRestriction(TypeFilter typeRestriction)
+ public void addTypeFilter(TypeFilter typeRestriction)
{
- searchKey2.addTypeRestriction(typeRestriction);
+ ((ParsedSearchKey) searchKey2).addTypeFilter(typeRestriction);
}
- public void addWithinRestriction(WithinSearcher withinRestriction)
+ public void addWithinSearcher(WithinSearcher withinRestriction)
{
- searchKey2.addWithinRestriction(withinRestriction);
+ ((ParsedSearchKey) searchKey2).addWithinSearcher(withinRestriction);
}
- public String getClassExpression()
+ public boolean hasSearcher()
{
- return searchKey2.getClassExpression();
+ return ((ParsedSearchKey) searchKey2).hasSearcher();
}
public void setClassExpression(String className, boolean instanceOf)
{
- searchKey2.setClassExpression(className, instanceOf);
+ ((ParsedSearchKey) searchKey2).setClassExpression(className, instanceOf);
}
- public void setClassNodeSearcher(Searcher<ClassNode> classNodeSearcher)
+ public void setSearcher(Searcher<ClassNode> classNodeSearcher)
{
- searchKey2.setClassNodeSearcher(classNodeSearcher);
+ ((ParsedSearchKey) searchKey2).setSearcher(classNodeSearcher);
}
- public void addNegativeSearchKey(ParsedSearchKey searchKey)
+ public void addNegativeSearchKey(SearchKey searchKey)
{
- searchKey2.addNegativeSearchKey(searchKey);
+ ((ParsedSearchKey) searchKey2).addNegativeSearchKey(searchKey);
}
- public ParsedSearchKey finishParsing()
+ public SearchKey finishParsing()
{
- this.searchKey2 = this.searchKey2.finishParsing();
+ this.searchKey2 = ((ParsedSearchKey) searchKey2).finishParsing();
return this;
}
public Object getLastAddedElement()
{
- return this.searchKey2.getLastAddedElement();
+ return ((ParsedSearchKey) searchKey2).getLastAddedElement();
}
public void merge(SimpleSearchKey simpleSearchKey)
{
- this.searchKey2.merge(simpleSearchKey);
+ ((ParsedSearchKey) searchKey2).merge(simpleSearchKey);
}
public void replaceNegativeSearchKey(ParsedSearchKey searchKey)
{
- this.searchKey2.replaceNegativeSearchKey(searchKey);
+ ((ParsedSearchKey) searchKey2).replaceNegativeSearchKey(searchKey);
}
- public void replaceTypeRestriction(TypeFilter restriction)
+ public void replaceTypeFilter(TypeFilter restriction)
{
- this.searchKey2.replaceTypeRestriction(restriction);
+ ((ParsedSearchKey) searchKey2).replaceTypeFilter(restriction);
}
- public void replaceWithinRestriction(WithinSearcher restriction)
+ public void replaceWithinSearcher(WithinSearcher restriction)
{
- this.searchKey2.replaceWithinRestriction(restriction);
+ ((ParsedSearchKey) searchKey2).replaceWithinSearcher(restriction);
}
- @Override
- void search(Tree<ClassNode> classTree, Collection<JoinPointInfo> result)
+ public void search(Tree<ClassNode> classTree, Collection<JoinPointInfo> result)
{
this.searchKey1.search(classTree, result);
this.searchKey2.search(classTree, result);
Modified: projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/EmptySearchKey.java
===================================================================
--- projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/EmptySearchKey.java 2008-03-24 01:19:16 UTC (rev 71179)
+++ projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/EmptySearchKey.java 2008-03-24 01:21:05 UTC (rev 71180)
@@ -27,117 +27,17 @@
import org.jboss.aop.joinpoint.graph.tree.Tree;
/**
+ * Searchs for nothing.
+ *
+ * This search key is used when a parsed search key has incompatible restrictions,
+ * resulting in a search key that will find nothing in the end.
+ *
* @author <a href="flavia.rainone at jboss.com">Flavia Rainone</a>
- *
*/
-class EmptySearchKey extends ParsedSearchKey
+class EmptySearchKey extends SearchKey
{
- public void addNegativeSearchKey(ParsedSearchKey searchKey)
+ public void search(Tree<ClassNode> classTree, Collection<JoinPointInfo> result)
{
- }
-
- public void addTypeRestriction(TypeFilter typeRestriction)
- {
- }
-
- /* (non-Javadoc)
- * @see org.jboss.aop.joinpoint.graph.ParsedSearchKey#addWithinRestriction(org.jboss.aop.joinpoint.graph.WithinSearcher)
- */
- public void addWithinRestriction(WithinSearcher withinRestriction)
- {
- // TODO Auto-generated method stub
-
- }
-
- /* (non-Javadoc)
- * @see org.jboss.aop.joinpoint.graph.ParsedSearchKey#getClassExpression()
- */
- public String getClassExpression()
- {
- // TODO Auto-generated method stub
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.jboss.aop.joinpoint.graph.ParsedSearchKey#getLastAddedElement()
- */
- public Object getLastAddedElement()
- {
- // TODO Auto-generated method stub
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.jboss.aop.joinpoint.graph.ParsedSearchKey#parsed()
- */
- public void parsed()
- {
- // TODO Auto-generated method stub
-
- }
-
- /* (non-Javadoc)
- * @see org.jboss.aop.joinpoint.graph.ParsedSearchKey#replaceNegativeSearchKey(org.jboss.aop.joinpoint.graph.ParsedSearchKey)
- */
- public void replaceNegativeSearchKey(ParsedSearchKey searchKey)
- {
- // TODO Auto-generated method stub
-
- }
-
- /* (non-Javadoc)
- * @see org.jboss.aop.joinpoint.graph.ParsedSearchKey#replaceTypeRestriction(org.jboss.aop.joinpoint.graph.TypeFilter)
- */
- public void replaceTypeRestriction(TypeFilter restriction)
- {
- // TODO Auto-generated method stub
-
- }
-
- /* (non-Javadoc)
- * @see org.jboss.aop.joinpoint.graph.ParsedSearchKey#replaceWithinRestriction(org.jboss.aop.joinpoint.graph.WithinSearcher)
- */
- public void replaceWithinRestriction(WithinSearcher restriction)
- {
- // TODO Auto-generated method stub
-
- }
-
- /* (non-Javadoc)
- * @see org.jboss.aop.joinpoint.graph.ParsedSearchKey#setClassExpression(java.lang.String, boolean)
- */
- public void setClassExpression(String className, boolean instanceOf)
- {
- // TODO Auto-generated method stub
-
- }
-
- /* (non-Javadoc)
- * @see org.jboss.aop.joinpoint.graph.ParsedSearchKey#setClassNodeSearcher(org.jboss.aop.joinpoint.graph.ClassNodeSearcher)
- */
- public void setClassNodeSearcher(Searcher<ClassNode> classNodeSearcher)
- {
- // TODO Auto-generated method stub
-
- }
-
- /* (non-Javadoc)
- * @see org.jboss.aop.joinpoint.graph.ParsedSearchKey#finishParsing()
- */
- public ParsedSearchKey finishParsing()
- {
- // TODO Auto-generated method stub
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.jboss.aop.joinpoint.graph.ParsedSearchKey#merge(org.jboss.aop.joinpoint.graph.SearchKeyImpl)
- */
- public void merge(SimpleSearchKey simpleSearchKey){}
-
- @Override
- void search(Tree<ClassNode> classTree, Collection<JoinPointInfo> result)
- {
// do nothing
}
}
\ No newline at end of file
Modified: projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/JoinPointGraph.java
===================================================================
--- projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/JoinPointGraph.java 2008-03-24 01:19:16 UTC (rev 71179)
+++ projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/JoinPointGraph.java 2008-03-24 01:21:05 UTC (rev 71180)
@@ -36,6 +36,7 @@
import org.jboss.aop.MethodByConInfo;
import org.jboss.aop.MethodByMethodInfo;
import org.jboss.aop.MethodInfo;
+import org.jboss.aop.joinpoint.JoinPointRegistry;
import org.jboss.aop.joinpoint.graph.tree.Tree;
/**
@@ -43,7 +44,7 @@
*
* @author <a href="flavia.rainone at jboss.com">Flavia Rainone</a>
*/
-public class JoinPointGraph
+public class JoinPointGraph implements JoinPointRegistry
{
private static final JoinPointGraph INSTANCE = new JoinPointGraph();
Modified: projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/ParsedSearchKey.java
===================================================================
--- projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/ParsedSearchKey.java 2008-03-24 01:19:16 UTC (rev 71179)
+++ projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/ParsedSearchKey.java 2008-03-24 01:21:05 UTC (rev 71180)
@@ -1,25 +1,81 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package org.jboss.aop.joinpoint.graph;
+import java.util.ArrayList;
import java.util.Collection;
-import org.jboss.aop.JoinPointInfo;
-import org.jboss.aop.joinpoint.graph.tree.Tree;
+import org.jboss.aop.pointcut.ast.ASTAttribute;
+import org.jboss.aop.pointcut.ast.ASTException;
+/**
+ * SearchKey used during search key parsing.
+ *
+ * @author <a href="flavia.rainone at jboss.com">Flavia Rainone</a>
+ */
abstract class ParsedSearchKey extends SearchKey
{
- abstract String getClassExpression();
-
- abstract void setClassExpression(String className, boolean instanceOf);
- abstract void addTypeRestriction(TypeFilter typeRestriction);
- abstract void addWithinRestriction(WithinSearcher withinRestriction);
- abstract void setClassNodeSearcher(Searcher<ClassNode> classNodeSearcher);
- abstract void addNegativeSearchKey(ParsedSearchKey searchKey);
+ static final Collection<ASTAttribute> EMPTY_ATTRIBUTES = new ArrayList<ASTAttribute>(0);
+ static final Collection<ASTException> EMPTY_EXCEPTIONS = new ArrayList<ASTException>(0);
+
+
+ /**
+ * Indicates whether this parsed search key has a main searcher defined. If it has
+ * not, then this search key is partially filled, and has only filters and
+ * auxiliary searchers defined.
+ *
+ * @return {@code true} if this parsed search key has a main searcher defined
+ */
+ abstract boolean hasSearcher();
+
+ /**
+ * Defines the class search expression.
+ *
+ * @param classExpression the class search expression. May contain wildcards, and
+ * may also start with {@code '@'} to indicate a metadata
+ * search
+ * @param instanceOf if {@code true}, indicates that this search key should
+ * search for all classes that match
+ * {@code classExpression}, and for their subclasses as
+ * well.
+ */
+ abstract void setClassExpression(String classExpression, boolean instanceOf);
+
+ /**
+ *
+ * @param classNodeSearcher
+ */
+ abstract void setSearcher(Searcher<ClassNode> classNodeSearcher);
+
+
+ abstract void addTypeFilter(TypeFilter typeFilter);
+ abstract void addWithinSearcher(WithinSearcher withinSearcher);
+
+ abstract void addNegativeSearchKey(SearchKey searchKey);
abstract Object getLastAddedElement();
- abstract void replaceTypeRestriction(TypeFilter restriction);
- abstract void replaceWithinRestriction(WithinSearcher restriction);
+ abstract void replaceTypeFilter(TypeFilter typeFilter);
+ abstract void replaceWithinSearcher(WithinSearcher restriction);
abstract void replaceNegativeSearchKey(ParsedSearchKey searchKey);
abstract void merge(SimpleSearchKey simpleSearchKey);
- abstract ParsedSearchKey finishParsing();
- abstract void search(Tree<ClassNode> classTree, Collection<JoinPointInfo> result);
+ abstract SearchKey finishParsing();
}
\ No newline at end of file
Modified: projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/PointcutDelegateSearchKey.java
===================================================================
--- projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/PointcutDelegateSearchKey.java 2008-03-24 01:19:16 UTC (rev 71179)
+++ projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/PointcutDelegateSearchKey.java 2008-03-24 01:21:05 UTC (rev 71180)
@@ -47,6 +47,11 @@
{
this.pointcut = pointcut;
}
+
+ public boolean hasSearcher()
+ {
+ throw new RuntimeException("UNEXPECTED");
+ }
/* (non-Javadoc)
* @see org.jboss.aop.joinpoint.graph.ParsedSearchKey#finishParsing()
@@ -54,41 +59,28 @@
@Override
ParsedSearchKey finishParsing()
{
- // TODO Auto-generated method stub
- return null;
+ throw new RuntimeException("UNEXPECTED");
}
- @Override
- String getClassExpression()
- {
- return "*";
- }
-
/* (non-Javadoc)
* @see org.jboss.aop.joinpoint.graph.ParsedSearchKey#setClassExpression(java.lang.String, boolean)
*/
@Override
void setClassExpression(String className, boolean instanceOf)
{
- // TODO Auto-generated method stub
-
+ throw new RuntimeException("UNEXPECTED");
}
/* (non-Javadoc)
* @see org.jboss.aop.joinpoint.graph.ParsedSearchKey#setClassNodeSearcher(org.jboss.aop.joinpoint.graph.ClassNodeSearcher)
*/
@Override
- void setClassNodeSearcher(Searcher<ClassNode> classNodeSearcher)
+ void setSearcher(Searcher<ClassNode> classNodeSearcher)
{
- // TODO Auto-generated method stub
-
+ throw new RuntimeException("UNEXPECTED");
}
- /* (non-Javadoc)
- * @see org.jboss.aop.joinpoint.graph.ParsedSearchKey#search(org.jboss.aop.joinpoint.graph.tree.Tree, java.util.Collection)
- */
- @Override
- void search(Tree<ClassNode> classTree, Collection<JoinPointInfo> result)
+ public void search(Tree<ClassNode> classTree, Collection<JoinPointInfo> result)
{
Collection<ClassNode> allClasses = classTree.search("*");
for (ClassNode classNode: allClasses)
Modified: projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/SearchKey.java
===================================================================
--- projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/SearchKey.java 2008-03-24 01:19:16 UTC (rev 71179)
+++ projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/SearchKey.java 2008-03-24 01:21:05 UTC (rev 71180)
@@ -21,11 +21,15 @@
*/
package org.jboss.aop.joinpoint.graph;
+import org.jboss.aop.joinpoint.graph.tree.Tree;
+
/**
+ * The {@JoinPointGraph} search key.
+ *
* @author <a href="flavia.rainone at jboss.com">Flavia Rainone</a>
- *
*/
-public class SearchKey
+public abstract class SearchKey implements Searcher<Tree<ClassNode>>
{
+ // make sure it does not get extended
SearchKey(){}
}
\ No newline at end of file
Modified: projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/SearchKeyImpl.java
===================================================================
--- projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/SearchKeyImpl.java 2008-03-24 01:19:16 UTC (rev 71179)
+++ projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/SearchKeyImpl.java 2008-03-24 01:21:05 UTC (rev 71180)
@@ -34,7 +34,7 @@
class SearchKeyImpl extends SimpleSearchKey
{
private String classExpression;
- private Searcher<ClassNode> classNodeSearcher;
+ private Searcher<ClassNode> searcher;
public void search(Tree<ClassNode> classTree, Collection<JoinPointInfo> result)
@@ -43,61 +43,51 @@
classTree.search(classExpression, classes);
outer: for (ClassNode classNode: classes)
{
- for (TypeFilter restriction: typeRestrictions)
+ for (TypeFilter restriction: typeFilters)
{
if (!restriction.accept(classNode.getRepresentedClass(), classNode.getAdvisor()))
{
continue outer;
}
}
- classNodeSearcher.search(classNode, result);
+ searcher.search(classNode, result);
}
}
- public String getClassExpression()
- {
- return this.classExpression;
- }
-
-
public void setClassExpression(String className, boolean instanceOf)
{
this.classExpression = instanceOf? className + "+": className;
}
- Searcher<ClassNode> getClassNodeSearcher()
+ public void setSearcher(Searcher<ClassNode> searcher)
{
- return classNodeSearcher;
+ super.lastElementAdded = searcher;
+ this.searcher = searcher;
}
- public void setClassNodeSearcher(Searcher<ClassNode> classNodeSearcher)
+ public SearchKey finishParsing()
{
- this.classNodeSearcher = classNodeSearcher;
- }
-
- public ParsedSearchKey finishParsing()
- {
- if (this.withinRestrictions != null)
+ if (this.withinSearchers != null)
{
if (this.classExpression == null)
{
this.classExpression = "*";
BehaviorSearcher behaviourSearcher =
- new BehaviorSearcher("*", SearchKeyParser.EMPTY_ATTRIBUTES,
- SearchKeyParser.EMPTY_EXCEPTIONS, null, true);
+ new BehaviorSearcher("*", ParsedSearchKey.EMPTY_ATTRIBUTES,
+ ParsedSearchKey.EMPTY_EXCEPTIONS, null, true);
behaviourSearcher.setSearchType(BehaviorSearcher.SearchType.CALL);
((CallSearcher) behaviourSearcher.getInternalSearcher()).
- setWithinRestrictionList(this.withinRestrictions);
- this.classNodeSearcher = behaviourSearcher;
+ setWithinRestrictionList(this.withinSearchers);
+ this.searcher = behaviourSearcher;
return this;
}
- if (this.classNodeSearcher instanceof BehaviorSearcher &&
- ((BehaviorSearcher) this.classNodeSearcher).getInternalSearcher()
+ if (this.searcher instanceof BehaviorSearcher &&
+ ((BehaviorSearcher) this.searcher).getInternalSearcher()
instanceof CallSearcher)
{
CallSearcher callSearcher = (CallSearcher) ((BehaviorSearcher)
- this.classNodeSearcher).getInternalSearcher();
- callSearcher.setWithinRestrictionList(this.withinRestrictions);
+ this.searcher).getInternalSearcher();
+ callSearcher.setWithinRestrictionList(this.withinSearchers);
return this;
}
return new EmptySearchKey();
@@ -106,17 +96,17 @@
{
this.classExpression = "*";
BehaviorSearcher behaviourSearcher =
- new BehaviorSearcher("*", SearchKeyParser.EMPTY_ATTRIBUTES,
- SearchKeyParser.EMPTY_EXCEPTIONS, null, true);
+ new BehaviorSearcher("*", ParsedSearchKey.EMPTY_ATTRIBUTES,
+ ParsedSearchKey.EMPTY_EXCEPTIONS, null, true);
behaviourSearcher.setSearchType(BehaviorSearcher.SearchType.ALL);
- this.classNodeSearcher = behaviourSearcher;
+ this.searcher = behaviourSearcher;
SearchKeyImpl fieldSearchKey = new SearchKeyImpl();
fieldSearchKey.classExpression = "*";
FieldSearcher fieldSearcher = new FieldSearcher("*",
- SearchKeyParser.EMPTY_ATTRIBUTES, null);
+ ParsedSearchKey.EMPTY_ATTRIBUTES, null);
fieldSearcher.setSearchType(FieldSearcher.SearchType.ALL);
- fieldSearchKey.classNodeSearcher = fieldSearcher;
- fieldSearchKey.typeRestrictions = this.typeRestrictions;
+ fieldSearchKey.searcher = fieldSearcher;
+ fieldSearchKey.typeFilters = this.typeFilters;
fieldSearchKey.negativeSearchKeys = this.negativeSearchKeys;
return new DisjunctiveSearchKey(this, fieldSearchKey);
}
@@ -124,8 +114,13 @@
{
this.classExpression = this.classExpression.substring(0,
classExpression.length() - 1);
- this.classNodeSearcher = new SubtypeSearcher(this.classNodeSearcher);
+ this.searcher = new SubtypeSearcher(this.searcher);
}
return this;
}
+
+ boolean hasSearcher()
+ {
+ return this.searcher != null;
+ }
}
\ No newline at end of file
Modified: projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/SearchKeyParser.java
===================================================================
--- projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/SearchKeyParser.java 2008-03-24 01:19:16 UTC (rev 71179)
+++ projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/SearchKeyParser.java 2008-03-24 01:21:05 UTC (rev 71180)
@@ -21,7 +21,6 @@
*/
package org.jboss.aop.joinpoint.graph;
-import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
@@ -74,19 +73,21 @@
{
private static SearchKeyParser INSTANCE = new SearchKeyParser();
- static final Collection<ASTAttribute> EMPTY_ATTRIBUTES = new ArrayList<ASTAttribute>(0);
- static final Collection<ASTException> EMPTY_EXCEPTIONS = new ArrayList<ASTException>(0);
-
- public static SearchKey parse(PointcutExpression pointcutExpression)
+ public static SearchKey parse(Pointcut pointcut)
{
- return INSTANCE.visit(pointcutExpression.getParsedExpression(), null);
+ if (pointcut instanceof PointcutExpression)
+ {
+ return INSTANCE.visit(((PointcutExpression) pointcut).getParsedExpression(),
+ null);
+ }
+ return new PointcutDelegateSearchKey(pointcut);
}
private SearchKeyParser() {}
/* START AST NODE ***************************************************************/
- public ParsedSearchKey visit(ASTStart node, Object data)
+ public SearchKey visit(ASTStart node, Object data)
{
ParsedSearchKey searchKey = new SearchKeyImpl();
searchKey = this.visitSubNode(node, searchKey);
@@ -100,7 +101,7 @@
ParsedSearchKey searchKey = (ParsedSearchKey) data;
ParsedSearchKey result = (ParsedSearchKey)
node.jjtGetChild(0).jjtAccept(this, new SearchKeyImpl());
- if (result.getClassExpression() == null && result instanceof SearchKeyImpl)
+ if (!result.hasSearcher() && result instanceof SearchKeyImpl)
{
searchKey.merge((SearchKeyImpl) result);
return searchKey;
@@ -156,11 +157,11 @@
{
if (result instanceof TypeFilter)
{
- searchKey.addTypeRestriction((TypeFilter) result);
+ searchKey.addTypeFilter((TypeFilter) result);
}
else if (result instanceof WithinSearcher)
{
- searchKey.addWithinRestriction((WithinSearcher) result);
+ searchKey.addWithinSearcher((WithinSearcher) result);
}
else // result intanceof ParsedSearchKey
{
@@ -181,7 +182,7 @@
searchKey.getLastAddedElement() != null &&
searchKey.getLastAddedElement() instanceof TypeFilter)
{
- searchKey.replaceTypeRestriction(new DisjunctiveTypeFilter(
+ searchKey.replaceTypeFilter(new DisjunctiveTypeFilter(
(TypeFilter) searchKey.getLastAddedElement(),
(TypeFilter) result));
return searchKey;
@@ -190,25 +191,24 @@
searchKey.getLastAddedElement() != null &&
searchKey.getLastAddedElement() instanceof WithinSearcher)
{
- searchKey.replaceWithinRestriction(new DisjunctiveWithinSearcher(
+ searchKey.replaceWithinSearcher(new DisjunctiveWithinSearcher(
(WithinSearcher) searchKey.getLastAddedElement(),
(WithinSearcher) result));
return searchKey;
}
else if(result instanceof ParsedSearchKey)
{
- ParsedSearchKey resultSearchKey = (ParsedSearchKey) result;
return new DisjunctiveSearchKey(searchKey.finishParsing(), (ParsedSearchKey) result);
}
else // partially filled ParsedSearchKey
{
if (result instanceof TypeFilter)
{
- newSearchKey.addTypeRestriction((TypeFilter) result);
+ newSearchKey.addTypeFilter((TypeFilter) result);
}
else
{
- newSearchKey.addWithinRestriction((WithinSearcher) result);
+ newSearchKey.addWithinSearcher((WithinSearcher) result);
}
return new DisjunctiveSearchKey(searchKey.finishParsing(), newSearchKey);
}
@@ -226,12 +226,12 @@
{
ParsedSearchKey key = (ParsedSearchKey) data;
ParsedSearchKey returnValue = null;
- if (key.getClassExpression() != null)
+ if (key.hasSearcher())
{
returnValue = key = new SearchKeyImpl();
}
this.setClassExpression(key, node.getClazz());
- key.setClassNodeSearcher(AllSearcher.getInstance());
+ key.setSearcher(AllSearcher.getInstance());
return returnValue;
}
@@ -240,14 +240,14 @@
{
ParsedSearchKey key = (ParsedSearchKey) data;
ParsedSearchKey returnValue = null;
- if (key.getClassExpression() != null)
+ if (key.hasSearcher())
{
returnValue = key = new SearchKeyImpl();
}
FieldSearcher searcher = (FieldSearcher) node.jjtGetChild(0).jjtAccept(this,
key);
searcher.setSearchType(FieldSearcher.SearchType.READ);
- key.setClassNodeSearcher(searcher);
+ key.setSearcher(searcher);
return returnValue;
}
@@ -255,14 +255,14 @@
{
ParsedSearchKey key = (ParsedSearchKey) data;
ParsedSearchKey returnValue = null;
- if (key.getClassExpression() != null)
+ if (key.hasSearcher())
{
returnValue = key = new SearchKeyImpl();
}
FieldSearcher searcher = (FieldSearcher) node.jjtGetChild(0).jjtAccept(this,
key);
searcher.setSearchType(FieldSearcher.SearchType.WRITE);
- key.setClassNodeSearcher(searcher);
+ key.setSearcher(searcher);
return returnValue;
}
@@ -270,14 +270,14 @@
{
ParsedSearchKey key = (ParsedSearchKey) data;
ParsedSearchKey returnValue = null;
- if (key.getClassExpression() != null)
+ if (key.hasSearcher())
{
returnValue = key = new SearchKeyImpl();
}
FieldSearcher searcher = (FieldSearcher) node.jjtGetChild(0).jjtAccept(this,
key);
searcher.setSearchType(FieldSearcher.SearchType.ALL);
- key.setClassNodeSearcher(searcher);
+ key.setSearcher(searcher);
return returnValue;
}
@@ -288,14 +288,14 @@
{
ParsedSearchKey key = (ParsedSearchKey) data;
ParsedSearchKey returnValue = null;
- if (key.getClassExpression() != null)
+ if (key.hasSearcher())
{
returnValue = key = new SearchKeyImpl();
}
BehaviorSearcher searcher = (BehaviorSearcher) node.jjtGetChild(0)
.jjtAccept(this, key);
searcher.setSearchType(BehaviorSearcher.SearchType.CONSTRUCTION);
- key.setClassNodeSearcher(searcher);
+ key.setSearcher(searcher);
return returnValue;
}
@@ -306,14 +306,14 @@
{
ParsedSearchKey key = (ParsedSearchKey) data;
ParsedSearchKey returnValue = null;
- if (key.getClassExpression() != null)
+ if (key.hasSearcher())
{
returnValue = key = new SearchKeyImpl();
}
BehaviorSearcher searcher = (BehaviorSearcher) node.jjtGetChild(0)
.jjtAccept(this, key);
searcher.setSearchType(BehaviorSearcher.SearchType.EXECUTION);
- key.setClassNodeSearcher(searcher);
+ key.setSearcher(searcher);
return returnValue;
}
@@ -324,7 +324,7 @@
{
ParsedSearchKey key = (ParsedSearchKey) data;
ParsedSearchKey returnValue = null;
- if (key.getClassExpression() != null)
+ if (key.hasSearcher())
{
returnValue = key = new SearchKeyImpl();
}
@@ -332,7 +332,7 @@
.jjtAccept(this, key);
searcher.setSearchType(BehaviorSearcher.SearchType.CALL);
- key.setClassNodeSearcher(searcher);
+ key.setSearcher(searcher);
return returnValue;
}
@@ -344,11 +344,11 @@
StringBuffer callerExpression = new StringBuffer();
callerExpression.append("*");
ClassExpression restriction = appendType(node.getClazz(), callerExpression);
- callerExpression.append(".(*)");
+ callerExpression.append(".*(*)");
if (restriction != null)
{
return WithinSearcherFactory.create(callerExpression.toString(),
- EMPTY_ATTRIBUTES, EMPTY_EXCEPTIONS,
+ ParsedSearchKey.EMPTY_ATTRIBUTES, ParsedSearchKey.EMPTY_EXCEPTIONS,
new TargetTypeFilter(restriction));
}
return WithinSearcherFactory.create(callerExpression.toString());
@@ -361,18 +361,12 @@
public Object visit(ASTHas node, Object data)
{
- SimpleNode n = (SimpleNode) node.jjtGetChild(0);
- ParsedSearchKey searchKey = (ParsedSearchKey) data;
- searchKey.addTypeRestriction(new HasBehaviorFilter(n));
- return null;
+ return new HasBehaviorFilter((SimpleNode) node.jjtGetChild(0));
}
public Object visit(ASTHasField node, Object data)
{
- ASTField astField = (ASTField) node.jjtGetChild(0);
- ParsedSearchKey searchKey = (ParsedSearchKey) data;
- searchKey.addTypeRestriction(new HasFieldFilter(astField));
- return null;
+ return new HasFieldFilter((ASTField) node.jjtGetChild(0));
}
@@ -580,7 +574,8 @@
expression.append('*');
if (behaviourFilter != null)
{
- behaviourFilter = new ConjunctiveBehaviorFilter(behaviourFilter, new OverridenMethodFilter(identifier));
+ behaviourFilter = new ConjunctiveBehaviorFilter(behaviourFilter,
+ new OverridenMethodFilter(identifier));
}
else
{
@@ -606,8 +601,6 @@
return behaviourFilter;
}
-
-
private ClassExpression appendType(ClassExpression type, StringBuffer buffer)
{
// check return type
@@ -648,7 +641,7 @@
Typedef typedef = TypedefParser.getTypedef(classExpression);
String expression = TypedefParser.parse(typedef);
searchKey.setClassExpression(expression, false);
- searchKey.addTypeRestriction(new TypedefFilter(typedef));
+ searchKey.addTypeFilter(new TypedefFilter(typedef));
}
private BehaviorFilter printParameters(StringBuffer expression,
@@ -663,8 +656,8 @@
BehaviorFilter beforeWildcardFilter = null;
Iterator<ASTParameter> iterator = parameters.iterator();
- for (ASTParameter parameter = iterator.next(); iterator.hasNext(); parameter = iterator
- .next(), currentIndex++)
+ for (ASTParameter parameter = iterator.next(); iterator.hasNext();
+ parameter = iterator.next(), currentIndex++)
{
// found wildcard
if (parameter.isAnyZeroOrMoreParameters())
@@ -728,7 +721,7 @@
}
- /**** OTHER METHODS ****/
+ /* OTHER METHODS ****************************************************************/
public Object visit(SimpleNode node, Object data)
{
Modified: projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/Searcher.java
===================================================================
--- projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/Searcher.java 2008-03-24 01:19:16 UTC (rev 71179)
+++ projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/Searcher.java 2008-03-24 01:21:05 UTC (rev 71180)
@@ -32,14 +32,15 @@
*
* @param <N> the target of the searcher
*/
-interface Searcher<N extends Node>
+interface Searcher<T>
{
/**
- * Performs a search on {@code node}, adding the search result to
+ * Performs a search on {@code target}, adding the search result to
* {@code searchResult}.
*
- * @param node a node in the graph
+ * @param target the target of the search, may be a node or a tree in the
+ * graph
* @param searchResult collection to where the search result will be added.
*/
- public void search(N node, Collection<JoinPointInfo> searchResult);
+ public void search(T target, Collection<JoinPointInfo> searchResult);
}
\ No newline at end of file
Modified: projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/SimpleSearchKey.java
===================================================================
--- projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/SimpleSearchKey.java 2008-03-24 01:19:16 UTC (rev 71179)
+++ projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/SimpleSearchKey.java 2008-03-24 01:21:05 UTC (rev 71180)
@@ -22,54 +22,46 @@
package org.jboss.aop.joinpoint.graph;
import java.util.ArrayList;
-import java.util.Collection;
/**
+ * A search key that does not wraps an internal search key.
+ *
* @author <a href="flavia.rainone at jboss.com">Flavia Rainone</a>
- *
*/
abstract class SimpleSearchKey extends ParsedSearchKey
{
- protected ArrayList<TypeFilter> typeRestrictions;
- protected ArrayList<WithinSearcher> withinRestrictions;
- protected ArrayList<ParsedSearchKey> negativeSearchKeys;
- private Object lastElementAdded = null;
+ protected ArrayList<TypeFilter> typeFilters;
+ protected ArrayList<WithinSearcher> withinSearchers;
+ protected ArrayList<SearchKey> negativeSearchKeys;
+ protected Object lastElementAdded = null;
- public void addTypeRestriction(TypeFilter typeRestriction)
+
+ public void addTypeFilter(TypeFilter typeRestriction)
{
- if (typeRestrictions == null)
+ if (typeFilters == null)
{
- typeRestrictions = new ArrayList<TypeFilter>(1);
+ typeFilters = new ArrayList<TypeFilter>(1);
}
- typeRestrictions.add(typeRestriction);
+ typeFilters.add(typeRestriction);
lastElementAdded = typeRestriction;
}
- public Collection<TypeFilter> getTypeRestrictions()
- {
- return this.typeRestrictions;
- }
- public void addWithinRestriction(WithinSearcher withinRestriction)
+ public void addWithinSearcher(WithinSearcher withinSearcher)
{
- if (withinRestrictions == null)
+ if (withinSearchers == null)
{
- withinRestrictions = new ArrayList<WithinSearcher>(1);
+ withinSearchers = new ArrayList<WithinSearcher>(1);
}
- withinRestrictions.add(withinRestriction);
- lastElementAdded = withinRestriction;
+ withinSearchers.add(withinSearcher);
+ lastElementAdded = withinSearcher;
}
- Collection<WithinSearcher> getWithinRestrictions()
+ public void addNegativeSearchKey(SearchKey searchKey)
{
- return this.withinRestrictions;
- }
-
- public void addNegativeSearchKey(ParsedSearchKey searchKey)
- {
if (this.negativeSearchKeys != null)
{
- this.negativeSearchKeys = new ArrayList<ParsedSearchKey>(1);
+ this.negativeSearchKeys = new ArrayList<SearchKey>(1);
}
this.negativeSearchKeys.add(searchKey);
this.lastElementAdded = searchKey;
@@ -80,43 +72,46 @@
return this.lastElementAdded;
}
- public void replaceTypeRestriction(TypeFilter restriction)
+ public void replaceTypeFilter(TypeFilter typeFilter)
{
- this.typeRestrictions.set(typeRestrictions.size() -1, restriction);
+ this.typeFilters.set(typeFilters.size() -1, typeFilter);
+ this.lastElementAdded = typeFilter;
}
- public void replaceWithinRestriction(WithinSearcher restriction)
+ public void replaceWithinSearcher(WithinSearcher withinSearcher)
{
- this.withinRestrictions.set(withinRestrictions.size() -1, restriction);
+ this.withinSearchers.set(withinSearchers.size() -1, withinSearcher);
+ this.lastElementAdded = withinSearcher;
}
public void replaceNegativeSearchKey(ParsedSearchKey searchKey)
{
this.negativeSearchKeys.set(negativeSearchKeys.size() -1, searchKey);
+ this.lastElementAdded = searchKey;
}
public void merge(SimpleSearchKey simpleSearchKey)
{
- if (simpleSearchKey.typeRestrictions != null)
+ if (simpleSearchKey.typeFilters != null)
{
- if (this.typeRestrictions == null)
+ if (this.typeFilters == null)
{
- this.typeRestrictions = simpleSearchKey.typeRestrictions;
+ this.typeFilters = simpleSearchKey.typeFilters;
}
else
{
- this.typeRestrictions.addAll(simpleSearchKey.typeRestrictions);
+ this.typeFilters.addAll(simpleSearchKey.typeFilters);
}
}
- if (simpleSearchKey.withinRestrictions != null)
+ if (simpleSearchKey.withinSearchers != null)
{
- if (this.withinRestrictions == null)
+ if (this.withinSearchers == null)
{
- this.withinRestrictions = simpleSearchKey.withinRestrictions;
+ this.withinSearchers = simpleSearchKey.withinSearchers;
}
else
{
- this.withinRestrictions.addAll(simpleSearchKey.withinRestrictions);
+ this.withinSearchers.addAll(simpleSearchKey.withinSearchers);
}
}
if (simpleSearchKey.negativeSearchKeys != null)
@@ -130,5 +125,6 @@
this.negativeSearchKeys.addAll(simpleSearchKey.negativeSearchKeys);
}
}
+ lastElementAdded = null;
}
}
\ No newline at end of file
Modified: projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/TreeInsertionUtil.java
===================================================================
--- projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/TreeInsertionUtil.java 2008-03-24 01:19:16 UTC (rev 71179)
+++ projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/joinpoint/graph/TreeInsertionUtil.java 2008-03-24 01:21:05 UTC (rev 71180)
@@ -66,8 +66,7 @@
finally
{
TEMP_KEYS.clear();
- }
-
+ }
}
}
}
\ No newline at end of file
More information about the jboss-cvs-commits
mailing list