Author: mattmann
Date: Fri Dec 21 00:32:47 2012
New Revision: 1424774

URL: http://svn.apache.org/viewvc?rev=1424774&view=rev
Log:
- fix for OODT-548: Be more resilient to table definitions matching the master 
table in the Mapping config file

Modified:
    oodt/trunk/CHANGES.txt
    
oodt/trunk/xmlps/src/main/java/org/apache/oodt/xmlps/product/XMLPSProductHandler.java
    
oodt/trunk/xmlps/src/main/java/org/apache/oodt/xmlps/profile/XMLPSProfileHandler.java

Modified: oodt/trunk/CHANGES.txt
URL: 
http://svn.apache.org/viewvc/oodt/trunk/CHANGES.txt?rev=1424774&r1=1424773&r2=1424774&view=diff
==============================================================================
--- oodt/trunk/CHANGES.txt (original)
+++ oodt/trunk/CHANGES.txt Fri Dec 21 00:32:47 2012
@@ -3,6 +3,9 @@ Apache OODT Change Log
 Release 0.6 - Current Development
 --------------------------------------------
 
+* OODT-548 Be more resilient to table definitions matching the master table 
+  in the Mapping config file (mattmann,joyce)
+
 * OODT-546 XMLPS inner-joins default table with itself (mattmann,joyce)
 
 * OODT-547 Switch newest Curator upudate metadata method to use XML-RPC 
FileManager client.

Modified: 
oodt/trunk/xmlps/src/main/java/org/apache/oodt/xmlps/product/XMLPSProductHandler.java
URL: 
http://svn.apache.org/viewvc/oodt/trunk/xmlps/src/main/java/org/apache/oodt/xmlps/product/XMLPSProductHandler.java?rev=1424774&r1=1424773&r2=1424774&view=diff
==============================================================================
--- 
oodt/trunk/xmlps/src/main/java/org/apache/oodt/xmlps/product/XMLPSProductHandler.java
 (original)
+++ 
oodt/trunk/xmlps/src/main/java/org/apache/oodt/xmlps/product/XMLPSProductHandler.java
 Fri Dec 21 00:32:47 2012
@@ -349,7 +349,7 @@ public class XMLPSProductHandler impleme
                 MappingField fld = mapping.getFieldByLocalName(qe.getValue());
                 if (fld != null) {
                     DatabaseTable t = 
mapping.getTableByName(fld.getTableName());
-                    if (t != null && !tables.contains(t)) {
+                    if (t != null && !tables.contains(t) && 
!t.getName().equals(mapping.getDefaultTable())) {
                         tables.add(t);
                     }
                 }
@@ -361,7 +361,7 @@ public class XMLPSProductHandler impleme
                 MappingField fld = mapping.getFieldByLocalName(qe.getValue());
                 if (fld != null) {
                     DatabaseTable t = 
mapping.getTableByName(fld.getTableName());
-                    if (t != null && !tables.contains(t)) {
+                    if (t != null && !tables.contains(t) && 
!t.getName().equals(mapping.getDefaultTable())) {
                         tables.add(t);
                     }
                 }
@@ -376,7 +376,7 @@ public class XMLPSProductHandler impleme
             // recursively add all join tables until we get to either
             // (a) the mapping default table (join == null)
             // (b) or a table already found (moreTables.contains(join))
-            while (join != null && !moreTables.contains(join)) {
+            while (join != null && !moreTables.contains(join) && 
!join.getName().equals(mapping.getDefaultTable())) {
                 moreTables.add(join);
                 join = mapping.getTableByName(join.getDefaultTableJoin());
             }

Modified: 
oodt/trunk/xmlps/src/main/java/org/apache/oodt/xmlps/profile/XMLPSProfileHandler.java
URL: 
http://svn.apache.org/viewvc/oodt/trunk/xmlps/src/main/java/org/apache/oodt/xmlps/profile/XMLPSProfileHandler.java?rev=1424774&r1=1424773&r2=1424774&view=diff
==============================================================================
--- 
oodt/trunk/xmlps/src/main/java/org/apache/oodt/xmlps/profile/XMLPSProfileHandler.java
 (original)
+++ 
oodt/trunk/xmlps/src/main/java/org/apache/oodt/xmlps/profile/XMLPSProfileHandler.java
 Fri Dec 21 00:32:47 2012
@@ -159,6 +159,7 @@ public class XMLPSProfileHandler extends
             for (Iterator<String> i = mapping.getTableNames().iterator(); i
                     .hasNext();) {
                 String tableName = i.next();
+                if(tableName.equals(mapping.getDefaultTable())) continue;
                 DatabaseTable tbl = mapping.getTableByName(tableName);
                 sqlBuf.append("INNER JOIN ");
                 sqlBuf.append(tbl.getName());


Reply via email to