You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by en...@apache.org on 2020/09/18 23:29:00 UTC
[sling-org-apache-sling-jcr-contentloader] branch master updated:
SLING-9735 Remove loginAdministrative() usage from
org.apache.sling.jcr.contentloader
This is an automated email from the ASF dual-hosted git repository.
enorman pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-jcr-contentloader.git
The following commit(s) were added to refs/heads/master by this push:
new 2647cbf SLING-9735 Remove loginAdministrative() usage from org.apache.sling.jcr.contentloader
2647cbf is described below
commit 2647cbf573790e756a7f31793bcb680d79606483
Author: Eric Norman <en...@apache.org>
AuthorDate: Fri Sep 18 16:28:50 2020 -0700
SLING-9735 Remove loginAdministrative() usage from
org.apache.sling.jcr.contentloader
---
pom.xml | 2 +-
.../contentloader/hc/BundleContentLoadedCheck.java | 2 +-
.../internal/ContentLoaderService.java | 4 +--
.../contentloader/it/ContentloaderTestSupport.java | 33 ++++++++++++++++++----
4 files changed, 31 insertions(+), 10 deletions(-)
diff --git a/pom.xml b/pom.xml
index dafa4aa..ac6cd0d 100644
--- a/pom.xml
+++ b/pom.xml
@@ -138,7 +138,7 @@
<dependency>
<groupId>org.apache.sling</groupId>
<artifactId>org.apache.sling.jcr.api</artifactId>
- <version>2.0.6</version>
+ <version>2.3.0</version>
<scope>provided</scope>
</dependency>
<dependency>
diff --git a/src/main/java/org/apache/sling/jcr/contentloader/hc/BundleContentLoadedCheck.java b/src/main/java/org/apache/sling/jcr/contentloader/hc/BundleContentLoadedCheck.java
index d58d5f8..2fe432b 100644
--- a/src/main/java/org/apache/sling/jcr/contentloader/hc/BundleContentLoadedCheck.java
+++ b/src/main/java/org/apache/sling/jcr/contentloader/hc/BundleContentLoadedCheck.java
@@ -115,7 +115,7 @@ public class BundleContentLoadedCheck implements HealthCheck {
Session metadataSession = null;
try {
- metadataSession = repository.loginAdministrative(null);
+ metadataSession = repository.loginService(null, null);
BundleHelper bundleHelper = new ContentLoaderService();
diff --git a/src/main/java/org/apache/sling/jcr/contentloader/internal/ContentLoaderService.java b/src/main/java/org/apache/sling/jcr/contentloader/internal/ContentLoaderService.java
index e6ee7b4..d68d605 100644
--- a/src/main/java/org/apache/sling/jcr/contentloader/internal/ContentLoaderService.java
+++ b/src/main/java/org/apache/sling/jcr/contentloader/internal/ContentLoaderService.java
@@ -299,7 +299,7 @@ public class ContentLoaderService implements SynchronousBundleListener, BundleHe
@Override
public Session getSession()
throws RepositoryException {
- return getRepository().loginAdministrative(null);
+ return getRepository().loginService(null, null);
}
/**
@@ -307,7 +307,7 @@ public class ContentLoaderService implements SynchronousBundleListener, BundleHe
*/
@Override
public Session getSession(final String workspace) throws RepositoryException {
- return getRepository().loginAdministrative(workspace);
+ return getRepository().loginService(null, workspace);
}
/**
diff --git a/src/test/java/org/apache/sling/jcr/contentloader/it/ContentloaderTestSupport.java b/src/test/java/org/apache/sling/jcr/contentloader/it/ContentloaderTestSupport.java
index 8a2d894..5a8e1b1 100644
--- a/src/test/java/org/apache/sling/jcr/contentloader/it/ContentloaderTestSupport.java
+++ b/src/test/java/org/apache/sling/jcr/contentloader/it/ContentloaderTestSupport.java
@@ -18,6 +18,7 @@
*/
package org.apache.sling.jcr.contentloader.it;
+import static org.apache.felix.hc.api.FormattingResultLog.msHumanReadable;
import static org.apache.sling.testing.paxexam.SlingOptions.slingQuickstartOakTar;
import static org.apache.sling.testing.paxexam.SlingOptions.slingResourcePresence;
import static org.junit.Assert.assertEquals;
@@ -29,9 +30,7 @@ import static org.ops4j.pax.exam.CoreOptions.junitBundles;
import static org.ops4j.pax.exam.CoreOptions.mavenBundle;
import static org.ops4j.pax.exam.CoreOptions.streamBundle;
import static org.ops4j.pax.exam.cm.ConfigurationAdminOptions.factoryConfiguration;
-import static org.ops4j.pax.exam.cm.ConfigurationAdminOptions.newConfiguration;
import static org.ops4j.pax.tinybundles.core.TinyBundles.withBnd;
-import static org.apache.felix.hc.api.FormattingResultLog.msHumanReadable;
import java.io.BufferedWriter;
import java.io.IOException;
@@ -45,6 +44,7 @@ import java.util.concurrent.TimeUnit;
import javax.inject.Inject;
import javax.jcr.RepositoryException;
import javax.jcr.Session;
+import javax.jcr.SimpleCredentials;
import org.apache.felix.hc.api.Result;
import org.apache.felix.hc.api.ResultLog;
@@ -72,6 +72,9 @@ import com.google.common.collect.Multimap;
public abstract class ContentloaderTestSupport extends TestSupport {
+ protected static final String CONTENT_LOADER_VERIFY_USER = "content-loader-user";
+ protected static final char[] CONTENT_LOADER_VERIFY_PWD = "testing".toCharArray();
+
protected static final String TAG_TESTING_CONTENT_LOADING = "testing-content-loading";
@Inject
@@ -107,14 +110,32 @@ public abstract class ContentloaderTestSupport extends TestSupport {
return composite(
super.baseConfiguration(),
quickstart(),
+ // SLING-9735 - add server user for the o.a.s.jcr.contentloader bundle
+ factoryConfiguration("org.apache.sling.jcr.repoinit.RepositoryInitializer")
+ .put("scripts", new String[] {
+ "create service user sling-content-loader\n" +
+ "\n" +
+ "set ACL for sling-content-loader\n" +
+ " allow jcr:all on /\n" +
+ "end"})
+ .asOption(),
+ factoryConfiguration("org.apache.sling.serviceusermapping.impl.ServiceUserMapperImpl.amended")
+ .put("user.mapping", new String[]{"org.apache.sling.jcr.contentloader=sling-content-loader"})
+ .asOption(),
// Sling JCR ContentLoader
testBundle("bundle.filename"),
factoryConfiguration("org.apache.sling.resource.presence.internal.ResourcePresenter")
.put("path", CONTENT_ROOT_PATH)
.asOption(),
- // testing
- newConfiguration("org.apache.sling.jcr.base.internal.LoginAdminWhitelist")
- .put("whitelist.bundles.regexp", "PAXEXAM-PROBE-.*")
+ // testing - add a user to use to login and verify the content loading has happened
+ factoryConfiguration("org.apache.sling.jcr.repoinit.RepositoryInitializer")
+ .put("scripts", new String[] {
+ "create user " + CONTENT_LOADER_VERIFY_USER + " with password " + new String(CONTENT_LOADER_VERIFY_PWD) +"\n" +
+ "\n" +
+ "set ACL for content-loader-user\n" +
+ " allow jcr:read on /\n" +
+ " allow jcr:readAccessControl on /\n" +
+ "end"})
.asOption(),
slingResourcePresence(),
junitBundles()
@@ -131,7 +152,7 @@ public abstract class ContentloaderTestSupport extends TestSupport {
@Before
public void setup() throws Exception {
- session = repository.loginAdministrative(null);
+ session = repository.login(new SimpleCredentials(CONTENT_LOADER_VERIFY_USER, CONTENT_LOADER_VERIFY_PWD));
}
@After