X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=org.argeo.cms%2Fsrc%2Forg%2Fargeo%2Fcms%2Finternal%2Fkernel%2FKernelUtils.java;h=579138c0f2e111965eb5b0748941322563af9c76;hb=e91af5c65a42b3ff98400caa552965cdb3f730e6;hp=0a9e6c53e44a2c24d7b438b526ce15ddda5f8214;hpb=2c6cfdaa28c8108817155d724b87bbbfd0392c7c;p=lgpl%2Fargeo-commons.git diff --git a/org.argeo.cms/src/org/argeo/cms/internal/kernel/KernelUtils.java b/org.argeo.cms/src/org/argeo/cms/internal/kernel/KernelUtils.java index 0a9e6c53e..579138c0f 100644 --- a/org.argeo.cms/src/org/argeo/cms/internal/kernel/KernelUtils.java +++ b/org.argeo.cms/src/org/argeo/cms/internal/kernel/KernelUtils.java @@ -2,6 +2,7 @@ package org.argeo.cms.internal.kernel; import java.io.File; import java.io.IOException; +import java.net.URI; import java.util.Collections; import java.util.Dictionary; import java.util.Enumeration; @@ -25,6 +26,7 @@ import org.springframework.security.core.userdetails.UserDetails; /** Package utilities */ class KernelUtils implements KernelConstants { private final static String OSGI_INSTANCE_AREA = "osgi.instance.area"; + private final static String OSGI_CONFIGURATION_AREA = "osgi.configuration.area"; static Dictionary asDictionary(Properties props) { Hashtable hashtable = new Hashtable(); @@ -51,6 +53,17 @@ class KernelUtils implements KernelConstants { .getAbsoluteFile(); } + static File getOsgiConfigurationFile(String relativePath) { + try { + return new File(new URI(Activator.getBundleContext().getProperty( + OSGI_CONFIGURATION_AREA) + + relativePath)).getCanonicalFile(); + } catch (Exception e) { + throw new CmsException("Cannot get configuration file for " + + relativePath, e); + } + } + static String getFrameworkProp(String key, String def) { String value = Activator.getBundleContext().getProperty(key); if (value == null) @@ -63,6 +76,7 @@ class KernelUtils implements KernelConstants { } // Security + @Deprecated static void anonymousLogin(AuthenticationManager authenticationManager) { try { List anonAuthorities = Collections