[jboss-svn-commits] JBoss Common SVN: r4339 - arquillian/trunk/testenrichers/ejb/src/main/java/org/jboss/arquillian/testenricher/ejb.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Thu Apr 29 14:54:16 EDT 2010


Author: ALRubinger
Date: 2010-04-29 14:54:15 -0400 (Thu, 29 Apr 2010)
New Revision: 4339

Modified:
   arquillian/trunk/testenrichers/ejb/src/main/java/org/jboss/arquillian/testenricher/ejb/EJBInjectionEnricher.java
   arquillian/trunk/testenrichers/ejb/src/main/java/org/jboss/arquillian/testenricher/ejb/SecurityActions.java
Log:
[ARQ-125] Introduce a hack for priv view until we get a proper extraction

Modified: arquillian/trunk/testenrichers/ejb/src/main/java/org/jboss/arquillian/testenricher/ejb/EJBInjectionEnricher.java
===================================================================
--- arquillian/trunk/testenrichers/ejb/src/main/java/org/jboss/arquillian/testenricher/ejb/EJBInjectionEnricher.java	2010-04-28 18:48:46 UTC (rev 4338)
+++ arquillian/trunk/testenrichers/ejb/src/main/java/org/jboss/arquillian/testenricher/ejb/EJBInjectionEnricher.java	2010-04-29 18:54:15 UTC (rev 4339)
@@ -59,6 +59,31 @@
      return new Object[method.getParameterTypes().length];
    }
    
+   /**
+    * Obtains all field in the specified class which contain the specified annotation
+    * @param clazz
+    * @param annotation
+    * @return
+    * @throws IllegalArgumentException If either argument is not specified
+    */
+   //TODO Hack, this leaks out privileged operations outside the package.  Extract out properly.
+   protected List<Field> getFieldsWithAnnotation(final Class<?> clazz, final Class<? extends Annotation> annotation)
+         throws IllegalArgumentException
+   {
+      // Precondition checks
+      if (clazz == null)
+      {
+         throw new IllegalArgumentException("clazz must be specified");
+      }
+      if (annotation == null)
+      {
+         throw new IllegalArgumentException("annotation must be specified");
+      }
+
+      // Delegate to the privileged operations
+      return SecurityActions.getFieldsWithAnnotation(clazz, annotation);
+   }
+   
    protected void injectClass(Context context, Object testCase) 
    {
       try 

Modified: arquillian/trunk/testenrichers/ejb/src/main/java/org/jboss/arquillian/testenricher/ejb/SecurityActions.java
===================================================================
--- arquillian/trunk/testenrichers/ejb/src/main/java/org/jboss/arquillian/testenricher/ejb/SecurityActions.java	2010-04-28 18:48:46 UTC (rev 4338)
+++ arquillian/trunk/testenrichers/ejb/src/main/java/org/jboss/arquillian/testenricher/ejb/SecurityActions.java	2010-04-29 18:54:15 UTC (rev 4339)
@@ -163,7 +163,7 @@
       }
    }
 
-   public static boolean isClassPresent(String name) 
+   static boolean isClassPresent(String name) 
    {
       try 
       {
@@ -177,7 +177,7 @@
       }
    }
    
-   public static List<Field> getFieldsWithAnnotation(final Class<?> source, final Class<? extends Annotation> annotationClass) 
+   static List<Field> getFieldsWithAnnotation(final Class<?> source, final Class<? extends Annotation> annotationClass) 
    {
       List<Field> declaredAccessableFields = AccessController.doPrivileged(new PrivilegedAction<List<Field>>()
       {
@@ -201,7 +201,7 @@
       return declaredAccessableFields;
    }
 
-   public static List<Method> getMethodsWithAnnotation(final Class<?> source, final Class<? extends Annotation> annotationClass) 
+   static List<Method> getMethodsWithAnnotation(final Class<?> source, final Class<? extends Annotation> annotationClass) 
    {
       List<Method> declaredAccessableMethods = AccessController.doPrivileged(new PrivilegedAction<List<Method>>()
       {



More information about the jboss-svn-commits mailing list