X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=org.argeo.cms%2Fsrc%2Forg%2Fargeo%2Fcms%2Finternal%2Fkernel%2FKernelUtils.java;h=49f8c20a50be2580e8751683224a9fea25d367cb;hb=fe647a3bb2330ecac77b9f9be87632b51e64063d;hp=9b220f20af418355142fd8284fd1cc73fb904b11;hpb=06acf73a99f0e3908fe8998f1ff08dee109c5562;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 9b220f20a..49f8c20a5 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 @@ -4,6 +4,8 @@ import java.io.File; import java.io.IOException; import java.net.URI; import java.net.URISyntaxException; +import java.nio.file.Path; +import java.nio.file.Paths; import java.security.PrivilegedAction; import java.util.Dictionary; import java.util.Enumeration; @@ -65,25 +67,25 @@ class KernelUtils implements KernelConstants { .getAbsoluteFile(); } + static Path getOsgiInstancePath(String relativePath) { + return Paths.get(getOsgiInstanceUri(relativePath)); + } + static URI getOsgiInstanceUri(String relativePath) { String osgiInstanceBaseUri = getFrameworkProp(OSGI_INSTANCE_AREA); - try { - return new URI(osgiInstanceBaseUri + (relativePath != null ? relativePath : "")); - } catch (URISyntaxException e) { - throw new CmsException("Cannot get OSGi instance URI for " + relativePath, e); - } + 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 { @@ -118,26 +120,6 @@ class KernelUtils implements KernelConstants { } } - // @Deprecated - // static void anonymousLogin(AuthenticationManager authenticationManager) { - // try { - // List anonAuthorities = Collections - // .singletonList(new GrantedAuthorityPrincipal( - // KernelHeader.ROLE_ANONYMOUS)); - // UserDetails anonUser = new User(KernelHeader.USERNAME_ANONYMOUS, - // "", true, true, true, true, anonAuthorities); - // AnonymousAuthenticationToken anonToken = new - // AnonymousAuthenticationToken( - // DEFAULT_SECURITY_KEY, anonUser, anonAuthorities); - // Authentication authentication = authenticationManager - // .authenticate(anonToken); - // SecurityContextHolder.getContext() - // .setAuthentication(authentication); - // } catch (Exception e) { - // throw new CmsException("Cannot authenticate", e); - // } - // } - // HTTP static void logRequestHeaders(Log log, HttpServletRequest request) { if (!log.isDebugEnabled()) @@ -213,6 +195,16 @@ class KernelUtils implements KernelConstants { private static BundleContext getBundleContext() { return getBundleContext(KernelUtils.class); } + + 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); + } + } private KernelUtils() {