Kaynağa Gözat

Remove extra dependency on Commons Lang. This dependency is only required by the domain subproject, not the core security project.

Ben Alex 19 yıl önce
ebeveyn
işleme
49a917b08d

+ 0 - 5
core/pom.xml

@@ -44,11 +44,6 @@
       <version>2.0.11</version>
       <optional>true</optional>
     </dependency>
-    <dependency>
-      <groupId>commons-lang</groupId>
-      <artifactId>commons-lang</artifactId>
-      <version>2.1</version>
-    </dependency>
     <dependency>
       <groupId>commons-logging</groupId>
       <artifactId>commons-logging</artifactId>

+ 17 - 6
core/src/main/java/org/acegisecurity/acl/basic/NamedEntityObjectIdentity.java

@@ -15,9 +15,8 @@
 
 package org.acegisecurity.acl.basic;
 
-import org.apache.commons.lang.ClassUtils;
-
 import org.springframework.util.Assert;
+import org.springframework.util.ClassUtils;
 
 import java.lang.reflect.InvocationTargetException;
 import java.lang.reflect.Method;
@@ -66,10 +65,10 @@ public class NamedEntityObjectIdentity implements AclObjectIdentity {
         throws IllegalAccessException, InvocationTargetException {
         Assert.notNull(object, "object cannot be null");
 
-        this.classname = (object.getClass().getPackage() == null)
-            ? ClassUtils.getShortClassName(object.getClass())
-            : (object.getClass().getPackage().getName() + "."
-            + ClassUtils.getShortClassName(object.getClass()));
+        this.classname = (getPackageName(object.getClass().getName()) == null)
+            ? ClassUtils.getShortName(object.getClass())
+            : getPackageName(object.getClass().getName() + "."
+                + ClassUtils.getShortName(object.getClass()));
 
         Class clazz = object.getClass();
 
@@ -134,6 +133,18 @@ public class NamedEntityObjectIdentity implements AclObjectIdentity {
         return id;
     }
 
+    private String getPackageName(String className) {
+        Assert.hasLength(className, "class name must not be empty");
+
+        int lastDotIndex = className.lastIndexOf(".");
+
+        if (lastDotIndex == -1) {
+            return null;
+        }
+
+        return className.substring(0, lastDotIndex);
+    }
+
     /**
      * Important so caching operates properly.
      *

+ 0 - 10
project.xml

@@ -211,16 +211,6 @@
         <war.bundle>true</war.bundle>
       </properties>
     </dependency>
-    <dependency>
-      <groupId>commons-lang</groupId>
-      <artifactId>commons-lang</artifactId>
-      <version>2.1</version>
-      <type>jar</type>
-      <url>http://jakarta.apache.org/commons</url>
-      <properties>
-        <war.bundle>true</war.bundle>
-      </properties>
-    </dependency>
     <dependency>
       <groupId>commons-logging</groupId>
       <artifactId>commons-logging</artifactId>