This is an automated email from the ASF dual-hosted git repository.

heneveld pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/brooklyn-server.git


The following commit(s) were added to refs/heads/master by this push:
     new e4599a0ab9 optimize absent stack trace origin, and improve version 
serialization for jackson
e4599a0ab9 is described below

commit e4599a0ab908eb7a27a46f661b4d0b98f7dc2b01
Author: Alex Heneveld <[email protected]>
AuthorDate: Mon May 13 17:34:38 2024 +0100

    optimize absent stack trace origin, and improve version serialization for 
jackson
---
 .../org/apache/brooklyn/util/collections/ThreadLocalStack.java   | 2 +-
 .../main/java/org/apache/brooklyn/util/osgi/VersionedName.java   | 9 +++++++--
 2 files changed, 8 insertions(+), 3 deletions(-)

diff --git 
a/utils/common/src/main/java/org/apache/brooklyn/util/collections/ThreadLocalStack.java
 
b/utils/common/src/main/java/org/apache/brooklyn/util/collections/ThreadLocalStack.java
index 4170dbcf8d..4355269246 100644
--- 
a/utils/common/src/main/java/org/apache/brooklyn/util/collections/ThreadLocalStack.java
+++ 
b/utils/common/src/main/java/org/apache/brooklyn/util/collections/ThreadLocalStack.java
@@ -93,7 +93,7 @@ public class ThreadLocalStack<T> implements Iterable<T> {
 
     public Maybe<T> peek() {
         Iterator<T> si = stream().iterator();
-        if (!si.hasNext()) return Maybe.absent("Nothing in local stack");
+        if (!si.hasNext()) return Maybe.absent(() -> new 
IllegalStateException("Nothing in local stack"));
         return Maybe.of( si.next() );
     }
 
diff --git 
a/utils/common/src/main/java/org/apache/brooklyn/util/osgi/VersionedName.java 
b/utils/common/src/main/java/org/apache/brooklyn/util/osgi/VersionedName.java
index 3c8bda55f8..db96fceedf 100644
--- 
a/utils/common/src/main/java/org/apache/brooklyn/util/osgi/VersionedName.java
+++ 
b/utils/common/src/main/java/org/apache/brooklyn/util/osgi/VersionedName.java
@@ -21,6 +21,7 @@ import java.util.Comparator;
 
 import javax.annotation.Nullable;
 
+import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonInclude;
 import com.fasterxml.jackson.annotation.JsonInclude.Include;
 import org.apache.brooklyn.util.guava.Maybe;
@@ -46,7 +47,7 @@ public class VersionedName implements 
Comparable<VersionedName> {
     @Deprecated // since 0.12.0 - but null was not omitted in jackson 
serialization, so remove these fields after 1.2
     private final Version version = null;
 
-
+    private VersionedName() { name=null; v=null; } /* jackson, will sneakily 
set it as needed even though final */
     public VersionedName(Bundle b) {
         this(b.getSymbolicName(), b.getVersion().toString());
     }
@@ -85,6 +86,7 @@ public class VersionedName implements 
Comparable<VersionedName> {
     }
 
     private transient Version cachedOsgiVersion;
+    @JsonIgnore
     @Nullable
     public Version getOsgiVersion() {
         if (cachedOsgiVersion==null && v!=null) {
@@ -93,6 +95,7 @@ public class VersionedName implements 
Comparable<VersionedName> {
         return cachedOsgiVersion;
     }
 
+    @JsonIgnore
     @Nullable
     public String getOsgiVersionString() {
         Version ov = getOsgiVersion();
@@ -100,11 +103,13 @@ public class VersionedName implements 
Comparable<VersionedName> {
         return ov.toString();
     }
 
+    @JsonIgnore
     @Nullable
     public String getVersionString() {
         return v;
     }
-    
+
+    @JsonIgnore
     @Deprecated /** @deprecated since 0.12.0 use {@link #getVersionString()} 
or {@link #getOsgiVersion()} */
     public Version getVersion() {
         return getOsgiVersion();

Reply via email to