Author: tolusha
Date: 2011-07-20 02:30:28 -0400 (Wed, 20 Jul 2011)
New Revision: 4667
Modified:
jcr/trunk/exo.jcr.component.ext/src/main/java/org/exoplatform/services/jcr/ext/backup/BackupChainLog.java
jcr/trunk/exo.jcr.component.ext/src/main/java/org/exoplatform/services/jcr/ext/backup/RepositoryBackupChainLog.java
Log:
EXOJCR-1448: Some code in jcr-ext require to be privileged
Modified:
jcr/trunk/exo.jcr.component.ext/src/main/java/org/exoplatform/services/jcr/ext/backup/BackupChainLog.java
===================================================================
---
jcr/trunk/exo.jcr.component.ext/src/main/java/org/exoplatform/services/jcr/ext/backup/BackupChainLog.java 2011-07-19
14:55:34 UTC (rev 4666)
+++
jcr/trunk/exo.jcr.component.ext/src/main/java/org/exoplatform/services/jcr/ext/backup/BackupChainLog.java 2011-07-20
06:30:28 UTC (rev 4667)
@@ -578,7 +578,34 @@
+
PrivilegedFileHelper.getCanonicalPath(getBackupConfig().getBackupDir()));
}
- IBindingFactory factory =
BindingDirectory.getFactory(RepositoryServiceConfiguration.class);
+ IBindingFactory factory;
+ try
+ {
+ factory = SecurityHelper.doPrivilegedExceptionAction(new
PrivilegedExceptionAction<IBindingFactory>()
+ {
+ public IBindingFactory run() throws Exception
+ {
+ return
BindingDirectory.getFactory(RepositoryServiceConfiguration.class);
+ }
+ });
+ }
+ catch (PrivilegedActionException pae)
+ {
+ Throwable cause = pae.getCause();
+ if (cause instanceof JiBXException)
+ {
+ throw (JiBXException)cause;
+ }
+ else if (cause instanceof RuntimeException)
+ {
+ throw (RuntimeException)cause;
+ }
+ else
+ {
+ throw new RuntimeException(cause);
+ }
+ }
+
IUnmarshallingContext uctx = factory.createUnmarshallingContext();
RepositoryServiceConfiguration conf =
(RepositoryServiceConfiguration)
uctx.unmarshalDocument(PrivilegedFileHelper
Modified:
jcr/trunk/exo.jcr.component.ext/src/main/java/org/exoplatform/services/jcr/ext/backup/RepositoryBackupChainLog.java
===================================================================
---
jcr/trunk/exo.jcr.component.ext/src/main/java/org/exoplatform/services/jcr/ext/backup/RepositoryBackupChainLog.java 2011-07-19
14:55:34 UTC (rev 4666)
+++
jcr/trunk/exo.jcr.component.ext/src/main/java/org/exoplatform/services/jcr/ext/backup/RepositoryBackupChainLog.java 2011-07-20
06:30:28 UTC (rev 4667)
@@ -357,7 +357,34 @@
+
PrivilegedFileHelper.getCanonicalPath(getBackupConfig().getBackupDir()));
}
- IBindingFactory factory =
BindingDirectory.getFactory(RepositoryServiceConfiguration.class);
+ IBindingFactory factory;
+ try
+ {
+ factory = SecurityHelper.doPrivilegedExceptionAction(new
PrivilegedExceptionAction<IBindingFactory>()
+ {
+ public IBindingFactory run() throws Exception
+ {
+ return
BindingDirectory.getFactory(RepositoryServiceConfiguration.class);
+ }
+ });
+ }
+ catch (PrivilegedActionException pae)
+ {
+ Throwable cause = pae.getCause();
+ if (cause instanceof JiBXException)
+ {
+ throw (JiBXException)cause;
+ }
+ else if (cause instanceof RuntimeException)
+ {
+ throw (RuntimeException)cause;
+ }
+ else
+ {
+ throw new RuntimeException(cause);
+ }
+ }
+
IUnmarshallingContext uctx = factory.createUnmarshallingContext();
RepositoryServiceConfiguration conf =
(RepositoryServiceConfiguration)
uctx.unmarshalDocument(PrivilegedFileHelper
Show replies by date