X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=org.argeo.cms%2Fsrc%2Forg%2Fargeo%2Fcms%2Finternal%2Fkernel%2FDataHttp.java;h=a1507a5910aaf2392c76a04d317380d266e70cbf;hb=0243aa5633af84d8608ba912483dbaaaefac42f1;hp=88f79c5ea1b8b6810f8b1e41ac05bab01fcbcf93;hpb=06acf73a99f0e3908fe8998f1ff08dee109c5562;p=lgpl%2Fargeo-commons.git diff --git a/org.argeo.cms/src/org/argeo/cms/internal/kernel/DataHttp.java b/org.argeo.cms/src/org/argeo/cms/internal/kernel/DataHttp.java index 88f79c5ea..a1507a591 100644 --- a/org.argeo.cms/src/org/argeo/cms/internal/kernel/DataHttp.java +++ b/org.argeo.cms/src/org/argeo/cms/internal/kernel/DataHttp.java @@ -1,7 +1,5 @@ package org.argeo.cms.internal.kernel; -import static org.argeo.cms.auth.AuthConstants.LOGIN_CONTEXT_USER; - import java.io.IOException; import java.io.Serializable; import java.net.URL; @@ -32,11 +30,10 @@ import org.apache.jackrabbit.server.SessionProvider; import org.apache.jackrabbit.server.remoting.davex.JcrRemotingServlet; import org.apache.jackrabbit.webdav.simple.SimpleWebdavServlet; import org.argeo.cms.CmsException; -import org.argeo.cms.auth.AuthConstants; import org.argeo.cms.auth.HttpRequestCallback; import org.argeo.cms.auth.HttpRequestCallbackHandler; -import org.argeo.jcr.ArgeoJcrConstants; import org.argeo.jcr.JcrUtils; +import org.argeo.node.NodeConstants; import org.osgi.framework.BundleContext; import org.osgi.framework.FrameworkUtil; import org.osgi.framework.ServiceReference; @@ -51,7 +48,7 @@ import org.osgi.util.tracker.ServiceTrackerCustomizer; * Intercepts and enriches http access, mainly focusing on security and * transactionality. */ -class DataHttp implements KernelConstants, ArgeoJcrConstants { +class DataHttp implements KernelConstants { private final static Log log = LogFactory.getLog(DataHttp.class); // private final static String ATTR_AUTH = "auth"; @@ -147,7 +144,7 @@ class DataHttp implements KernelConstants, ArgeoJcrConstants { if (authorization == null) throw new CmsException("Not authenticated"); try { - LoginContext lc = new LoginContext(AuthConstants.LOGIN_CONTEXT_USER, + LoginContext lc = new LoginContext(NodeConstants.LOGIN_CONTEXT_USER, new HttpRequestCallbackHandler(request)); lc.login(); return lc.getSubject(); @@ -161,7 +158,7 @@ class DataHttp implements KernelConstants, ArgeoJcrConstants { @Override public Repository addingService(ServiceReference reference) { Repository repository = bc.getService(reference); - Object jcrRepoAlias = reference.getProperty(ArgeoJcrConstants.JCR_REPOSITORY_ALIAS); + Object jcrRepoAlias = reference.getProperty(NodeConstants.CN); if (jcrRepoAlias != null) { String alias = jcrRepoAlias.toString(); registerRepositoryServlets(alias, repository); @@ -175,7 +172,7 @@ class DataHttp implements KernelConstants, ArgeoJcrConstants { @Override public void removedService(ServiceReference reference, Repository service) { - Object jcrRepoAlias = reference.getProperty(ArgeoJcrConstants.JCR_REPOSITORY_ALIAS); + Object jcrRepoAlias = reference.getProperty(NodeConstants.CN); if (jcrRepoAlias != null) { String alias = jcrRepoAlias.toString(); unregisterRepositoryServlets(alias); @@ -197,7 +194,7 @@ class DataHttp implements KernelConstants, ArgeoJcrConstants { if (anonymous) { Subject subject = KernelUtils.anonymousLogin(); Authorization authorization = subject.getPrivateCredentials(Authorization.class).iterator().next(); - request.setAttribute(REMOTE_USER, AuthConstants.ROLE_ANONYMOUS); + request.setAttribute(REMOTE_USER, NodeConstants.ROLE_ANONYMOUS); request.setAttribute(AUTHORIZATION, authorization); return true; } @@ -205,13 +202,13 @@ class DataHttp implements KernelConstants, ArgeoJcrConstants { if (log.isTraceEnabled()) KernelUtils.logRequestHeaders(log, request); try { - new LoginContext(LOGIN_CONTEXT_USER, new HttpRequestCallbackHandler(request)).login(); + new LoginContext(NodeConstants.LOGIN_CONTEXT_USER, new HttpRequestCallbackHandler(request)).login(); return true; } catch (CredentialNotFoundException e) { CallbackHandler token = basicAuth(request); if (token != null) { try { - LoginContext lc = new LoginContext(LOGIN_CONTEXT_USER, token); + LoginContext lc = new LoginContext(NodeConstants.LOGIN_CONTEXT_USER, token); lc.login(); // Note: this is impossible to reliably clear the // authorization header when access from a browser.