You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@causeway.apache.org by da...@apache.org on 2026/05/06 20:43:51 UTC
(causeway) branch CAUSEWAY-3998 updated: CAUSEWAY-3998: refactors to a mixin, lookup bookmark
This is an automated email from the ASF dual-hosted git repository.
danhaywood pushed a commit to branch CAUSEWAY-3998
in repository https://gitbox.apache.org/repos/asf/causeway.git
The following commit(s) were added to refs/heads/CAUSEWAY-3998 by this push:
new f99ed18d31e CAUSEWAY-3998: refactors to a mixin, lookup bookmark
f99ed18d31e is described below
commit f99ed18d31eda8b8dc50782db0968ddd0955c588
Author: Dan Haywood <da...@haywood-associates.co.uk>
AuthorDate: Wed May 6 21:43:43 2026 +0100
CAUSEWAY-3998: refactors to a mixin, lookup bookmark
---
.../applib/dom/replay/ReplayableCommand.java | 21 +++++++++++++++------
1 file changed, 15 insertions(+), 6 deletions(-)
diff --git a/extensions/core/commandlog/applib/src/main/java/org/apache/causeway/extensions/commandlog/applib/dom/replay/ReplayableCommand.java b/extensions/core/commandlog/applib/src/main/java/org/apache/causeway/extensions/commandlog/applib/dom/replay/ReplayableCommand.java
index 0056acce118..2e85359fbec 100644
--- a/extensions/core/commandlog/applib/src/main/java/org/apache/causeway/extensions/commandlog/applib/dom/replay/ReplayableCommand.java
+++ b/extensions/core/commandlog/applib/src/main/java/org/apache/causeway/extensions/commandlog/applib/dom/replay/ReplayableCommand.java
@@ -44,6 +44,7 @@
import org.apache.causeway.applib.annotation.Where;
import org.apache.causeway.applib.jaxb.JavaTimeXMLGregorianCalendarMarshalling;
import org.apache.causeway.applib.services.bookmark.Bookmark;
+import org.apache.causeway.applib.services.bookmark.BookmarkService;
import org.apache.causeway.applib.services.command.CommandExecutorService.InteractionContextPolicy;
import org.apache.causeway.commons.functional.Try;
import org.apache.causeway.commons.internal.base._Refs.ObjectReference;
@@ -63,6 +64,7 @@
import org.springframework.transaction.annotation.Propagation;
import lombok.AllArgsConstructor;
+import lombok.RequiredArgsConstructor;
import lombok.Value;
import lombok.experimental.Accessors;
@@ -216,14 +218,21 @@ public String getTargetId() {
@Action(semantics = SemanticsOf.SAFE)
@ActionLayout(
- associateWith = "targetType", sequence = "1",
cssClassFa = "fa-bullseye"
)
- public Object openTarget() {
- return commandLogEntry().map(CommandLogEntry::getTarget).orElse(null);
- }
- @MemberSupport public String disableOpenTarget() {
- return commandLogEntry().isPresent() ? null : "Unknown target";
+ public class openTarget {
+
+ @MemberSupport public Object act() {
+ return commandLogEntry()
+ .map(CommandLogEntry::getTarget)
+ .flatMap(bookmark -> bookmarkService.lookup(bookmark))
+ .orElse(null);
+ }
+ @MemberSupport public String disableAct() {
+ return commandLogEntry().isPresent() ? null : "Unknown target";
+ }
+
+ @Inject BookmarkService bookmarkService;
}