[jboss-remoting-commits] JBoss Remoting SVN: r4710 - remoting2/branches/2.x/src/main/org/jboss/remoting/util.

jboss-remoting-commits at lists.jboss.org jboss-remoting-commits at lists.jboss.org
Wed Nov 19 14:32:02 EST 2008


Author: ron.sigal at jboss.com
Date: 2008-11-19 14:32:02 -0500 (Wed, 19 Nov 2008)
New Revision: 4710

Modified:
   remoting2/branches/2.x/src/main/org/jboss/remoting/util/SecurityUtility.java
Log:
JBREM-1058: Moved PropertyEditors.mapJavaProperties() to SecurityUtility.

Modified: remoting2/branches/2.x/src/main/org/jboss/remoting/util/SecurityUtility.java
===================================================================
--- remoting2/branches/2.x/src/main/org/jboss/remoting/util/SecurityUtility.java	2008-11-19 19:30:05 UTC (rev 4709)
+++ remoting2/branches/2.x/src/main/org/jboss/remoting/util/SecurityUtility.java	2008-11-19 19:32:02 UTC (rev 4710)
@@ -21,6 +21,7 @@
 */
 package org.jboss.remoting.util;
 
+import java.beans.IntrospectionException;
 import java.io.File;
 import java.io.FileInputStream;
 import java.io.FileNotFoundException;
@@ -52,6 +53,7 @@
 import java.security.PrivilegedActionException;
 import java.security.PrivilegedExceptionAction;
 import java.util.ArrayList;
+import java.util.Properties;
 
 import javax.management.InstanceNotFoundException;
 import javax.management.MBeanServer;
@@ -66,6 +68,7 @@
 import org.jboss.remoting.transport.rmi.RMIServerInvokerInf;
 import org.jboss.serial.io.JBossObjectInputStream;
 import org.jboss.serial.io.JBossObjectOutputStream;
+import org.jboss.util.propertyeditor.PropertyEditors;
 
 /**
  * SecurityUtility provides a central point for making security sensitive calls.
@@ -791,6 +794,33 @@
       }
    }
    
+   static public void mapJavaBeanProperties(final Object o, final Properties props, final boolean isStrict)
+   throws IntrospectionException
+   {
+      if (skipAccessControl)
+      {
+         PropertyEditors.mapJavaBeanProperties(o, props, isStrict);
+         return;
+      }
+
+      try
+      {
+         AccessController.doPrivileged( new PrivilegedExceptionAction()
+         {
+            public Object run() throws IntrospectionException
+            {
+               PropertyEditors.mapJavaBeanProperties(o, props, isStrict);
+               return null;
+            }
+         });
+      }
+      catch (PrivilegedActionException e)
+      {
+         throw (IntrospectionException) e.getCause();
+      }
+   }
+   
+   
    static public Object readObject(final ObjectInputStream ois)
    throws IOException, ClassNotFoundException
    {




More information about the jboss-remoting-commits mailing list