in src/main/java/org/apache/sling/testing/mock/jcr/MockUserManager.java [219:245]
protected Node ensureAuthorizablePathExists(String intermediatePath, String principalName, boolean isGroup) throws RepositoryException {
if (intermediatePath == null) {
if (isGroup) {
intermediatePath = "/home/groups"; // NOSONAR
} else {
intermediatePath = "/home/users"; // NOSONAR
}
}
// ensure the resource at the path exists
String[] segments = intermediatePath.split("/");
Node node = session.getRootNode();
for (int i = 0; i < segments.length; i++) {
String segment = segments[i];
if (node.hasNode(segment)) {
node = node.getNode(segment);
} else {
node = node.addNode(segment, UserConstants.NT_REP_AUTHORIZABLE_FOLDER);
}
}
if (!node.hasNode(principalName)) {
node = node.addNode(principalName, isGroup ? UserConstants.NT_REP_GROUP : UserConstants.NT_REP_USER);
node.setProperty(UserConstants.REP_PRINCIPAL_NAME, principalName);
node.setProperty(UserConstants.REP_AUTHORIZABLE_ID, principalName);
}
return node;
}