You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by dk...@apache.org on 2008/05/30 18:02:02 UTC

svn commit: r661772 - in /cxf/branches/2.0.x-fixes: ./ rt/core/src/main/java/org/apache/cxf/transport/http/WSDLQueryHandler.java

Author: dkulp
Date: Fri May 30 09:02:02 2008
New Revision: 661772

URL: http://svn.apache.org/viewvc?rev=661772&view=rev
Log:
Merged revisions 661735 via svnmerge from 
https://svn.apache.org/repos/asf/cxf/trunk

........
  r661735 | dkulp | 2008-05-30 10:33:02 -0400 (Fri, 30 May 2008) | 2 lines
  
  Try to prevent some infinite loops when using recursively imported schemas
........

Modified:
    cxf/branches/2.0.x-fixes/   (props changed)
    cxf/branches/2.0.x-fixes/rt/core/src/main/java/org/apache/cxf/transport/http/WSDLQueryHandler.java

Propchange: cxf/branches/2.0.x-fixes/
------------------------------------------------------------------------------
Binary property 'svnmerge-integrated' - no diff available.

Modified: cxf/branches/2.0.x-fixes/rt/core/src/main/java/org/apache/cxf/transport/http/WSDLQueryHandler.java
URL: http://svn.apache.org/viewvc/cxf/branches/2.0.x-fixes/rt/core/src/main/java/org/apache/cxf/transport/http/WSDLQueryHandler.java?rev=661772&r1=661771&r2=661772&view=diff
==============================================================================
--- cxf/branches/2.0.x-fixes/rt/core/src/main/java/org/apache/cxf/transport/http/WSDLQueryHandler.java (original)
+++ cxf/branches/2.0.x-fixes/rt/core/src/main/java/org/apache/cxf/transport/http/WSDLQueryHandler.java Fri May 30 09:02:02 2008
@@ -268,13 +268,15 @@
                         //check to see if it's aleady in a URL format.  If so, leave it.
                         new URL(start);
                     } catch (MalformedURLException e) {
-                        done.put(start, imp.getDefinition());
-                        updateDefinition(imp.getDefinition(), done, doneSchemas, base, ei);
+                        if (done.put(start, imp.getDefinition()) == null) {
+                            updateDefinition(imp.getDefinition(), done, doneSchemas, base, ei);
+                        }
                     }
                 } else {
-                    done.put(start, imp.getDefinition());
-                    done.put(resolvedSchemaLocation, imp.getDefinition());
-                    updateDefinition(imp.getDefinition(), done, doneSchemas, base, ei);
+                    if (done.put(start, imp.getDefinition()) == null) {
+                        done.put(resolvedSchemaLocation, imp.getDefinition());
+                        updateDefinition(imp.getDefinition(), done, doneSchemas, base, ei);
+                    }
                 }
             }
         }      
@@ -343,13 +345,15 @@
                             //check to see if it's aleady in a URL format.  If so, leave it.
                             new URL(start);
                         } catch (MalformedURLException e) {
-                            doneSchemas.put(start, imp);
-                            updateSchemaImports(imp.getReferencedSchema(), doneSchemas, base);
+                            if (doneSchemas.put(start, imp) == null) {
+                                updateSchemaImports(imp.getReferencedSchema(), doneSchemas, base);
+                            }
                         }
                     } else {
-                        doneSchemas.put(start, imp);
-                        doneSchemas.put(resolvedSchemaLocation, imp);
-                        updateSchemaImports(imp.getReferencedSchema(), doneSchemas, base);
+                        if (doneSchemas.put(start, imp) == null) {
+                            doneSchemas.put(resolvedSchemaLocation, imp);
+                            updateSchemaImports(imp.getReferencedSchema(), doneSchemas, base);
+                        }
                     }
                 }
             }
@@ -366,8 +370,9 @@
                             //check to see if it's aleady in a URL format.  If so, leave it.
                             new URL(start);
                         } catch (MalformedURLException e) {
-                            doneSchemas.put(start, included);
-                            updateSchemaImports(included.getReferencedSchema(), doneSchemas, base);
+                            if (doneSchemas.put(start, included) == null) {
+                                updateSchemaImports(included.getReferencedSchema(), doneSchemas, base);
+                            }
                         }
                     }
                 } else if (!doneSchemas.containsKey(start)