X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=org.argeo.cms%2Fsrc%2Forg%2Fargeo%2Fcms%2Finternal%2Fkernel%2FKernelUtils.java;h=5b1df1708ab47ad8d7114bb084ba01ac12daa20a;hb=baccdf322cf7c6dda7b61f68d3a873be86c3089d;hp=49f8c20a50be2580e8751683224a9fea25d367cb;hpb=b4c772a263e0f19f6c283dbbb87d04794072b284;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 49f8c20a5..5b1df1708 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.io.PrintStream; import java.net.URI; import java.net.URISyntaxException; import java.nio.file.Path; @@ -11,6 +12,7 @@ import java.util.Dictionary; import java.util.Enumeration; import java.util.Hashtable; import java.util.Properties; +import java.util.TreeMap; import java.util.TreeSet; import javax.jcr.Repository; @@ -23,15 +25,15 @@ import javax.servlet.http.HttpServletRequest; import org.apache.commons.logging.Log; import org.argeo.cms.CmsException; -import org.argeo.cms.auth.AuthConstants; +import org.argeo.node.NodeConstants; import org.osgi.framework.Bundle; import org.osgi.framework.BundleContext; import org.osgi.framework.FrameworkUtil; /** 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"; + final static String OSGI_INSTANCE_AREA = "osgi.instance.area"; + final static String OSGI_CONFIGURATION_AREA = "osgi.configuration.area"; static Dictionary asDictionary(Properties props) { Hashtable hashtable = new Hashtable(); @@ -73,19 +75,20 @@ class KernelUtils implements KernelConstants { static URI getOsgiInstanceUri(String relativePath) { String osgiInstanceBaseUri = getFrameworkProp(OSGI_INSTANCE_AREA); - return safeUri(osgiInstanceBaseUri + (relativePath != null ? relativePath : "")); + return safeUri(osgiInstanceBaseUri + (relativePath != null ? relativePath : "")); } -// static String getOsgiInstancePath(String relativePath) { -// try { -// if (relativePath == null) -// return getOsgiInstanceDir().getCanonicalPath(); -// else -// return new File(getOsgiInstanceDir(), relativePath).getCanonicalPath(); -// } catch (IOException e) { -// throw new CmsException("Cannot get instance path for " + relativePath, e); -// } -// } + // static String getOsgiInstancePath(String relativePath) { + // try { + // if (relativePath == null) + // return getOsgiInstanceDir().getCanonicalPath(); + // else + // return new File(getOsgiInstanceDir(), relativePath).getCanonicalPath(); + // } catch (IOException e) { + // throw new CmsException("Cannot get instance path for " + relativePath, + // e); + // } + // } static File getOsgiConfigurationFile(String relativePath) { try { @@ -108,29 +111,17 @@ class KernelUtils implements KernelConstants { } // Security - static Subject anonymousLogin() { - Subject subject = new Subject(); - LoginContext lc; - try { - lc = new LoginContext(AuthConstants.LOGIN_CONTEXT_ANONYMOUS, subject); - lc.login(); - return subject; - } catch (LoginException e) { - throw new CmsException("Cannot login as anonymous", e); - } - } - - // HTTP - static void logRequestHeaders(Log log, HttpServletRequest request) { - if (!log.isDebugEnabled()) - return; - for (Enumeration headerNames = request.getHeaderNames(); headerNames.hasMoreElements();) { - String headerName = headerNames.nextElement(); - Object headerValue = request.getHeader(headerName); - log.debug(headerName + ": " + headerValue); - } - log.debug(request.getRequestURI() + "\n"); - } +// static Subject anonymousLogin() { +// Subject subject = new Subject(); +// LoginContext lc; +// try { +// lc = new LoginContext(NodeConstants.LOGIN_CONTEXT_USER, subject); +// lc.login(); +// return subject; +// } catch (LoginException e) { +// throw new CmsException("Cannot login as anonymous", e); +// } +// } static void logFrameworkProperties(Log log) { BundleContext bc = getBundleContext(); @@ -148,6 +139,14 @@ class KernelUtils implements KernelConstants { // log.debug(key + "=" + bc.getProperty(key)); } + static void printSystemProperties(PrintStream out) { + TreeMap display = new TreeMap<>(); + for (Object key : System.getProperties().keySet()) + display.put(key.toString(), System.getProperty(key.toString())); + for (String key : display.keySet()) + out.println(key + "=" + display.get(key)); + } + static Session openAdminSession(Repository repository) { return openAdminSession(repository, null); } @@ -157,7 +156,7 @@ class KernelUtils implements KernelConstants { Thread.currentThread().setContextClassLoader(KernelUtils.class.getClassLoader()); LoginContext loginContext; try { - loginContext = new LoginContext(AuthConstants.LOGIN_CONTEXT_DATA_ADMIN); + loginContext = new LoginContext(NodeConstants.LOGIN_CONTEXT_DATA_ADMIN); loginContext.login(); } catch (LoginException e1) { throw new CmsException("Could not login as data admin", e1); @@ -195,14 +194,14 @@ class KernelUtils implements KernelConstants { private static BundleContext getBundleContext() { return getBundleContext(KernelUtils.class); } - - private static URI safeUri(String uri){ - if(uri==null) + + private static URI safeUri(String uri) { + if (uri == null) throw new CmsException("URI cannot be null"); try { return new URI(uri); } catch (URISyntaxException e) { - throw new CmsException("Dadly formatted URI "+uri, e); + throw new CmsException("Dadly formatted URI " + uri, e); } }