You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by ah...@apache.org on 2021/01/28 16:45:46 UTC
[isis] branch master updated: ISIS-2297: fixes potential NPE in
Oid_Marshaller (sonar)
This is an automated email from the ASF dual-hosted git repository.
ahuber 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 248022f ISIS-2297: fixes potential NPE in Oid_Marshaller (sonar)
248022f is described below
commit 248022f2c0612b011be50e8dfa89b3e5462dbb9f
Author: Andi Huber <ah...@apache.org>
AuthorDate: Thu Jan 28 17:45:34 2021 +0100
ISIS-2297: fixes potential NPE in Oid_Marshaller (sonar)
---
.../apache/isis/core/metamodel/adapter/oid/Oid_Marshaller.java | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/adapter/oid/Oid_Marshaller.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/adapter/oid/Oid_Marshaller.java
index 3f4ad97..3ce264d 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/adapter/oid/Oid_Marshaller.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/adapter/oid/Oid_Marshaller.java
@@ -20,6 +20,7 @@ package org.apache.isis.core.metamodel.adapter.oid;
import java.util.Iterator;
import java.util.List;
+import java.util.Objects;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.util.stream.Stream;
@@ -145,6 +146,10 @@ final class Oid_Marshaller implements Oid.Marshaller, Oid.Unmarshaller {
final String isTransientOrViewModelStr = getGroup(matcher, 3); // deprecated
final String rootObjectType = getGroup(matcher, 4);
+ if(_Strings.isEmpty(rootObjectType)) {
+ throw _Exceptions.illegalArgument("cannot parse OID, must have an 'ObjectType'");
+ }
+
final String rootIdentifier = getGroup(matcher, 5);
final String aggregateOidPart = getGroup(matcher, 6);
@@ -173,10 +178,10 @@ final class Oid_Marshaller implements Oid.Marshaller, Oid.Unmarshaller {
return _Casts.uncheckedCast(
Oid_Root.of(ObjectSpecId.of(rootObjectType), rootIdentifier));
} else {
- throw _Exceptions.illegalArgument("Aggregated Oids are no longer supported");
+ throw _Exceptions.illegalArgument("Aggregated OIDs are no longer supported");
}
} else {
- throw _Exceptions.illegalArgument("Parented Oids are no longer supported.");
+ throw _Exceptions.illegalArgument("Parented OIDs are no longer supported.");
}
}