Author: ron.sigal(a)jboss.com
Date: 2008-04-01 23:58:55 -0400 (Tue, 01 Apr 2008)
New Revision: 3838
Modified:
remoting2/branches/2.x/src/main/org/jboss/remoting/network/NetworkRegistryQuery.java
Log:
JBREM-934: Put MBeanServer.isInstanceOf() call in AccessController.doPrivileged() call.
Modified:
remoting2/branches/2.x/src/main/org/jboss/remoting/network/NetworkRegistryQuery.java
===================================================================
---
remoting2/branches/2.x/src/main/org/jboss/remoting/network/NetworkRegistryQuery.java 2008-04-02
03:57:42 UTC (rev 3837)
+++
remoting2/branches/2.x/src/main/org/jboss/remoting/network/NetworkRegistryQuery.java 2008-04-02
03:58:55 UTC (rev 3838)
@@ -22,10 +22,13 @@
package org.jboss.remoting.network;
+import java.security.AccessController;
+import java.security.PrivilegedActionException;
+import java.security.PrivilegedExceptionAction;
+
import javax.management.BadAttributeValueExpException;
import javax.management.BadBinaryOpValueExpException;
import javax.management.BadStringOperationException;
-import javax.management.InstanceNotFoundException;
import javax.management.InvalidApplicationException;
import javax.management.MBeanServer;
import javax.management.ObjectName;
@@ -42,15 +45,22 @@
private MBeanServer server;
private static final long serialVersionUID = 2402056810602499064L;
- public boolean apply(ObjectName objectName) throws BadStringOperationException,
BadBinaryOpValueExpException, BadAttributeValueExpException, InvalidApplicationException
+ public boolean apply(final ObjectName objectName) throws BadStringOperationException,
BadBinaryOpValueExpException, BadAttributeValueExpException, InvalidApplicationException
{
try
{
- return server.isInstanceOf(objectName, NetworkRegistryMBean.class.getName());
+ return ((Boolean)AccessController.doPrivileged( new PrivilegedExceptionAction()
+ {
+ public Object run() throws Exception
+ {
+ return new Boolean(server.isInstanceOf(objectName,
NetworkRegistryMBean.class.getName()));
+ }
+ })).booleanValue();
}
- catch(InstanceNotFoundException e)
+ catch (PrivilegedActionException e)
{
}
+
return false;
}
Show replies by date