[jboss-cvs] JBossAS SVN: r90604 - projects/jboss-deployers/trunk/deployers-impl/src/main/java/org/jboss/deployers/plugins/sort.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Thu Jun 25 18:51:57 EDT 2009
Author: alesj
Date: 2009-06-25 18:51:57 -0400 (Thu, 25 Jun 2009)
New Revision: 90604
Modified:
projects/jboss-deployers/trunk/deployers-impl/src/main/java/org/jboss/deployers/plugins/sort/DominoOrdering.java
projects/jboss-deployers/trunk/deployers-impl/src/main/java/org/jboss/deployers/plugins/sort/Dots.java
projects/jboss-deployers/trunk/deployers-impl/src/main/java/org/jboss/deployers/plugins/sort/SetDots.java
Log:
Better check for proper dimension size.
Modified: projects/jboss-deployers/trunk/deployers-impl/src/main/java/org/jboss/deployers/plugins/sort/DominoOrdering.java
===================================================================
--- projects/jboss-deployers/trunk/deployers-impl/src/main/java/org/jboss/deployers/plugins/sort/DominoOrdering.java 2009-06-25 22:34:31 UTC (rev 90603)
+++ projects/jboss-deployers/trunk/deployers-impl/src/main/java/org/jboss/deployers/plugins/sort/DominoOrdering.java 2009-06-25 22:51:57 UTC (rev 90604)
@@ -79,12 +79,12 @@
if (oneHead.match(twoHead) && oneTail.match(twoTail))
{
// lets try do do more exact match
- // although we should aviod singe size checks
+ // although we should aviod singe dimension checks
// which are already part of match() check
// in order not to break comparator comparison
- if (oneTail.contains(twoHead))
+ if (twoHead.dimension() > 1 && oneTail.dimension() >= twoHead.dimension() && oneTail.contains(twoHead))
relation = -1;
- else if (twoTail.contains(oneHead))
+ else if (oneHead.dimension() > 1 && twoTail.dimension() >= oneHead.dimension() && twoTail.contains(oneHead))
relation = 1;
else
relation = COMPARATOR.compare(one, two);
Modified: projects/jboss-deployers/trunk/deployers-impl/src/main/java/org/jboss/deployers/plugins/sort/Dots.java
===================================================================
--- projects/jboss-deployers/trunk/deployers-impl/src/main/java/org/jboss/deployers/plugins/sort/Dots.java 2009-06-25 22:34:31 UTC (rev 90603)
+++ projects/jboss-deployers/trunk/deployers-impl/src/main/java/org/jboss/deployers/plugins/sort/Dots.java 2009-06-25 22:51:57 UTC (rev 90604)
@@ -52,4 +52,13 @@
* @return true if these dots contain param dots
*/
boolean contains(Dots<T> dots);
+
+ /**
+ * The dimension of different dots.
+ * For strict domino dots this would be one,
+ * in our string set case this is the size of the set.
+ *
+ * @return the dimension of dots
+ */
+ int dimension();
}
Modified: projects/jboss-deployers/trunk/deployers-impl/src/main/java/org/jboss/deployers/plugins/sort/SetDots.java
===================================================================
--- projects/jboss-deployers/trunk/deployers-impl/src/main/java/org/jboss/deployers/plugins/sort/SetDots.java 2009-06-25 22:34:31 UTC (rev 90603)
+++ projects/jboss-deployers/trunk/deployers-impl/src/main/java/org/jboss/deployers/plugins/sort/SetDots.java 2009-06-25 22:51:57 UTC (rev 90604)
@@ -64,14 +64,15 @@
public boolean contains(Dots<Set<V>> containable)
{
Set<V> otherSet = containable.getValue();
- // do not match singe dot, due to name comparison consistency
- if (otherSet.size() < 2)
- return false;
-
Set<V> copy = new HashSet<V>(otherSet);
return copy.retainAll(set) == false;
}
-
+
+ public int dimension()
+ {
+ return set.size();
+ }
+
@Override
public String toString()
{
More information about the jboss-cvs-commits
mailing list