You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2021/07/19 08:55:10 UTC
[isis] branch master updated: ISIS-2800: fixing potential NPE in
reasonVetoed
This is an automated email from the ASF dual-hosted git repository.
danhaywood pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git
The following commit(s) were added to refs/heads/master by this push:
new 45e06e5 ISIS-2800: fixing potential NPE in reasonVetoed
45e06e5 is described below
commit 45e06e5b44c8a3d96934a367b475453317638af3
Author: mwhesse <mw...@gmail.com>
AuthorDate: Mon Jul 19 13:03:46 2021 +0700
ISIS-2800: fixing potential NPE in reasonVetoed
---
.../isis/core/metamodel/interactions/managed/ManagedMember.java | 8 +++++---
.../core/metamodel/interactions/managed/ManagedParameter.java | 8 +++++---
.../core/metamodel/interactions/managed/ManagedProperty.java | 7 ++++---
.../interactions/managed/ParameterNegotiationModel.java | 9 +++++++++
4 files changed, 23 insertions(+), 9 deletions(-)
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/interactions/managed/ManagedMember.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/interactions/managed/ManagedMember.java
index 4ac66b8..ba8bdcf 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/interactions/managed/ManagedMember.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/interactions/managed/ManagedMember.java
@@ -39,7 +39,9 @@ import lombok.NonNull;
import lombok.RequiredArgsConstructor;
import lombok.Setter;
import lombok.val;
+import lombok.extern.log4j.Log4j2;
+@Log4j2
@RequiredArgsConstructor
public abstract class ManagedMember implements ManagedFeature {
@@ -153,6 +155,7 @@ public abstract class ManagedMember implements ManagedFeature {
} catch (final Exception ex) {
+ log.warn(ex.getLocalizedMessage(), ex);
return Optional.of(InteractionVeto.hidden(new Veto("failure during visibility evaluation")));
}
@@ -176,9 +179,8 @@ public abstract class ManagedMember implements ManagedFeature {
} catch (final Exception ex) {
- return Optional.of(InteractionVeto
- .readonly(
- new Veto(ex.getLocalizedMessage())));
+ log.warn(ex.getLocalizedMessage(), ex);
+ return Optional.of(InteractionVeto.readonly(new Veto("failure during usability evaluation")));
}
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/interactions/managed/ManagedParameter.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/interactions/managed/ManagedParameter.java
index 2618dbd..77b50c4 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/interactions/managed/ManagedParameter.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/interactions/managed/ManagedParameter.java
@@ -20,6 +20,8 @@ package org.apache.isis.core.metamodel.interactions.managed;
import java.util.Optional;
+import org.apache.logging.log4j.Logger;
+
import org.apache.isis.commons.collections.Can;
import org.apache.isis.core.metamodel.consent.InteractionInitiatedBy;
import org.apache.isis.core.metamodel.consent.Veto;
@@ -35,6 +37,7 @@ public interface ManagedParameter extends ManagedValue, ManagedFeature {
@Override
ObjectActionParameter getMetaModel();
ParameterNegotiationModel getNegotiationModel();
+ Logger _getLogger();
/**
* @param params
@@ -55,9 +58,8 @@ public interface ManagedParameter extends ManagedValue, ManagedFeature {
} catch (final Exception ex) {
- return Optional.of(InteractionVeto
- .readonly(
- new Veto(ex.getLocalizedMessage())));
+ _getLogger().warn(ex.getLocalizedMessage(), ex);
+ return Optional.of(InteractionVeto.readonly(new Veto("failure during usability evaluation")));
}
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/interactions/managed/ManagedProperty.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/interactions/managed/ManagedProperty.java
index 37e704f..6442dcd 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/interactions/managed/ManagedProperty.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/interactions/managed/ManagedProperty.java
@@ -36,7 +36,9 @@ import org.apache.isis.core.metamodel.spec.feature.OneToOneAssociation;
import lombok.Getter;
import lombok.NonNull;
import lombok.val;
+import lombok.extern.log4j.Log4j2;
+@Log4j2
public final class ManagedProperty extends ManagedMember {
// -- FACTORIES
@@ -98,9 +100,8 @@ public final class ManagedProperty extends ManagedMember {
} catch (final Exception ex) {
- return Optional.of(InteractionVeto
- .invalid(
- new Veto(ex.getLocalizedMessage())));
+ log.warn(ex.getLocalizedMessage(), ex);
+ return Optional.of(InteractionVeto.invalid(new Veto("failure during validity evaluation")));
}
}
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/interactions/managed/ParameterNegotiationModel.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/interactions/managed/ParameterNegotiationModel.java
index 37a2561..d15456a 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/interactions/managed/ParameterNegotiationModel.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/interactions/managed/ParameterNegotiationModel.java
@@ -22,6 +22,8 @@ import java.util.stream.IntStream;
import javax.annotation.Nullable;
+import org.apache.logging.log4j.Logger;
+
import org.apache.isis.applib.Identifier;
import org.apache.isis.commons.binding.Bindable;
import org.apache.isis.commons.binding.Observable;
@@ -41,6 +43,7 @@ import org.apache.isis.core.metamodel.spec.feature.ObjectActionParameter;
import lombok.Getter;
import lombok.NonNull;
import lombok.val;
+import lombok.extern.log4j.Log4j2;
/**
@@ -211,6 +214,7 @@ public class ParameterNegotiationModel {
// -- INTERNAL HOLDER OF PARAMETER BINDABLES
+ @Log4j2
private static class ParameterModel implements ManagedParameter {
@Getter(onMethod_ = {@Override}) private final int paramNr;
@@ -312,6 +316,11 @@ public class ParameterNegotiationModel {
return observableParamChoices;
}
+ @Override
+ public Logger _getLogger() {
+ return log;
+ }
+
}