You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by si...@apache.org on 2019/07/01 11:50:38 UTC
[sling-org-apache-sling-feature-cpconverter] 01/01: Merge branch
'master' into avoid_subpackages_flattering
This is an automated email from the ASF dual-hosted git repository.
simonetripodi pushed a commit to branch avoid_subpackages_flattering
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-feature-cpconverter.git
commit 930819b5f081a5d877dfdbda56303c7260598e67
Merge: f24e81c 676985b
Author: Simo Tripodi <st...@adobe.com>
AuthorDate: Mon Jul 1 13:50:30 2019 +0200
Merge branch 'master' into avoid_subpackages_flattering
# Conflicts:
# src/main/java/org/apache/sling/feature/cpconverter/acl/DefaultAclManager.java
# src/test/java/org/apache/sling/feature/cpconverter/acl/AclManagerTest.java
# src/test/java/org/apache/sling/feature/cpconverter/handlers/RepPolicyEntryHandlerTest.java
.../apache/sling/feature/cpconverter/acl/Acl.java | 20 ++++++--
.../sling/feature/cpconverter/acl/AclManager.java | 4 +-
.../feature/cpconverter/acl/DefaultAclManager.java | 55 +++++++++++---------
.../cpconverter/acl/{Acl.java => SystemUser.java} | 59 ++++++++++++----------
.../handlers/RepPolicyEntryHandler.java | 7 ++-
.../handlers/SystemUsersEntryHandler.java | 12 +++--
.../feature/cpconverter/acl/AclManagerTest.java | 17 ++++---
.../handlers/RepPolicyEntryHandlerTest.java | 35 ++++++++-----
.../handlers/SystemUsersEntryHandlerTest.java | 5 +-
9 files changed, 130 insertions(+), 84 deletions(-)
diff --cc src/main/java/org/apache/sling/feature/cpconverter/acl/AclManager.java
index a3c15bd,f820bca..80ac1be
--- a/src/main/java/org/apache/sling/feature/cpconverter/acl/AclManager.java
+++ b/src/main/java/org/apache/sling/feature/cpconverter/acl/AclManager.java
@@@ -26,11 -24,11 +26,11 @@@ import org.apache.sling.feature.cpconve
*/
public interface AclManager {
- boolean addSystemUser(String systemUser);
+ boolean addSystemUser(SystemUser systemUser);
- Acl addAcl(String systemUser, String operation, String privileges, String path);
+ Acl addAcl(String systemUser, Acl acl);
- void addRepoinitExtension(VaultPackageAssembler packageAssembler, Feature feature);
+ void addRepoinitExtension(List<VaultPackageAssembler> packageAssemblers, Feature feature);
void addNodetypeRegistrationSentence(String nodetypeRegistrationSentence);
diff --cc src/main/java/org/apache/sling/feature/cpconverter/acl/DefaultAclManager.java
index 4f72cb2,b1816e8..11c8c4c
--- a/src/main/java/org/apache/sling/feature/cpconverter/acl/DefaultAclManager.java
+++ b/src/main/java/org/apache/sling/feature/cpconverter/acl/DefaultAclManager.java
@@@ -105,16 -105,16 +105,16 @@@ public final class DefaultAclManager im
// system users
- for (String systemUser : systemUsers) {
- List<Acl> authorizations = acls.remove(systemUser);
+ for (SystemUser systemUser : systemUsers) {
+ List<Acl> authorizations = acls.remove(systemUser.getId());
- // make sure all paths are created first
+ // make sure all users are created first
- addPaths(authorizations, packageAssemblers, formatter);
+ formatter.format("create service user %s with path %s%n", systemUser.getId(), systemUser.getPath().getFileName());
- // create then the users
+ // create then the paths
- formatter.format("create service user %s%n", systemUser);
- addPaths(authorizations, packageAssembler, formatter);
++ addPaths(authorizations, packageAssemblers, formatter);
// finally add ACLs
@@@ -182,32 -191,25 +191,32 @@@
addPath(authorization.getPath(), paths);
}
- Set<String> visitedPaths = new HashSet<>();
- for (Path path : paths) {
- File currentDir = packageAssembler.getEntry(path.toString());
- String type = DEFAULT_TYPE;
-
- if (currentDir.exists()) {
- File currentContent = new File(currentDir, CONTENT_XML_FILE_NAME);
- if (currentContent.exists()) {
- try (FileInputStream input = new FileInputStream(currentContent)) {
- type = new PrimaryTypeParser(DEFAULT_TYPE).parse(input);
- } catch (Exception e) {
- throw new RuntimeException("A fatal error occurred while parsing the '"
- + currentContent
- + "' file, see nested exceptions: "
- + e);
++ Set<Path> visitedPaths = new HashSet<>();
+ for (VaultPackageAssembler packageAssembler: packageAssemblers) {
- for (String path : paths) {
++ for (Path path : paths) {
+ if (!visitedPaths.add(path)) {
+ continue;
+ }
+
- File currentDir = packageAssembler.getEntry(path);
++ File currentDir = packageAssembler.getEntry(path.toString());
+ String type = DEFAULT_TYPE;
+
+ if (currentDir.exists()) {
+ File currentContent = new File(currentDir, CONTENT_XML_FILE_NAME);
+ if (currentContent.exists()) {
+ try (FileInputStream input = new FileInputStream(currentContent)) {
+ type = new PrimaryTypeParser(DEFAULT_TYPE).parse(input);
+ } catch (Exception e) {
+ throw new RuntimeException("A fatal error occurred while parsing the '"
+ + currentContent
+ + "' file, see nested exceptions: "
+ + e);
+ }
}
}
- }
- formatter.format("create path (%s) %s%n", type, path);
+ formatter.format("create path (%s) %s%n", type, path);
+ }
}
}
diff --cc src/test/java/org/apache/sling/feature/cpconverter/acl/AclManagerTest.java
index 1b835e1,5ae7cd8..2fc239b
--- a/src/test/java/org/apache/sling/feature/cpconverter/acl/AclManagerTest.java
+++ b/src/test/java/org/apache/sling/feature/cpconverter/acl/AclManagerTest.java
@@@ -23,7 -23,7 +23,8 @@@ import static org.mockito.Mockito.mock
import static org.mockito.Mockito.when;
import java.io.File;
+ import java.nio.file.Paths;
+import java.util.Arrays;
import org.apache.sling.feature.ArtifactId;
import org.apache.sling.feature.Extension;
diff --cc src/test/java/org/apache/sling/feature/cpconverter/handlers/RepPolicyEntryHandlerTest.java
index 1d8f63c,e39c660..a94cf52
--- a/src/test/java/org/apache/sling/feature/cpconverter/handlers/RepPolicyEntryHandlerTest.java
+++ b/src/test/java/org/apache/sling/feature/cpconverter/handlers/RepPolicyEntryHandlerTest.java
@@@ -16,18 -16,18 +16,19 @@@
*/
package org.apache.sling.feature.cpconverter.handlers;
--import static org.mockito.ArgumentMatchers.anyString;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertTrue;
++import static org.mockito.ArgumentMatchers.anyString;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.when;
import java.io.File;
+ import java.nio.file.Paths;
+import java.util.Arrays;
import org.apache.jackrabbit.vault.fs.io.Archive;
import org.apache.jackrabbit.vault.fs.io.Archive.Entry;