Title: [2220] branches/v-1.4.x/xstream/src: Make Java 1.4 compatible.

Diff

Modified: branches/v-1.4.x/xstream/src/java/com/thoughtworks/xstream/XStream.java (2219 => 2220)


--- branches/v-1.4.x/xstream/src/java/com/thoughtworks/xstream/XStream.java	2014-01-22 18:29:40 UTC (rev 2219)
+++ branches/v-1.4.x/xstream/src/java/com/thoughtworks/xstream/XStream.java	2014-01-22 21:50:23 UTC (rev 2220)
@@ -2019,7 +2019,7 @@
      * @param names the type names to allow
      * @since upcoming
      */
-    public void allowTypes(String... names) {
+    public void allowTypes(String[] names) {
         addPermission(new ExplicitTypePermission(names));
     }
     
@@ -2029,7 +2029,7 @@
      * @param regexps the regular expressions to allow type names
      * @since upcoming
      */
-    public void allowTypesByRegExp(String... regexps) {
+    public void allowTypesByRegExp(String[] regexps) {
         addPermission(new RegExpTypePermission(regexps));
     }
     
@@ -2039,7 +2039,7 @@
      * @param regexps the regular expressions to allow type names
      * @since upcoming
      */
-    public void allowTypesByRegExp(Pattern... regexps) {
+    public void allowTypesByRegExp(Pattern[] regexps) {
         addPermission(new RegExpTypePermission(regexps));
     }
     
@@ -2057,7 +2057,7 @@
      * @param patterns the patterns to allow type names
      * @since upcoming
      */
-    public void allowTypesByWildcard(String... patterns) {
+    public void allowTypesByWildcard(String[] patterns) {
         addPermission(new WildcardTypePermission(patterns));
     }
     
@@ -2077,7 +2077,7 @@
      * @param names the type names to forbid
      * @since upcoming
      */
-    public void denyTypes(String... names) {
+    public void denyTypes(String[] names) {
         denyPermission(new ExplicitTypePermission(names));
     }
     
@@ -2087,7 +2087,7 @@
      * @param regexps the regular expressions to forbid type names
      * @since upcoming
      */
-    public void denyTypesByRegExp(String... regexps) {
+    public void denyTypesByRegExp(String[] regexps) {
         denyPermission(new RegExpTypePermission(regexps));
     }
     
@@ -2097,7 +2097,7 @@
      * @param regexps the regular expressions to forbid type names
      * @since upcoming
      */
-    public void denyTypesByRegExp(Pattern... regexps) {
+    public void denyTypesByRegExp(Pattern[] regexps) {
         denyPermission(new RegExpTypePermission(regexps));
     }
     
@@ -2115,7 +2115,7 @@
      * @param patterns the patterns to forbid names
      * @since upcoming
      */
-    public void denyTypesByWildcard(String... patterns) {
+    public void denyTypesByWildcard(String[] patterns) {
         denyPermission(new WildcardTypePermission(patterns));
     }
 

Modified: branches/v-1.4.x/xstream/src/java/com/thoughtworks/xstream/mapper/SecurityMapper.java (2219 => 2220)


--- branches/v-1.4.x/xstream/src/java/com/thoughtworks/xstream/mapper/SecurityMapper.java	2014-01-22 18:29:40 UTC (rev 2219)
+++ branches/v-1.4.x/xstream/src/java/com/thoughtworks/xstream/mapper/SecurityMapper.java	2014-01-22 21:50:23 UTC (rev 2220)
@@ -25,7 +25,7 @@
  */
 public class SecurityMapper extends MapperWrapper {
 
-    private final List<TypePermission> permissions;
+    private final List permissions;
 
     /**
      * Construct a SecurityMapper.
@@ -44,11 +44,11 @@
      * @param permissions the predefined permissions
      * @since upcoming
      */
-    public SecurityMapper(final Mapper wrapped, final TypePermission... permissions) {
+    public SecurityMapper(final Mapper wrapped, final TypePermission[] permissions) {
         super(wrapped);
         this.permissions = permissions == null //
-            ? new ArrayList<TypePermission>()
-            : new ArrayList<TypePermission>(Arrays.asList(permissions));
+            ? new ArrayList()
+            : new ArrayList(Arrays.asList(permissions));
     }
 
     /**
@@ -69,9 +69,11 @@
 
     public Class realClass(final String elementName) {
         final Class type = super.realClass(elementName);
-        for (final TypePermission permission : permissions)
+        for (int i = 0; i < permissions.size(); ++i) {
+            final TypePermission permission = (TypePermission)permissions.get(i);
             if (permission.allows(type))
                 return type;
+        }
         throw new ForbiddenClassException(type);
     }
 }

Modified: branches/v-1.4.x/xstream/src/java/com/thoughtworks/xstream/security/ExplicitTypePermission.java (2219 => 2220)


--- branches/v-1.4.x/xstream/src/java/com/thoughtworks/xstream/security/ExplicitTypePermission.java	2014-01-22 18:29:40 UTC (rev 2219)
+++ branches/v-1.4.x/xstream/src/java/com/thoughtworks/xstream/security/ExplicitTypePermission.java	2014-01-22 21:50:23 UTC (rev 2220)
@@ -19,13 +19,13 @@
  */
 public class ExplicitTypePermission implements TypePermission {
 
-    final Set<String> names;
+    final Set names;
     
     /**
      * @since upcoming
      */
-    public ExplicitTypePermission(String...names) {
-        this.names = names == null ? Collections.<String>emptySet() : new HashSet<String>(Arrays.asList(names));
+    public ExplicitTypePermission(String[] names) {
+        this.names = names == null ? Collections.EMPTY_SET : new HashSet(Arrays.asList(names));
     }
 
     public boolean allows(Class type) {

Modified: branches/v-1.4.x/xstream/src/java/com/thoughtworks/xstream/security/ForbiddenClassException.java (2219 => 2220)


--- branches/v-1.4.x/xstream/src/java/com/thoughtworks/xstream/security/ForbiddenClassException.java	2014-01-22 18:29:40 UTC (rev 2219)
+++ branches/v-1.4.x/xstream/src/java/com/thoughtworks/xstream/security/ForbiddenClassException.java	2014-01-22 21:50:23 UTC (rev 2220)
@@ -21,7 +21,7 @@
      * @param type the forbidden class
      * @since upcoming
      */
-    public ForbiddenClassException(Class<?> type) {
+    public ForbiddenClassException(Class type) {
         super(type == null ? "null" : type.getName());
     }
 }

Modified: branches/v-1.4.x/xstream/src/java/com/thoughtworks/xstream/security/RegExpTypePermission.java (2219 => 2220)


--- branches/v-1.4.x/xstream/src/java/com/thoughtworks/xstream/security/RegExpTypePermission.java	2014-01-22 18:29:40 UTC (rev 2219)
+++ branches/v-1.4.x/xstream/src/java/com/thoughtworks/xstream/security/RegExpTypePermission.java	2014-01-22 21:50:23 UTC (rev 2220)
@@ -19,25 +19,25 @@
 
     private final Pattern[] patterns;
 
-    public RegExpTypePermission(final String... patterns) {
+    public RegExpTypePermission(final String[] patterns) {
         this(getPatterns(patterns));
     }
 
-    public RegExpTypePermission(final Pattern... patterns) {
+    public RegExpTypePermission(final Pattern[] patterns) {
         this.patterns = patterns == null ? new Pattern[0] : patterns;
     }
 
     public boolean allows(final Class type) {
         if (type != null) {
             final String name = type.getName();
-            for (final Pattern pattern : patterns)
-                if (pattern.matcher(name).matches())
+            for (int i = 0; i < patterns.length; ++i)
+                if (patterns[i].matcher(name).matches())
                     return true;
         }
         return false;
     }
 
-    private static Pattern[] getPatterns(final String... patterns) {
+    private static Pattern[] getPatterns(final String[] patterns) {
         if (patterns == null)
             return null;
         final Pattern[] array = new Pattern[patterns.length];

Modified: branches/v-1.4.x/xstream/src/java/com/thoughtworks/xstream/security/WildcardTypePermission.java (2219 => 2220)


--- branches/v-1.4.x/xstream/src/java/com/thoughtworks/xstream/security/WildcardTypePermission.java	2014-01-22 18:29:40 UTC (rev 2219)
+++ branches/v-1.4.x/xstream/src/java/com/thoughtworks/xstream/security/WildcardTypePermission.java	2014-01-22 21:50:23 UTC (rev 2220)
@@ -29,11 +29,11 @@
     /**
      * @since upcoming
      */
-    public WildcardTypePermission(final String... patterns) {
+    public WildcardTypePermission(final String[] patterns) {
         super(getRegExpPatterns(patterns));
     }
 
-    private static String[] getRegExpPatterns(final String... wildcards) {
+    private static String[] getRegExpPatterns(final String[] wildcards) {
         if (wildcards == null)
             return null;
         final String[] regexps = new String[wildcards.length];

Modified: branches/v-1.4.x/xstream/src/test/com/thoughtworks/xstream/mapper/SecurityMapperTest.java (2219 => 2220)


--- branches/v-1.4.x/xstream/src/test/com/thoughtworks/xstream/mapper/SecurityMapperTest.java	2014-01-22 18:29:40 UTC (rev 2219)
+++ branches/v-1.4.x/xstream/src/test/com/thoughtworks/xstream/mapper/SecurityMapperTest.java	2014-01-22 21:50:23 UTC (rev 2220)
@@ -43,21 +43,20 @@
 
         classMap = new HashMap<String, Class<?>>();
         mapper = new SecurityMapper(new MapperWrapper(null) {
-            @Override
             public Class realClass(final String elementName) {
                 return classMap.get(elementName);
             }
         });
     }
 
-    private void register(final Class<?>... types) {
-        for (final Class<?> type : types) {
-            classMap.put(type.getName(), type);
+    private void register(final Class[] types) {
+        for (int i = 0; i < types.length; ++i) {
+            classMap.put(types[i].getName(), types[i]);
         }
     }
 
     public void testAnyType() {
-        register(String.class, URL.class, List.class);
+        register(new Class[]{String.class, URL.class, List.class});
         mapper.addPermission(NoTypePermission.NONE);
         mapper.addPermission(AnyTypePermission.ANY);
         assertSame(String.class, mapper.realClass(String.class.getName()));
@@ -66,7 +65,7 @@
     }
 
     public void testNoType() {
-        register(String.class, URL.class, List.class);
+        register(new Class[]{String.class, URL.class, List.class});
         mapper.addPermission(NoTypePermission.NONE);
         try {
             mapper.realClass(String.class.getName());
@@ -83,7 +82,7 @@
     }
 
     public void testNullType() {
-        register(String.class, Mapper.Null.class);
+        register(new Class[]{String.class, Mapper.Null.class});
         mapper.addPermission(NullPermission.NULL);
         assertSame(Mapper.Null.class, mapper.realClass(Mapper.Null.class.getName()));
         assertNull(mapper.realClass(null));
@@ -96,7 +95,7 @@
     }
 
     public void testPrimitiveTypes() {
-        register(String.class, int.class, Integer.class, char[].class, Character[].class);
+        register(new Class[]{String.class, int.class, Integer.class, char[].class, Character[].class});
         mapper.addPermission(PrimitiveTypePermission.PRIMITIVES);
         assertSame(int.class, mapper.realClass(int.class.getName()));
         assertSame(Integer.class, mapper.realClass(Integer.class.getName()));
@@ -121,7 +120,7 @@
     }
 
     public void testArrayTypes() {
-        register(String.class, int.class, Integer.class, char[].class, Character[].class);
+        register(new Class[]{String.class, int.class, Integer.class, char[].class, Character[].class});
         mapper.addPermission(ArrayTypePermission.ARRAYS);
         assertSame(char[].class, mapper.realClass(char[].class.getName()));
         assertSame(Character[].class, mapper.realClass(Character[].class.getName()));
@@ -146,8 +145,8 @@
     }
 
     public void testExplicitTypes() {
-        register(String.class, List.class);
-        mapper.addPermission(new ExplicitTypePermission(String.class.getName(), List.class.getName()));
+        register(new Class[]{String.class, List.class});
+        mapper.addPermission(new ExplicitTypePermission(new String[]{String.class.getName(), List.class.getName()}));
         assertSame(String.class, mapper.realClass(String.class.getName()));
         assertSame(List.class, mapper.realClass(List.class.getName()));
         try {
@@ -160,9 +159,11 @@
 
     public void testNamesWithRegExps() {
         class Foo$_0 {}
-        final Class<?> anonymous = new Object() {}.getClass();
-        register(String.class, JVM.class, QuickWriter.class, Foo$_0.class, anonymous, DefaultClassMapperTest.class);
-        mapper.addPermission(new RegExpTypePermission(".*Test", ".*\\.core\\..*", ".*SecurityMapperTest\\$.+"));
+        final Class anonymous = new Object() {}.getClass();
+        register(new Class[]{
+            String.class, JVM.class, QuickWriter.class, Foo$_0.class, anonymous, DefaultClassMapperTest.class});
+        mapper.addPermission(new RegExpTypePermission(new String[]{
+            ".*Test", ".*\\.core\\..*", ".*SecurityMapperTest\\$.+"}));
         assertSame(DefaultClassMapperTest.class, mapper.realClass(DefaultClassMapperTest.class.getName()));
         assertSame(JVM.class, mapper.realClass(JVM.class.getName()));
         assertSame(QuickWriter.class, mapper.realClass(QuickWriter.class.getName()));
@@ -179,9 +180,10 @@
     public void testNamesWithWildcardPatterns() {
         class Foo$_0 {}
         class Foo$_1 {}
-        final Class<?> anonymous = new Object() {}.getClass();
-        register(String.class, JVM.class, QuickWriter.class, Foo$_0.class, Foo$_1.class, anonymous);
-        mapper.addPermission(new WildcardTypePermission("**.*_0", "**.core.*", "**.SecurityMapperTest$?"));
+        final Class anonymous = new Object() {}.getClass();
+        register(new Class[]{String.class, JVM.class, QuickWriter.class, Foo$_0.class, Foo$_1.class, anonymous});
+        mapper
+            .addPermission(new WildcardTypePermission(new String[]{"**.*_0", "**.core.*", "**.SecurityMapperTest$?"}));
         assertSame(JVM.class, mapper.realClass(JVM.class.getName()));
         assertSame(Foo$_0.class, mapper.realClass(Foo$_0.class.getName()));
         assertSame(anonymous, mapper.realClass(anonymous.getName()));

To unsubscribe from this list please visit:

http://xircles.codehaus.org/manage_email

Reply via email to