You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jackrabbit.apache.org by kw...@apache.org on 2022/02/15 09:50:53 UTC
[jackrabbit-filevault] branch master updated: releng: fix SonarQube issues
This is an automated email from the ASF dual-hosted git repository.
kwin pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/jackrabbit-filevault.git
The following commit(s) were added to refs/heads/master by this push:
new 7a4d69c releng: fix SonarQube issues
7a4d69c is described below
commit 7a4d69c5988d80cb9efe932ff1df051da46e1cf4
Author: Konrad Windszus <kw...@apache.org>
AuthorDate: Tue Feb 15 10:50:43 2022 +0100
releng: fix SonarQube issues
---
.../org/apache/jackrabbit/vault/fs/impl/io/DocViewImporter.java | 8 +++++---
.../org/apache/jackrabbit/vault/fs/impl/io/DocViewSAXHandler.java | 7 ++++---
.../java/org/apache/jackrabbit/vault/util/DocViewProperty2.java | 2 +-
.../vault/validation/spi/impl/AccessControlValidator.java | 2 +-
.../vault/validation/spi/impl/DuplicateUuidValidator.java | 8 +++++---
.../vault/validation/spi/impl/OakIndexDefinitionValidator.java | 2 +-
.../vault/validation/spi/impl/PackageTypeValidator.java | 4 ++--
.../vault/validation/spi/impl/nodetype/NodeTypeValidator.java | 5 +++--
8 files changed, 22 insertions(+), 16 deletions(-)
diff --git a/vault-core/src/main/java/org/apache/jackrabbit/vault/fs/impl/io/DocViewImporter.java b/vault-core/src/main/java/org/apache/jackrabbit/vault/fs/impl/io/DocViewImporter.java
index b401928..752567e 100644
--- a/vault-core/src/main/java/org/apache/jackrabbit/vault/fs/impl/io/DocViewImporter.java
+++ b/vault-core/src/main/java/org/apache/jackrabbit/vault/fs/impl/io/DocViewImporter.java
@@ -827,10 +827,11 @@ public class DocViewImporter implements DocViewParserHandler {
if (stack.checkForNode() && currentNode.hasNode(docViewNode.getName().toString())) {
existingNode = currentNode.getNode(docViewNode.getName().toString());
}
- if (docViewNode.getIdentifier().isPresent() && idConflictPolicy == IdConflictPolicy.FAIL) {
+ Optional<String> identifier = docViewNode.getIdentifier();
+ if (identifier.isPresent() && idConflictPolicy == IdConflictPolicy.FAIL) {
try {
// does uuid already exist in the repo?
- Node sameIdNode = session.getNodeByIdentifier(docViewNode.getIdentifier().get());
+ Node sameIdNode = session.getNodeByIdentifier(identifier.get());
// edge-case: same node path -> uuid is kept
if (existingNode != null && existingNode.getPath().equals(sameIdNode.getPath())) {
log.debug("Node with existing identifier {} at {} is being updated without modifying its uuid", docViewNode.getIdentifier(), existingNode.getPath());
@@ -929,8 +930,9 @@ public class DocViewImporter implements DocViewParserHandler {
private @Nullable Node updateExistingNode(@NotNull Node node, @NotNull DocViewNode2 ni, @NotNull ImportMode importMode) throws RepositoryException {
VersioningState vs = new VersioningState(stack, node);
Node updatedNode = null;
+ Optional<String> identifier = ni.getIdentifier();
// try to set uuid via sysview import if it differs from existing one
- if (ni.getIdentifier().isPresent() && !node.getIdentifier().equals(ni.getIdentifier().get()) && !"rep:root".equals(ni.getPrimaryType().orElse(""))) {
+ if (identifier.isPresent() && !node.getIdentifier().equals(identifier.get()) && !"rep:root".equals(ni.getPrimaryType().orElse(""))) {
NodeStash stash = new NodeStash(session, node.getPath());
stash.stash();
Node parent = node.getParent();
diff --git a/vault-core/src/main/java/org/apache/jackrabbit/vault/fs/impl/io/DocViewSAXHandler.java b/vault-core/src/main/java/org/apache/jackrabbit/vault/fs/impl/io/DocViewSAXHandler.java
index 84a041a..e192a25 100644
--- a/vault-core/src/main/java/org/apache/jackrabbit/vault/fs/impl/io/DocViewSAXHandler.java
+++ b/vault-core/src/main/java/org/apache/jackrabbit/vault/fs/impl/io/DocViewSAXHandler.java
@@ -43,6 +43,7 @@ import org.apache.jackrabbit.util.Text;
import org.apache.jackrabbit.vault.fs.io.DocViewParserHandler;
import org.apache.jackrabbit.vault.util.DocViewNode2;
import org.apache.jackrabbit.vault.util.DocViewProperty2;
+import org.apache.jackrabbit.vault.util.PathUtil;
import org.apache.jackrabbit.vault.util.RejectingEntityDefaultHandler;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
@@ -305,8 +306,8 @@ public class DocViewSAXHandler extends RejectingEntityDefaultHandler implements
&& uri.equals(NameConstants.JCR_ROOT.getNamespaceURI())) {
// special case for root (https://issues.apache.org/jira/browse/JCR-4625)
if (rootNodePath.equals("/")) {
- name = NameConstants.ROOT;
- index = 0;
+ name = NameConstants.ROOT;
+ index = 0;
} else {
Map.Entry<String, Integer> nameAndIndex = getNameAndIndex(Text.getName(rootNodePath));
index = nameAndIndex.getValue();
@@ -328,7 +329,7 @@ public class DocViewSAXHandler extends RejectingEntityDefaultHandler implements
// root node element name should take precedence of root node name derived from path
currentPath = Text.getRelativeParent(rootNodePath, 1);
}
- currentPath = currentPath + "/" + npResolver.getJCRName(name);
+ currentPath = PathUtil.append(currentPath, npResolver.getJCRName(name));
} catch (NamespaceException e) {
throw new SAXException("No prefix defined for namespace uri '" + uri + "' used in node name '" + nameAndIndex.getKey() + "'", e);
} catch (IllegalArgumentException e) {
diff --git a/vault-core/src/main/java/org/apache/jackrabbit/vault/util/DocViewProperty2.java b/vault-core/src/main/java/org/apache/jackrabbit/vault/util/DocViewProperty2.java
index f8358e8..a9cb27a 100644
--- a/vault-core/src/main/java/org/apache/jackrabbit/vault/util/DocViewProperty2.java
+++ b/vault-core/src/main/java/org/apache/jackrabbit/vault/util/DocViewProperty2.java
@@ -541,7 +541,7 @@ public class DocViewProperty2 {
return true;
} else {
Value v = prop == null ? null : prop.getValue();
- if (type == PropertyType.BINARY) {
+ if (v != null && type == PropertyType.BINARY) {
return applyBinary(node, v);
}
if (v == null || !v.getString().equals(values.get(0))) {
diff --git a/vault-validation/src/main/java/org/apache/jackrabbit/vault/validation/spi/impl/AccessControlValidator.java b/vault-validation/src/main/java/org/apache/jackrabbit/vault/validation/spi/impl/AccessControlValidator.java
index 1397fb3..28441e2 100644
--- a/vault-validation/src/main/java/org/apache/jackrabbit/vault/validation/spi/impl/AccessControlValidator.java
+++ b/vault-validation/src/main/java/org/apache/jackrabbit/vault/validation/spi/impl/AccessControlValidator.java
@@ -64,7 +64,7 @@ public class AccessControlValidator implements DocumentViewXmlValidator {
@Override
public @Nullable Collection<ValidationMessage> validate(@NotNull DocViewNode2 node, @NotNull NodeContext nodeContext,
boolean isRoot) {
- if (node.getPrimaryType().isPresent() && ACL_MANAGEMENT.isACLNodeType(node.getPrimaryType().get())) {
+ if (ACL_MANAGEMENT.isACLNodeType(node.getPrimaryType().orElse(""))) {
hasFoundACLNode = true;
if (accessControlHandling == AccessControlHandling.IGNORE || accessControlHandling == AccessControlHandling.CLEAR) {
return Collections.singleton(new ValidationMessage(severity, String.format(MESSAGE_IGNORED_ACCESS_CONTROL_LIST, accessControlHandling)));
diff --git a/vault-validation/src/main/java/org/apache/jackrabbit/vault/validation/spi/impl/DuplicateUuidValidator.java b/vault-validation/src/main/java/org/apache/jackrabbit/vault/validation/spi/impl/DuplicateUuidValidator.java
index 6b9b498..dacf7b7 100644
--- a/vault-validation/src/main/java/org/apache/jackrabbit/vault/validation/spi/impl/DuplicateUuidValidator.java
+++ b/vault-validation/src/main/java/org/apache/jackrabbit/vault/validation/spi/impl/DuplicateUuidValidator.java
@@ -20,6 +20,7 @@ import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
+import java.util.Optional;
import org.apache.jackrabbit.vault.fs.api.WorkspaceFilter;
import org.apache.jackrabbit.vault.util.DocViewNode2;
@@ -50,10 +51,11 @@ public class DuplicateUuidValidator implements DocumentViewXmlValidator {
@Override
public Collection<ValidationMessage> validate(@NotNull DocViewNode2 node, @NotNull NodeContext nodeContext, boolean isRoot) {
- if (node.getIdentifier().isPresent() && filter.contains(nodeContext.getNodePath())) {
- String duplicateUuidPath = uuidsAndPaths.put(node.getIdentifier().get(), nodeContext.getNodePath());
+ Optional<String> identifier = node.getIdentifier();
+ if (identifier.isPresent() && filter.contains(nodeContext.getNodePath())) {
+ String duplicateUuidPath = uuidsAndPaths.put(identifier.get(), nodeContext.getNodePath());
if (duplicateUuidPath != null) {
- return Collections.singleton(new ValidationMessage(severity, String.format(MESSAGE_DUPLICATE_UUID, node.getIdentifier().get(), duplicateUuidPath, nodeContext.getNodePath())));
+ return Collections.singleton(new ValidationMessage(severity, String.format(MESSAGE_DUPLICATE_UUID, identifier.get(), duplicateUuidPath, nodeContext.getNodePath())));
}
}
return null;
diff --git a/vault-validation/src/main/java/org/apache/jackrabbit/vault/validation/spi/impl/OakIndexDefinitionValidator.java b/vault-validation/src/main/java/org/apache/jackrabbit/vault/validation/spi/impl/OakIndexDefinitionValidator.java
index 37d767a..b7c9fea 100644
--- a/vault-validation/src/main/java/org/apache/jackrabbit/vault/validation/spi/impl/OakIndexDefinitionValidator.java
+++ b/vault-validation/src/main/java/org/apache/jackrabbit/vault/validation/spi/impl/OakIndexDefinitionValidator.java
@@ -77,7 +77,7 @@ public final class OakIndexDefinitionValidator implements FilterValidator, Docum
@Override
public @Nullable Collection<ValidationMessage> validate(@NotNull DocViewNode2 node, @NotNull NodeContext nodeContext, boolean isRoot) {
ValidationMessage violation = null;
- if (node.getPrimaryType().isPresent() && IndexConstants.INDEX_DEFINITIONS_NODE_TYPE.equals(node.getPrimaryType().get())) {
+ if (IndexConstants.INDEX_DEFINITIONS_NODE_TYPE.equals(node.getPrimaryType().orElse(""))) {
violation = new ValidationMessage(defaultMessageSeverity, String.format(MESSAGE_INDEX_AT_NODE, packageRootPathOfNotAllowedIndexDefinition));
}
return violation != null ? Collections.singleton(violation) : null;
diff --git a/vault-validation/src/main/java/org/apache/jackrabbit/vault/validation/spi/impl/PackageTypeValidator.java b/vault-validation/src/main/java/org/apache/jackrabbit/vault/validation/spi/impl/PackageTypeValidator.java
index a123363..334553a 100644
--- a/vault-validation/src/main/java/org/apache/jackrabbit/vault/validation/spi/impl/PackageTypeValidator.java
+++ b/vault-validation/src/main/java/org/apache/jackrabbit/vault/validation/spi/impl/PackageTypeValidator.java
@@ -270,12 +270,12 @@ public final class PackageTypeValidator implements NodePathValidator, DocumentVi
case CONTENT:
case APPLICATION:
// is it sling:OsgiConfig node?
- if (node.getPrimaryType().isPresent() && NODETYPE_SLING_OSGI_CONFIG.equals(node.getPrimaryType().get()) && isOsgiBundleOrConfigurationNode(nodeContext.getNodePath(), false)) {
+ if (node.getPrimaryType().isPresent() && NODETYPE_SLING_OSGI_CONFIG.equals(node.getPrimaryType().orElse("")) && isOsgiBundleOrConfigurationNode(nodeContext.getNodePath(), false)) {
messages.add(new ValidationMessage(severity, String.format(MESSAGE_NO_OSGI_BUNDLE_OR_CONFIG_ALLOWED, type)));
}
break;
case CONTAINER:
- if (node.getPrimaryType().isPresent() && NODETYPE_SLING_OSGI_CONFIG.equals(node.getPrimaryType().get()) && isOsgiBundleOrConfigurationNode(nodeContext.getNodePath(), false)) {
+ if (node.getPrimaryType().isPresent() && NODETYPE_SLING_OSGI_CONFIG.equals(node.getPrimaryType().orElse("")) && isOsgiBundleOrConfigurationNode(nodeContext.getNodePath(), false)) {
validContainerNodePaths.add(nodeContext.getNodePath());
}
break;
diff --git a/vault-validation/src/main/java/org/apache/jackrabbit/vault/validation/spi/impl/nodetype/NodeTypeValidator.java b/vault-validation/src/main/java/org/apache/jackrabbit/vault/validation/spi/impl/nodetype/NodeTypeValidator.java
index bc527b0..cca7bc2 100644
--- a/vault-validation/src/main/java/org/apache/jackrabbit/vault/validation/spi/impl/nodetype/NodeTypeValidator.java
+++ b/vault-validation/src/main/java/org/apache/jackrabbit/vault/validation/spi/impl/nodetype/NodeTypeValidator.java
@@ -110,7 +110,8 @@ public class NodeTypeValidator implements DocumentViewXmlValidator, JcrPathValid
public @Nullable Collection<ValidationMessage> validate(@NotNull DocViewNode2 node, @NotNull NodeContext nodeContext,
boolean isRoot) {
- if (!node.getPrimaryType().isPresent()) {
+ Optional<String> primaryType = node.getPrimaryType();
+ if (!primaryType.isPresent()) {
// only an issue if contained in the filter
// if other properties are set this node is not only used for ordering purposes
if (filter.contains(nodeContext.getNodePath()) && !node.getProperties().isEmpty()) {
@@ -122,7 +123,7 @@ public class NodeTypeValidator implements DocumentViewXmlValidator, JcrPathValid
}
}
Collection<ValidationMessage> messages = new LinkedList<>();
- messages.addAll(getOrCreateNewNode(nodeContext, false, isImplicit(nodeContext.getNodePath()), false, node.getPrimaryType().get(), node.getMixinTypes().toArray(new String[0])));
+ messages.addAll(getOrCreateNewNode(nodeContext, false, isImplicit(nodeContext.getNodePath()), false, primaryType.get(), node.getMixinTypes().toArray(new String[0])));
for (DocViewProperty2 property : node.getProperties()) {
try {