You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@poi.apache.org by ki...@apache.org on 2020/09/06 23:14:13 UTC

svn commit: r1881518 - /xmlbeans/trunk/src/main/java/org/apache/xmlbeans/impl/schema/StscComplexTypeResolver.java

Author: kiwiwings
Date: Sun Sep  6 23:14:12 2020
New Revision: 1881518

URL: http://svn.apache.org/viewvc?rev=1881518&view=rev
Log:
Try to fix attribute generation order - because POI is generating getter/setter for id attributes (long and/or string) in wrong order

Modified:
    xmlbeans/trunk/src/main/java/org/apache/xmlbeans/impl/schema/StscComplexTypeResolver.java

Modified: xmlbeans/trunk/src/main/java/org/apache/xmlbeans/impl/schema/StscComplexTypeResolver.java
URL: http://svn.apache.org/viewvc/xmlbeans/trunk/src/main/java/org/apache/xmlbeans/impl/schema/StscComplexTypeResolver.java?rev=1881518&r1=1881517&r2=1881518&view=diff
==============================================================================
--- xmlbeans/trunk/src/main/java/org/apache/xmlbeans/impl/schema/StscComplexTypeResolver.java (original)
+++ xmlbeans/trunk/src/main/java/org/apache/xmlbeans/impl/schema/StscComplexTypeResolver.java Sun Sep  6 23:14:12 2020
@@ -24,6 +24,7 @@ import org.apache.xmlbeans.impl.xb.xsdsc
 import javax.xml.namespace.QName;
 import java.math.BigInteger;
 import java.util.*;
+import java.util.function.BinaryOperator;
 import java.util.function.Supplier;
 import java.util.stream.Collectors;
 import java.util.stream.Stream;
@@ -1382,9 +1383,13 @@ public class StscComplexTypeResolver {
         list.add(part);
     }
 
+    private static <T> BinaryOperator<T> throwingMerger() {
+        return (u,v) -> { throw new IllegalStateException(String.format("Duplicate key %s", u)); };
+    }
+
     static Map<QName, SchemaProperty> buildAttributePropertyModelByQName(SchemaAttributeModel attrModel, SchemaType owner) {
         return Stream.of(attrModel.getAttributes())
-            .collect(Collectors.toMap(SchemaLocalAttribute::getName, a -> buildUseProperty(a, owner)));
+            .collect(Collectors.toMap(SchemaLocalAttribute::getName, a -> buildUseProperty(a, owner), throwingMerger(), LinkedHashMap::new));
     }
 
     static Map<QName, SchemaProperty> buildContentPropertyModelByQName(SchemaParticle part, SchemaType owner) {



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@poi.apache.org
For additional commands, e-mail: commits-help@poi.apache.org