[exo-jcr-commits] exo-jcr SVN: r5448 - core/branches/2.5.x/exo.core.component.database/src/main/java/org/exoplatform/services/database/impl.

do-not-reply at jboss.org do-not-reply at jboss.org
Fri Jan 13 02:42:50 EST 2012


Author: tolusha
Date: 2012-01-13 02:42:50 -0500 (Fri, 13 Jan 2012)
New Revision: 5448

Modified:
   core/branches/2.5.x/exo.core.component.database/src/main/java/org/exoplatform/services/database/impl/XAPoolTxSupportDatabaseService.java
Log:
EXOJCR-1695: execute code in priv block

Modified: core/branches/2.5.x/exo.core.component.database/src/main/java/org/exoplatform/services/database/impl/XAPoolTxSupportDatabaseService.java
===================================================================
--- core/branches/2.5.x/exo.core.component.database/src/main/java/org/exoplatform/services/database/impl/XAPoolTxSupportDatabaseService.java	2012-01-13 07:41:37 UTC (rev 5447)
+++ core/branches/2.5.x/exo.core.component.database/src/main/java/org/exoplatform/services/database/impl/XAPoolTxSupportDatabaseService.java	2012-01-13 07:42:50 UTC (rev 5448)
@@ -20,12 +20,14 @@
 
 import org.enhydra.jdbc.pool.StandardXAPoolDataSource;
 import org.enhydra.jdbc.standard.StandardXADataSource;
+import org.exoplatform.commons.utils.SecurityHelper;
 import org.exoplatform.container.xml.InitParams;
 import org.exoplatform.container.xml.PropertiesParam;
 import org.exoplatform.services.database.DatabaseService;
 import org.exoplatform.services.database.ExoDatasource;
 import org.exoplatform.services.transaction.TransactionService;
 
+import java.security.PrivilegedAction;
 import java.sql.Connection;
 import java.util.HashMap;
 import java.util.Iterator;
@@ -94,7 +96,14 @@
 
    private DataSource createDatasource(Map<String, String> props) throws Exception
    {
-      StandardXADataSource ds = new StandardXADataSource();
+      StandardXADataSource ds = SecurityHelper.doPrivilegedAction(new PrivilegedAction<StandardXADataSource>()
+      {
+         public StandardXADataSource run()
+         {
+            return new StandardXADataSource();
+         }
+      });
+
       ds.setDriverName(props.get("connection.driver"));
       ds.setUrl(props.get("connection.url"));
       ds.setUser(props.get("connection.login"));



More information about the exo-jcr-commits mailing list