X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=org.argeo.cms%2Fsrc%2Forg%2Fargeo%2Fcms%2Finternal%2Fkernel%2FKernelUtils.java;h=1d15e2a3ae041911c95f963e69042c6833877416;hb=070656b6431e699a0f6ac8dc1839bce3fc2509ce;hp=c1e20892456fd26792956f3ce2532a3ddce9738c;hpb=f708c8d4cfc7ca9446b61b9f26244394cb447e4a;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 c1e208924..1d15e2a3a 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 @@ -16,6 +16,8 @@ import javax.servlet.http.HttpServletRequest; import org.apache.commons.logging.Log; import org.argeo.cms.CmsException; import org.argeo.cms.auth.AuthConstants; +import org.osgi.framework.BundleContext; +import org.osgi.framework.Constants; /** Package utilities */ class KernelUtils implements KernelConstants { @@ -41,6 +43,17 @@ class KernelUtils implements KernelConstants { return asDictionary(props); } + static File getExecutionDir(String relativePath) { + File executionDir = new File(getFrameworkProp("user.dir")); + if (relativePath == null) + return executionDir; + try { + return new File(executionDir, relativePath).getCanonicalFile(); + } catch (IOException e) { + throw new CmsException("Cannot get canonical file", e); + } + } + static File getOsgiInstanceDir() { return new File(Activator.getBundleContext() .getProperty(OSGI_INSTANCE_AREA).substring("file:".length())) @@ -128,6 +141,19 @@ class KernelUtils implements KernelConstants { } } + static void logFrameworkProperties(Log log) { + BundleContext bc = Activator.getBundleContext(); + String[] keys = { Constants.FRAMEWORK_STORAGE, + Constants.FRAMEWORK_OS_NAME, Constants.FRAMEWORK_OS_VERSION, + Constants.FRAMEWORK_PROCESSOR, Constants.FRAMEWORK_SECURITY, + Constants.FRAMEWORK_TRUST_REPOSITORIES, + Constants.FRAMEWORK_WINDOWSYSTEM, Constants.FRAMEWORK_VENDOR, + Constants.FRAMEWORK_VERSION, Constants.FRAMEWORK_STORAGE_CLEAN, + Constants.FRAMEWORK_LANGUAGE, Constants.FRAMEWORK_UUID }; + for (String key : keys) + log.debug(key + "=" + bc.getProperty(key)); + } + private KernelUtils() { }