Przeglądaj źródła

Remove unnecessary default constructors which throw IllegalArgumentException. Favours compile time over runtime errors.

Luke Taylor 19 lat temu
rodzic
commit
e12c8310eb
17 zmienionych plików z 61 dodań i 90 usunięć
  1. 0 4
      core/src/main/java/org/acegisecurity/SecurityConfig.java
  2. 0 4
      core/src/main/java/org/acegisecurity/acl/basic/NamedEntityObjectIdentity.java
  3. 0 4
      core/src/main/java/org/acegisecurity/adapters/PrincipalAcegiUserToken.java
  4. 0 4
      core/src/main/java/org/acegisecurity/intercept/InterceptorStatusToken.java
  5. 0 4
      core/src/main/java/org/acegisecurity/intercept/web/FilterInvocation.java
  6. 0 4
      core/src/main/java/org/acegisecurity/providers/cas/TicketResponse.java
  7. 6 16
      core/src/main/java/org/acegisecurity/userdetails/User.java
  8. 6 4
      core/src/test/java/org/acegisecurity/SecurityConfigTests.java
  9. 6 4
      core/src/test/java/org/acegisecurity/acl/basic/NamedEntityObjectIdentityTests.java
  10. 0 13
      core/src/test/java/org/acegisecurity/adapters/AbstractAdapterAuthenticationTokenTests.java
  11. 7 5
      core/src/test/java/org/acegisecurity/adapters/PrincipalAcegiUserTokenTests.java
  12. 6 4
      core/src/test/java/org/acegisecurity/intercept/InterceptorStatusTokenTests.java
  13. 6 4
      core/src/test/java/org/acegisecurity/intercept/web/FilterInvocationDefinitionSourceEditorTests.java
  14. 6 4
      core/src/test/java/org/acegisecurity/intercept/web/FilterInvocationDefinitionSourceEditorWithPathsTests.java
  15. 6 4
      core/src/test/java/org/acegisecurity/intercept/web/FilterInvocationTests.java
  16. 6 4
      core/src/test/java/org/acegisecurity/providers/cas/TicketResponseTests.java
  17. 6 4
      core/src/test/java/org/acegisecurity/userdetails/UserTests.java

+ 0 - 4
core/src/main/java/org/acegisecurity/SecurityConfig.java

@@ -32,10 +32,6 @@ public class SecurityConfig implements ConfigAttribute {
         this.attrib = config;
     }
 
-    protected SecurityConfig() {
-        throw new IllegalArgumentException("Cannot use default constructor");
-    }
-
     //~ Methods ================================================================
 
     public String getAttribute() {

+ 0 - 4
core/src/main/java/org/acegisecurity/acl/basic/NamedEntityObjectIdentity.java

@@ -46,10 +46,6 @@ public class NamedEntityObjectIdentity implements AclObjectIdentity {
         this.id = id;
     }
 
-    protected NamedEntityObjectIdentity() {
-        throw new IllegalArgumentException("Cannot use default constructor");
-    }
-
     /**
      * Creates the <code>NamedEntityObjectIdentity</code> based on the passed
      * object instance. The passed object must provide a <code>getId()</code>

+ 0 - 4
core/src/main/java/org/acegisecurity/adapters/PrincipalAcegiUserToken.java

@@ -45,10 +45,6 @@ public class PrincipalAcegiUserToken extends AbstractAdapterAuthenticationToken
         this.principal = principal;
     }
 
-    protected PrincipalAcegiUserToken() {
-        throw new IllegalArgumentException("Cannot use default constructor");
-    }
-
     //~ Methods ================================================================
 
     public Object getCredentials() {

+ 0 - 4
core/src/main/java/org/acegisecurity/intercept/InterceptorStatusToken.java

@@ -51,10 +51,6 @@ public class InterceptorStatusToken {
         this.secureObject = secureObject;
     }
 
-    protected InterceptorStatusToken() {
-        throw new IllegalArgumentException("Cannot use default constructor");
-    }
-
     //~ Methods ================================================================
 
     public ConfigAttributeDefinition getAttr() {

+ 0 - 4
core/src/main/java/org/acegisecurity/intercept/web/FilterInvocation.java

@@ -71,10 +71,6 @@ public class FilterInvocation {
         this.chain = chain;
     }
 
-    protected FilterInvocation() {
-        throw new IllegalArgumentException("Cannot use default constructor");
-    }
-
     //~ Methods ================================================================
 
     public FilterChain getChain() {

+ 0 - 4
core/src/main/java/org/acegisecurity/providers/cas/TicketResponse.java

@@ -72,10 +72,6 @@ public class TicketResponse {
         this.proxyGrantingTicketIou = proxyGrantingTicketIou;
     }
 
-    protected TicketResponse() {
-        throw new IllegalArgumentException("Cannot use default constructor");
-    }
-
     //~ Methods ================================================================
 
     public String getProxyGrantingTicketIou() {

+ 6 - 16
core/src/main/java/org/acegisecurity/userdetails/User.java

@@ -35,8 +35,6 @@ import org.springframework.util.Assert;
 public class User implements UserDetails {
     //~ Instance fields ========================================================
 
-    // ~ Instance fields
-    // ========================================================
     private String password;
     private String username;
     private GrantedAuthority[] authorities;
@@ -47,12 +45,6 @@ public class User implements UserDetails {
 
     //~ Constructors ===========================================================
 
-    // ~ Constructors
-    // ===========================================================
-    protected User() {
-        throw new IllegalArgumentException("Cannot use default constructor");
-    }
-
     /**
      * Construct the <code>User</code> with the details required by {@link
      * DaoAuthenticationProvider}.
@@ -192,8 +184,6 @@ public class User implements UserDetails {
         return username;
     }
 
-    // ~ Methods
-    // ================================================================
     public int hashCode() {
         int code = 9792;
 
@@ -260,13 +250,13 @@ public class User implements UserDetails {
 
     public String toString() {
         StringBuffer sb = new StringBuffer();
-        sb.append(super.toString() + ": ");
-        sb.append("Username: " + this.username + "; ");
+        sb.append(super.toString()).append(": ");
+        sb.append("Username: ").append(this.username).append("; ");
         sb.append("Password: [PROTECTED]; ");
-        sb.append("Enabled: " + this.enabled + "; ");
-        sb.append("AccountNonExpired: " + this.accountNonExpired + "; ");
-        sb.append("credentialsNonExpired: " + this.credentialsNonExpired + "; ");
-        sb.append("AccountNonLocked: " + this.accountNonLocked + "; ");
+        sb.append("Enabled: ").append(this.enabled).append("; ");
+        sb.append("AccountNonExpired: ").append(this.accountNonExpired).append("; ");
+        sb.append("credentialsNonExpired: ").append(this.credentialsNonExpired).append("; ");
+        sb.append("AccountNonLocked: ").append(this.accountNonLocked).append("; ");
 
         if (this.getAuthorities() != null) {
             sb.append("Granted Authorities: ");

+ 6 - 4
core/src/test/java/org/acegisecurity/SecurityConfigTests.java

@@ -49,12 +49,14 @@ public class SecurityConfigTests extends TestCase {
         SecurityConfig config = new SecurityConfig("TEST");
         assertEquals("TEST".hashCode(), config.hashCode());
     }
+   
+    public void testNoArgConstructorDoesntExist() {
+        Class clazz = SecurityConfig.class;
 
-    public void testNoArgsConstructor() {
         try {
-            new SecurityConfig();
-            fail("Should have thrown IllegalArgumentException");
-        } catch (IllegalArgumentException expected) {
+            clazz.getDeclaredConstructor((Class[])null);
+            fail("Should have thrown NoSuchMethodException");
+        } catch (NoSuchMethodException expected) {
             assertTrue(true);
         }
     }

+ 6 - 4
core/src/test/java/org/acegisecurity/acl/basic/NamedEntityObjectIdentityTests.java

@@ -75,11 +75,13 @@ public class NamedEntityObjectIdentityTests extends TestCase {
         }
     }
 
-    public void testDefaultConstructorRejected() {
+    public void testNoArgConstructorDoesntExist() {
+        Class clazz = NamedEntityObjectIdentity.class;
+
         try {
-            new NamedEntityObjectIdentity();
-            fail("Should have thrown IllegalArgumentException");
-        } catch (IllegalArgumentException expected) {
+            clazz.getDeclaredConstructor((Class[])null);
+            fail("Should have thrown NoSuchMethodException");
+        } catch (NoSuchMethodException expected) {
             assertTrue(true);
         }
     }

+ 0 - 13
core/src/test/java/org/acegisecurity/adapters/AbstractAdapterAuthenticationTokenTests.java

@@ -71,15 +71,6 @@ public class AbstractAdapterAuthenticationTokenTests extends TestCase {
         assertTrue(!token.isUserInRole("ROLE_XXXX"));
     }
 
-    public void testNoArgsConstructor() {
-        try {
-            new MockDecisionManagerImpl();
-            fail("Should have thrown IllegalArgumentException");
-        } catch (IllegalArgumentException expected) {
-            assertTrue(true);
-        }
-    }
-
     public void testObjectsEquals() throws Exception {
         MockDecisionManagerImpl token1 = new MockDecisionManagerImpl("my_password",
                 "Test", "Password",
@@ -148,10 +139,6 @@ public class AbstractAdapterAuthenticationTokenTests extends TestCase {
             this.password = password;
         }
 
-        private MockDecisionManagerImpl() {
-            throw new IllegalArgumentException();
-        }
-
         public Object getCredentials() {
             return this.password;
         }

+ 7 - 5
core/src/test/java/org/acegisecurity/adapters/PrincipalAcegiUserTokenTests.java

@@ -59,12 +59,14 @@ public class PrincipalAcegiUserTokenTests extends TestCase {
         assertEquals("Test", token.getName());
     }
 
-    public void testNoArgsConstructor() {
+    public void testNoArgConstructorDoesntExist() {
+        Class clazz = PrincipalAcegiUserToken.class;
+
         try {
-            new PrincipalAcegiUserToken();
-            fail("Should have thrown IllegalArgumentException");
-        } catch (IllegalArgumentException expected) {
+            clazz.getDeclaredConstructor((Class[])null);
+            fail("Should have thrown NoSuchMethodException");
+        } catch (NoSuchMethodException expected) {
             assertTrue(true);
         }
-    }
+    }    
 }

+ 6 - 4
core/src/test/java/org/acegisecurity/intercept/InterceptorStatusTokenTests.java

@@ -48,11 +48,13 @@ public class InterceptorStatusTokenTests extends TestCase {
         junit.textui.TestRunner.run(InterceptorStatusTokenTests.class);
     }
 
-    public void testDefaultConstructor() {
+    public void testNoArgConstructorDoesntExist() {
+        Class clazz = InterceptorStatusToken.class;
+
         try {
-            new InterceptorStatusToken();
-            fail("Should have thrown IllegalArgumentException");
-        } catch (IllegalArgumentException expected) {
+            clazz.getDeclaredConstructor((Class[])null);
+            fail("Should have thrown NoSuchMethodException");
+        } catch (NoSuchMethodException expected) {
             assertTrue(true);
         }
     }

+ 6 - 4
core/src/test/java/org/acegisecurity/intercept/web/FilterInvocationDefinitionSourceEditorTests.java

@@ -154,11 +154,13 @@ public class FilterInvocationDefinitionSourceEditorTests extends TestCase {
         assertEquals(2, map.getMapSize());
     }
 
-    public void testNoArgsConstructor() {
+    public void testNoArgConstructorDoesntExist() {
+        Class clazz = RegExpBasedFilterInvocationDefinitionMap.EntryHolder.class;
+
         try {
-            new RegExpBasedFilterInvocationDefinitionMap().new EntryHolder();
-            fail("Should have thrown IllegalArgumentException");
-        } catch (IllegalArgumentException expected) {
+            clazz.getDeclaredConstructor((Class[])null);
+            fail("Should have thrown NoSuchMethodException");
+        } catch (NoSuchMethodException expected) {
             assertTrue(true);
         }
     }

+ 6 - 4
core/src/test/java/org/acegisecurity/intercept/web/FilterInvocationDefinitionSourceEditorWithPathsTests.java

@@ -135,11 +135,13 @@ public class FilterInvocationDefinitionSourceEditorWithPathsTests
         assertEquals(2, map.getMapSize());
     }
 
-    public void testNoArgsConstructor() {
+    public void testNoArgConstructorDoesntExist() {
+        Class clazz = PathBasedFilterInvocationDefinitionMap.EntryHolder.class;
+
         try {
-            new PathBasedFilterInvocationDefinitionMap().new EntryHolder();
-            fail("Should have thrown IllegalArgumentException");
-        } catch (IllegalArgumentException expected) {
+            clazz.getDeclaredConstructor((Class[])null);
+            fail("Should have thrown NoSuchMethodException");
+        } catch (NoSuchMethodException expected) {
             assertTrue(true);
         }
     }

+ 6 - 4
core/src/test/java/org/acegisecurity/intercept/web/FilterInvocationTests.java

@@ -77,11 +77,13 @@ public class FilterInvocationTests extends MockObjectTestCase {
             fi.getFullRequestUrl());
     }
 
-    public void testNoArgsConstructor() {
+    public void testNoArgConstructorDoesntExist() {
+        Class clazz = FilterInvocation.class;
+
         try {
-            new FilterInvocation();
-            fail("Should have thrown IllegalArgumentException");
-        } catch (IllegalArgumentException expected) {
+            clazz.getDeclaredConstructor((Class[])null);
+            fail("Should have thrown NoSuchMethodException");
+        } catch (NoSuchMethodException expected) {
             assertTrue(true);
         }
     }

+ 6 - 4
core/src/test/java/org/acegisecurity/providers/cas/TicketResponseTests.java

@@ -82,11 +82,13 @@ public class TicketResponseTests extends TestCase {
             ticket.getProxyGrantingTicketIou());
     }
 
-    public void testNoArgConstructor() {
+    public void testNoArgConstructorDoesntExist() {
+        Class clazz = TicketResponse.class;
+
         try {
-            new TicketResponse();
-            fail("Should have thrown IllegalArgumentException");
-        } catch (IllegalArgumentException expected) {
+            clazz.getDeclaredConstructor((Class[])null);
+            fail("Should have thrown NoSuchMethodException");
+        } catch (NoSuchMethodException expected) {
             assertTrue(true);
         }
     }

+ 6 - 4
core/src/test/java/org/acegisecurity/userdetails/UserTests.java

@@ -101,11 +101,13 @@ public class UserTests extends TestCase {
                     new GrantedAuthority[] {new GrantedAuthorityImpl("ROLE_ONE")})));
     }
 
-    public void testNoArgConstructor() {
+    public void testNoArgConstructorDoesntExist() {
+        Class clazz = User.class;
+
         try {
-            new User();
-            fail("Should have thrown IllegalArgumentException");
-        } catch (IllegalArgumentException expected) {
+            clazz.getDeclaredConstructor((Class[])null);
+            fail("Should have thrown NoSuchMethodException");
+        } catch (NoSuchMethodException expected) {
             assertTrue(true);
         }
     }