[jboss-svn-commits] JBoss Common SVN: r2993 - in jbossxb/trunk/src: test/java/org/jboss/test/xml/unorderedsequence/test and 1 other directory.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Tue Feb 24 15:48:19 EST 2009


Author: alex.loubyansky at jboss.com
Date: 2009-02-24 15:48:19 -0500 (Tue, 24 Feb 2009)
New Revision: 2993

Modified:
   jbossxb/trunk/src/main/java/org/jboss/xb/builder/JBossXBBuilder.java
   jbossxb/trunk/src/test/java/org/jboss/test/xml/unorderedsequence/test/AbstractUnorderedSequenceTest.java
Log:
JBXB-183 (added static config property for JBossXBBuilder whether to use unordered sequences by default)

Modified: jbossxb/trunk/src/main/java/org/jboss/xb/builder/JBossXBBuilder.java
===================================================================
--- jbossxb/trunk/src/main/java/org/jboss/xb/builder/JBossXBBuilder.java	2009-02-24 19:58:58 UTC (rev 2992)
+++ jbossxb/trunk/src/main/java/org/jboss/xb/builder/JBossXBBuilder.java	2009-02-24 20:48:19 UTC (rev 2993)
@@ -57,6 +57,8 @@
    /** The object type */
    static final ClassInfo OBJECT;
    
+   static boolean useUnorderedSequence;
+   
    static
    {
       configuration = AccessController.doPrivileged(new PrivilegedAction<PropertyConfiguration>()
@@ -71,6 +73,16 @@
       OBJECT = configuration.getClassInfo(Object.class);
    }
    
+   public static boolean isUseUnorderedSequence()
+   {
+      return useUnorderedSequence;
+   }
+
+   public static void setUseUnorderedSequence(boolean unorderedSequences)
+   {
+      JBossXBBuilder.useUnorderedSequence = unorderedSequences;
+   }
+
    /**
     * Create a new schema binding initializer
     * 
@@ -186,6 +198,7 @@
          
       
       JBossXBNoSchemaBuilder builder = new JBossXBNoSchemaBuilder(classInfo);
+      builder.setUseUnorderedSequence(useUnorderedSequence);
       builder.build(schemaBinding);
    }
    
@@ -219,6 +232,7 @@
       if (rebuild || binding == null)
       {
          JBossXBNoSchemaBuilder builder = new JBossXBNoSchemaBuilder(classInfo);
+         builder.setUseUnorderedSequence(useUnorderedSequence);
          binding = builder.build();
          classInfo.setAttachment(SchemaBinding.class.getName(), binding);
       }

Modified: jbossxb/trunk/src/test/java/org/jboss/test/xml/unorderedsequence/test/AbstractUnorderedSequenceTest.java
===================================================================
--- jbossxb/trunk/src/test/java/org/jboss/test/xml/unorderedsequence/test/AbstractUnorderedSequenceTest.java	2009-02-24 19:58:58 UTC (rev 2992)
+++ jbossxb/trunk/src/test/java/org/jboss/test/xml/unorderedsequence/test/AbstractUnorderedSequenceTest.java	2009-02-24 20:48:19 UTC (rev 2993)
@@ -21,17 +21,17 @@
  */
 package org.jboss.test.xml.unorderedsequence.test;
 
-import java.security.AccessController;
-import java.security.PrivilegedAction;
-
-import org.jboss.config.plugins.property.PropertyConfiguration;
-import org.jboss.reflect.spi.ClassInfo;
 import org.jboss.test.xb.builder.AbstractBuilderTest;
 import org.jboss.xb.binding.JBossXBException;
 import org.jboss.xb.binding.JBossXBRuntimeException;
 import org.jboss.xb.binding.sunday.unmarshalling.SchemaBinding;
-import org.jboss.xb.builder.JBossXBNoSchemaBuilder;
+import org.jboss.xb.builder.JBossXBBuilder;
 
+/**
+ * 
+ * @author <a href="alex at jboss.com">Alexey Loubyansky</a>
+ * @version $Revision: 1.1 $
+ */
 public abstract class AbstractUnorderedSequenceTest<T> extends AbstractBuilderTest
 {
 
@@ -82,20 +82,17 @@
 
    @SuppressWarnings("unchecked")
    protected T unmarshal(boolean unordered, String fileName) throws Exception
-   {
-      PropertyConfiguration config = AccessController.doPrivileged(new PrivilegedAction<PropertyConfiguration>()
-            {
-               public PropertyConfiguration run()
-               {
-                  return new PropertyConfiguration();
-               }
-            });
-      ClassInfo classInfo = config.getClassInfo(rootClass);
-      JBossXBNoSchemaBuilder builder = new JBossXBNoSchemaBuilder(classInfo);
-      builder.setUseUnorderedSequence(unordered);
-      SchemaBinding schema = builder.build();
-      
-      return (T) unmarshal(fileName, schema);
+   {      
+      boolean unorderedSequence = JBossXBBuilder.isUseUnorderedSequence();
+      try
+      {
+         JBossXBBuilder.setUseUnorderedSequence(unordered);
+         SchemaBinding schema = JBossXBBuilder.build(rootClass, true);
+         return (T) unmarshal(fileName, schema);
+      }
+      finally
+      {
+         JBossXBBuilder.setUseUnorderedSequence(unorderedSequence);
+      }
    }
-
 }
\ No newline at end of file




More information about the jboss-svn-commits mailing list