Revision: 3730
Author: [email protected]
Date: Wed Jul 14 08:51:55 2010
Log: Factored SQLObjectUUIDComparator out of Architect into the library.
http://code.google.com/p/power-architect/source/detail?r=3730

Deleted:
/trunk/src/main/java/ca/sqlpower/architect/diff/SQLObjectUUIDComparator.java
Modified:
 /trunk/src/main/java/ca/sqlpower/architect/diff/CompareSQL.java
 /trunk/src/main/java/ca/sqlpower/architect/diff/SQLIndexComparator.java
/trunk/src/main/java/ca/sqlpower/architect/diff/SQLRelationshipComparator.java

=======================================
--- /trunk/src/main/java/ca/sqlpower/architect/diff/SQLObjectUUIDComparator.java Wed Feb 24 14:00:05 2010
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- * Copyright (c) 2008, SQL Power Group Inc.
- *
- * This file is part of Power*Architect.
- *
- * Power*Architect is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 3 of the License, or
- * (at your option) any later version.
- *
- * Power*Architect 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 General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>.
- */
-package ca.sqlpower.architect.diff;
-
-import java.io.Serializable;
-import java.util.Comparator;
-
-import ca.sqlpower.sqlobject.SQLObject;
-
-public class SQLObjectUUIDComparator implements Comparator<SQLObject>, Serializable {
-
-    /**
- * Compares two SQLObjects case-insensitively by name only. Case comparison
-     * is performed with respect to the current default locale. No subtype
- * checking is performed, so (wlog) a table and a relationship with the same
-     * name will compare equal to each other.
-     * <p>
-     * Null values are allowed for either side of the comparison, and are
- * considered to come before non-null values. Nulls are taken as equal to
-     * each other.
-     */
-    @edu.umd.cs.findbugs.annotations.SuppressWarnings(
-            value={"ES_COMPARING_PARAMETER_STRING_WITH_EQ"},
- justification="It's just a pre-check for null==null or reference equality by luck. " + - "Falls back to String.compareTo() at the end of the method.")
-       public int compare(SQLObject t1, SQLObject t2) {
- // if t1 and t2 refer to the same object, or are both null, then they're equal
-               if (t1 == t2) return 0;
-               else if (t1 == null) return -1;
-               else if (t2 == null) return 1;
-               else {
-            return t1.getUUID().compareTo(t2.getUUID());
-               }
-       }
-}
=======================================
--- /trunk/src/main/java/ca/sqlpower/architect/diff/CompareSQL.java Thu May 20 14:46:10 2010 +++ /trunk/src/main/java/ca/sqlpower/architect/diff/CompareSQL.java Wed Jul 14 08:51:55 2010
@@ -36,6 +36,7 @@
 import ca.sqlpower.diff.DiffChunk;
 import ca.sqlpower.diff.DiffType;
 import ca.sqlpower.diff.PropertyChange;
+import ca.sqlpower.object.SPObjectUUIDComparator;
 import ca.sqlpower.sqlobject.SQLColumn;
 import ca.sqlpower.sqlobject.SQLIndex;
 import ca.sqlpower.sqlobject.SQLObject;
@@ -60,7 +61,7 @@
        /**
         * A comparator that detects equality by comparing the UUID
         */
- final static Comparator<SQLObject> uuidComparator = new SQLObjectUUIDComparator(); + final static Comparator<SQLObject> uuidComparator = new SPObjectUUIDComparator<SQLObject>();

        /**
         * The source tables that this compare object will use when asked
=======================================
--- /trunk/src/main/java/ca/sqlpower/architect/diff/SQLIndexComparator.java Wed Feb 24 14:00:05 2010 +++ /trunk/src/main/java/ca/sqlpower/architect/diff/SQLIndexComparator.java Wed Jul 14 08:51:55 2010
@@ -26,6 +26,7 @@

 import org.apache.log4j.Logger;

+import ca.sqlpower.object.SPObjectUUIDComparator;
 import ca.sqlpower.sqlobject.SQLIndex;
 import ca.sqlpower.sqlobject.SQLIndex.AscendDescend;
 import ca.sqlpower.sqlobject.SQLIndex.Column;
@@ -50,7 +51,7 @@

        public SQLIndexComparator(boolean useUUID) {
                if (useUUID) {
-                       comparator = new SQLObjectUUIDComparator();
+                       comparator = new SPObjectUUIDComparator<SQLObject>();
                } else {
                        comparator = new SQLObjectComparator();
                }
=======================================
--- /trunk/src/main/java/ca/sqlpower/architect/diff/SQLRelationshipComparator.java Wed Feb 24 14:00:05 2010 +++ /trunk/src/main/java/ca/sqlpower/architect/diff/SQLRelationshipComparator.java Wed Jul 14 08:51:55 2010
@@ -25,6 +25,7 @@

 import org.apache.log4j.Logger;

+import ca.sqlpower.object.SPObjectUUIDComparator;
 import ca.sqlpower.sqlobject.SQLColumn;
 import ca.sqlpower.sqlobject.SQLObject;
 import ca.sqlpower.sqlobject.SQLRelationship;
@@ -35,7 +36,8 @@
private static Logger logger = Logger.getLogger(SQLRelationshipComparator.class);

        private SQLObjectComparator nameComparator = new SQLObjectComparator();
- private SQLObjectUUIDComparator uuidComparator = new SQLObjectUUIDComparator();
+    private SPObjectUUIDComparator<SQLObject> uuidComparator =
+        new SPObjectUUIDComparator<SQLObject>();
        private boolean useUUID;

        public SQLRelationshipComparator() {

Reply via email to