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 1a430e1c6e ISIS-3230: makes audit, command and exec log menus more 
consistent.
     new 139f5757d5 Merge branch 'ISIS-3230'
1a430e1c6e is described below

commit 1a430e1c6e5a95313af0657954a9ba95331141ae
Author: Dan Haywood <[email protected]>
AuthorDate: Fri Sep 30 10:55:06 2022 +0100

    ISIS-3230: makes audit, command and exec log menus more consistent.
    
    also fixes ISIS-3229, namespace for audit trail (consistent with seed data)
---
 .../commandlog/applib/app/CommandLogMenu.java      | 86 +++++++++-------------
 .../commandlog/applib/dom/CommandLogEntry.java     |  1 +
 .../applib/dom/CommandLogEntryRepository.java      | 15 +++-
 .../commandlog/jdo/dom/CommandLogEntry.java        | 41 ++++++-----
 .../commandlog/jpa/dom/CommandLogEntry.java        |  5 ++
 .../executionlog/applib/app/ExecutionLogMenu.java  | 84 ++++++++++++++-------
 .../executionlog/applib/dom/ExecutionLogEntry.java |  1 +
 .../applib/dom/ExecutionLogEntryRepository.java    | 47 +++++++++++-
 .../executionlog/jdo/dom/ExecutionLogEntry.java    |  8 +-
 .../executionlog/jpa/dom/ExecutionLogEntry.java    |  7 +-
 .../applib/IsisModuleExtAuditTrailApplib.java      |  2 +-
 .../audittrail/applib/app/AuditTrailMenu.java      | 77 +++++++++++++------
 .../audittrail/applib/dom/AuditTrailEntry.java     |  1 +
 .../applib/dom/AuditTrailEntryRepository.java      | 10 +++
 .../audittrail/jdo/dom/AuditTrailEntry.java        | 18 +++--
 .../audittrail/jpa/dom/AuditTrailEntry.java        | 14 ++--
 16 files changed, 280 insertions(+), 137 deletions(-)

diff --git 
a/extensions/core/commandlog/applib/src/main/java/org/apache/isis/extensions/commandlog/applib/app/CommandLogMenu.java
 
b/extensions/core/commandlog/applib/src/main/java/org/apache/isis/extensions/commandlog/applib/app/CommandLogMenu.java
index 4e1124c92b..6f01829450 100644
--- 
a/extensions/core/commandlog/applib/src/main/java/org/apache/isis/extensions/commandlog/applib/app/CommandLogMenu.java
+++ 
b/extensions/core/commandlog/applib/src/main/java/org/apache/isis/extensions/commandlog/applib/app/CommandLogMenu.java
@@ -18,43 +18,30 @@
  */
 package org.apache.isis.extensions.commandlog.applib.app;
 
+import lombok.RequiredArgsConstructor;
+
 import java.time.LocalDate;
 import java.time.ZoneId;
 import java.util.List;
-import java.util.UUID;
 
 import javax.inject.Inject;
 import javax.inject.Named;
 
-import org.springframework.lang.Nullable;
-
-import org.apache.isis.applib.annotation.Action;
-import org.apache.isis.applib.annotation.ActionLayout;
-import org.apache.isis.applib.annotation.BookmarkPolicy;
-import org.apache.isis.applib.annotation.DomainService;
-import org.apache.isis.applib.annotation.DomainServiceLayout;
-import org.apache.isis.applib.annotation.MemberSupport;
-import org.apache.isis.applib.annotation.NatureOfService;
-import org.apache.isis.applib.annotation.PriorityPrecedence;
-import org.apache.isis.applib.annotation.RestrictTo;
-import org.apache.isis.applib.annotation.SemanticsOf;
+import org.apache.isis.applib.annotation.*;
 import org.apache.isis.applib.services.clock.ClockService;
 import 
org.apache.isis.extensions.commandlog.applib.IsisModuleExtCommandLogApplib;
 import org.apache.isis.extensions.commandlog.applib.dom.CommandLogEntry;
 import 
org.apache.isis.extensions.commandlog.applib.dom.CommandLogEntryRepository;
-
-import lombok.RequiredArgsConstructor;
+import org.springframework.lang.Nullable;
 
 /**
  * @since 2.0 {@index}
  */
 @Named(CommandLogMenu.LOGICAL_TYPE_NAME)
-@DomainService(
-    nature = NatureOfService.VIEW
-)
+@DomainService(nature = NatureOfService.VIEW)
 @DomainServiceLayout(
-    named = "Activity",
-    menuBar = DomainServiceLayout.MenuBar.SECONDARY
+    menuBar = DomainServiceLayout.MenuBar.SECONDARY,
+    named = "Activity"
 )
 @javax.annotation.Priority(PriorityPrecedence.EARLY)
 @RequiredArgsConstructor(onConstructor_ = { @Inject })
@@ -63,8 +50,8 @@ public class CommandLogMenu {
     public static final String LOGICAL_TYPE_NAME =
             IsisModuleExtCommandLogApplib.NAMESPACE + ".CommandLogMenu";
 
-    public static abstract class ActionDomainEvent
-        extends 
IsisModuleExtCommandLogApplib.ActionDomainEvent<CommandLogMenu> { }
+    public static abstract class ActionDomainEvent<T>
+            extends IsisModuleExtCommandLogApplib.ActionDomainEvent<T> { }
 
 
     final CommandLogEntryRepository<? extends CommandLogEntry> 
commandLogEntryRepository;
@@ -78,7 +65,7 @@ public class CommandLogMenu {
     )
     @ActionLayout(bookmarking = BookmarkPolicy.AS_ROOT, cssClassFa = 
"fa-bolt", sequence="10")
     public class activeCommands {
-        public class DomainEvent extends ActionDomainEvent { }
+        public class DomainEvent extends ActionDomainEvent<activeCommands> { }
 
         @MemberSupport public List<? extends CommandLogEntry> act() {
             return commandLogEntryRepository.findCurrent();
@@ -86,16 +73,29 @@ public class CommandLogMenu {
     }
 
 
+    @Action(
+            domainEvent = findMostRecent.DomainEvent.class,
+            semantics = SemanticsOf.SAFE,
+            typeOf = CommandLogEntry.class
+    )
+    @ActionLayout(cssClassFa = "fa-search", sequence="10")
+    public class findMostRecent {
+        public class DomainEvent extends ActionDomainEvent<findMostRecent> { }
+
+        @MemberSupport public List<? extends CommandLogEntry> act() {
+            return commandLogEntryRepository.findMostRecent();
+        }
+    }
+
 
     @Action(
             domainEvent = findCommands.DomainEvent.class,
             semantics = SemanticsOf.SAFE,
             typeOf = CommandLogEntry.class
     )
-    @ActionLayout(cssClassFa = "fa-search", sequence="20")
+    @ActionLayout(cssClassFa = "fa-search", sequence="30")
     public class findCommands {
-
-    public class DomainEvent extends ActionDomainEvent { }
+        public class DomainEvent extends ActionDomainEvent<findCommands> { }
 
         @MemberSupport public List<? extends CommandLogEntry> act(
                 final @Nullable LocalDate from,
@@ -111,40 +111,26 @@ public class CommandLogMenu {
     }
 
 
+
     @Action(
-            domainEvent = findCommandById.DomainEvent.class,
-            semantics = SemanticsOf.SAFE
+            domainEvent = findAll.DomainEvent.class,
+            restrictTo = RestrictTo.PROTOTYPING,
+            semantics = SemanticsOf.SAFE,
+            typeOf = CommandLogEntry.class
     )
-    @ActionLayout(cssClassFa = "fa-crosshairs", sequence="30")
-    public class findCommandById {
-        public class DomainEvent extends ActionDomainEvent { }
+    @ActionLayout(cssClassFa = "fa-search", sequence="40")
+    public class findAll {
+        public class DomainEvent extends ActionDomainEvent<findAll> { }
 
-        @MemberSupport public CommandLogEntry act(final UUID transactionId) {
-            return 
commandLogEntryRepository.findByInteractionId(transactionId).orElse(null);
+        @MemberSupport public List<? extends CommandLogEntry> act() {
+            return commandLogEntryRepository.findAll();
         }
     }
 
 
-    @Action(
-            domainEvent = truncateLog.DomainEvent.class,
-            semantics = SemanticsOf.IDEMPOTENT_ARE_YOU_SURE,
-            restrictTo = RestrictTo.PROTOTYPING
-    )
-    @ActionLayout(
-            cssClassFa = "fa-trash",
-            sequence="40"
-    )
-    public class truncateLog {
-        public class DomainEvent extends ActionDomainEvent { }
-
-        @MemberSupport public void act() {
-            commandLogEntryRepository.truncateLog();
-        }
-    }
 
 
     private LocalDate now() {
         return clockService.getClock().nowAsLocalDate(ZoneId.systemDefault());
     }
 }
-
diff --git 
a/extensions/core/commandlog/applib/src/main/java/org/apache/isis/extensions/commandlog/applib/dom/CommandLogEntry.java
 
b/extensions/core/commandlog/applib/src/main/java/org/apache/isis/extensions/commandlog/applib/dom/CommandLogEntry.java
index e1b3e18946..5b9734bc2a 100644
--- 
a/extensions/core/commandlog/applib/src/main/java/org/apache/isis/extensions/commandlog/applib/dom/CommandLogEntry.java
+++ 
b/extensions/core/commandlog/applib/src/main/java/org/apache/isis/extensions/commandlog/applib/dom/CommandLogEntry.java
@@ -128,6 +128,7 @@ implements Comparable<CommandLogEntry>, DomainChangeRecord, 
HasCommandDto {
         public static final String FIND_BY_TIMESTAMP_AFTER = LOGICAL_TYPE_NAME 
+ ".findByTimestampAfter";
         public static final String FIND_BY_TIMESTAMP_BEFORE = 
LOGICAL_TYPE_NAME + ".findByTimestampBefore";
         public static final String FIND = LOGICAL_TYPE_NAME + ".find";
+        public static final String FIND_MOST_RECENT = LOGICAL_TYPE_NAME + 
".findMostRecent";
         public static final String FIND_RECENT_BY_USERNAME = LOGICAL_TYPE_NAME 
+ ".findRecentByUsername";
         public static final String FIND_FIRST = LOGICAL_TYPE_NAME + 
".findFirst";
         public static final String FIND_SINCE = LOGICAL_TYPE_NAME + 
".findSince";
diff --git 
a/extensions/core/commandlog/applib/src/main/java/org/apache/isis/extensions/commandlog/applib/dom/CommandLogEntryRepository.java
 
b/extensions/core/commandlog/applib/src/main/java/org/apache/isis/extensions/commandlog/applib/dom/CommandLogEntryRepository.java
index d59e46359b..ad0062c4c4 100644
--- 
a/extensions/core/commandlog/applib/src/main/java/org/apache/isis/extensions/commandlog/applib/dom/CommandLogEntryRepository.java
+++ 
b/extensions/core/commandlog/applib/src/main/java/org/apache/isis/extensions/commandlog/applib/dom/CommandLogEntryRepository.java
@@ -141,8 +141,8 @@ public abstract class CommandLogEntryRepository<C extends 
CommandLogEntry> {
             final @Nullable LocalDate from,
             final @Nullable LocalDate to) {
 
-        final Timestamp fromTs = toTimestampStartOfDayWithOffset(from, 0);
-        final Timestamp toTs = toTimestampStartOfDayWithOffset(to, 1);
+        val fromTs = toTimestampStartOfDayWithOffset(from, 0);
+        val toTs = toTimestampStartOfDayWithOffset(to, 1);
 
         final Query<C> query;
         if(from != null) {
@@ -169,6 +169,17 @@ public abstract class CommandLogEntryRepository<C extends 
CommandLogEntry> {
         return repositoryService().allMatches(query);
     }
 
+
+    public List<C> findMostRecent() {
+        return findMostRecent(100);
+    }
+
+    public List<C> findMostRecent(final int limit) {
+        return repositoryService().allMatches(
+                Query.named(commandLogEntryClass,  
CommandLogEntry.Nq.FIND_MOST_RECENT).withLimit(limit));
+    }
+
+
     public List<C> findRecentByUsername(final String username) {
         return repositoryService().allMatches(
                 Query.named(commandLogEntryClass, 
CommandLogEntry.Nq.FIND_RECENT_BY_USERNAME)
diff --git 
a/extensions/core/commandlog/persistence-jdo/src/main/java/org/apache/isis/extensions/commandlog/jdo/dom/CommandLogEntry.java
 
b/extensions/core/commandlog/persistence-jdo/src/main/java/org/apache/isis/extensions/commandlog/jdo/dom/CommandLogEntry.java
index 506a09bdee..1fc4167ed6 100644
--- 
a/extensions/core/commandlog/persistence-jdo/src/main/java/org/apache/isis/extensions/commandlog/jdo/dom/CommandLogEntry.java
+++ 
b/extensions/core/commandlog/persistence-jdo/src/main/java/org/apache/isis/extensions/commandlog/jdo/dom/CommandLogEntry.java
@@ -63,7 +63,7 @@ import lombok.Setter;
             value = "SELECT "
                   + "  FROM " + CommandLogEntry.FQCN + " "
                   + " WHERE target == :target "
-                  + " ORDER BY this.timestamp DESC "
+                  + " ORDER BY timestamp DESC "
                   + " RANGE 0,30"),
     @Query(
             name  = Nq.FIND_RECENT_BY_TARGET_OR_RESULT,
@@ -71,7 +71,7 @@ import lombok.Setter;
                   + "  FROM " + CommandLogEntry.FQCN + " "
                   + " WHERE target == :targetOrResult "
                   + "    || result == :targetOrResult "
-                  + " ORDER BY this.timestamp DESC "
+                  + " ORDER BY timestamp DESC "
                   + " RANGE 0,30"),
     @Query(
             name  = Nq.FIND_BY_TARGET_AND_TIMESTAMP_BETWEEN,
@@ -80,21 +80,21 @@ import lombok.Setter;
                   + " WHERE target == :target "
                   + "    && timestamp >= :from "
                   + "    && timestamp <= :to "
-                  + " ORDER BY this.timestamp DESC"),
+                  + " ORDER BY timestamp DESC"),
     @Query(
             name  = Nq.FIND_BY_TARGET_AND_TIMESTAMP_AFTER,
             value = "SELECT "
                   + "  FROM " + CommandLogEntry.FQCN + " "
                   + " WHERE target == :target "
                   + "    && timestamp >= :from "
-                  + " ORDER BY this.timestamp DESC"),
+                  + " ORDER BY timestamp DESC"),
     @Query(
             name  = Nq.FIND_BY_TARGET_AND_TIMESTAMP_BEFORE,
             value = "SELECT "
                   + "  FROM " + CommandLogEntry.FQCN + " "
                   + " WHERE target == :target "
                   + "    && timestamp <= :to "
-                  + " ORDER BY this.timestamp DESC"),
+                  + " ORDER BY timestamp DESC"),
     @Query(
             name  = Nq.FIND_BY_TARGET,
             value = "SELECT "
@@ -107,30 +107,36 @@ import lombok.Setter;
                   + "  FROM " + CommandLogEntry.FQCN + " "
                   + " WHERE timestamp >= :from "
                   + "    && timestamp <= :to "
-                  + " ORDER BY this.timestamp DESC"),
+                  + " ORDER BY timestamp DESC"),
     @Query(
             name  = Nq.FIND_BY_TIMESTAMP_AFTER,
             value = "SELECT "
                   + "  FROM " + CommandLogEntry.FQCN + " "
                   + " WHERE timestamp >= :from "
-                  + " ORDER BY this.timestamp DESC"),
+                  + " ORDER BY timestamp DESC"),
     @Query(
             name  = Nq.FIND_BY_TIMESTAMP_BEFORE,
             value = "SELECT "
                   + "  FROM " + CommandLogEntry.FQCN + " "
                   + " WHERE timestamp <= :to "
-                  + " ORDER BY this.timestamp DESC"),
+                  + " ORDER BY timestamp DESC"),
     @Query(
             name  = Nq.FIND,
             value = "SELECT "
                   + "  FROM " + CommandLogEntry.FQCN + " "
-                  + " ORDER BY this.timestamp DESC"),
+                  + " ORDER BY timestamp DESC"),
+    @Query(
+            name = Nq.FIND_MOST_RECENT,
+            value = "SELECT "
+                  + "  FROM " + CommandLogEntry.FQCN + " "
+                  + " ORDER BY timestamp DESC, interactionId DESC, sequence 
DESC"
+                  + " RANGE 0,100"),
     @Query(
             name  = Nq.FIND_RECENT_BY_USERNAME,
             value = "SELECT "
                   + "  FROM " + CommandLogEntry.FQCN + " "
                   + " WHERE username == :username "
-                  + " ORDER BY this.timestamp DESC "
+                  + " ORDER BY timestamp DESC "
                   + " RANGE 0,30"),
     @Query(
             name  = Nq.FIND_BY_PARENT,
@@ -142,20 +148,20 @@ import lombok.Setter;
             value = "SELECT "
                     + "  FROM " + CommandLogEntry.FQCN + " "
                     + " WHERE completedAt == null "
-                    + " ORDER BY this.timestamp DESC"),
+                    + " ORDER BY timestamp DESC"),
     @Query(
             name  = Nq.FIND_COMPLETED,
             value = "SELECT "
                     + "  FROM " + CommandLogEntry.FQCN + " "
                     + " WHERE completedAt != null "
-                    + " ORDER BY this.timestamp DESC"),
+                    + " ORDER BY timestamp DESC"),
     @Query(
             name  = Nq.FIND_FIRST,
             value = "SELECT "
                   + "  FROM " + CommandLogEntry.FQCN + " "
                   + " WHERE startedAt   != null "
                   + "    && completedAt != null "
-                  + " ORDER BY this.timestamp ASC "
+                  + " ORDER BY timestamp ASC "
                   + " RANGE 0,2"), // this should be RANGE 0,1 but results in 
DataNucleus submitting "FETCH NEXT ROW ONLY"
                                    // which SQL Server doesn't understand.  
However, as workaround, SQL Server *does* understand FETCH NEXT 2 ROWS ONLY
     @Query(
@@ -165,7 +171,7 @@ import lombok.Setter;
                   + " WHERE timestamp > :timestamp "
                   + "   && startedAt != null "
                   + "   && completedAt != null "
-                  + "ORDER BY this.timestamp ASC"),
+                  + "ORDER BY timestamp ASC"),
 
     // most recent (replayed) command previously replicated from primary to
     // secondary.  This should always exist except for the very first times
@@ -175,7 +181,7 @@ import lombok.Setter;
             value = "SELECT "
                   + "  FROM " + CommandLogEntry.FQCN + " "
                   + " WHERE (replayState == 'OK' || replayState == 'FAILED') "
-                  + " ORDER BY this.timestamp DESC "
+                  + " ORDER BY timestamp DESC "
                   + " RANGE 0,2"), // this should be RANGE 0,1 but results in 
DataNucleus submitting "FETCH NEXT ROW ONLY"
                                    // which SQL Server doesn't understand.  
However, as workaround, SQL Server *does* understand FETCH NEXT 2 ROWS ONLY
 
@@ -188,16 +194,15 @@ import lombok.Setter;
                   + "  FROM " + CommandLogEntry.FQCN + " "
                   + " WHERE startedAt   != null "
                   + "    && completedAt != null "
-                  + " ORDER BY this.timestamp DESC "
+                  + " ORDER BY timestamp DESC "
                   + " RANGE 0,2"), // this should be RANGE 0,1 but results in 
DataNucleus submitting "FETCH NEXT ROW ONLY"
                                    // which SQL Server doesn't understand.  
However, as workaround, SQL Server *does* understand FETCH NEXT 2 ROWS ONLY
-
     @Query(
             name  = Nq.FIND_BY_REPLAY_STATE,
             value = "SELECT "
                   + "  FROM " + CommandLogEntry.FQCN + " "
                   + " WHERE replayState == :replayState "
-                  + " ORDER BY this.timestamp ASC "
+                  + " ORDER BY timestamp ASC "
                   + " RANGE 0,10"),    // same as batch size
 })
 @Named(CommandLogEntry.LOGICAL_TYPE_NAME)
diff --git 
a/extensions/core/commandlog/persistence-jpa/src/main/java/org/apache/isis/extensions/commandlog/jpa/dom/CommandLogEntry.java
 
b/extensions/core/commandlog/persistence-jpa/src/main/java/org/apache/isis/extensions/commandlog/jpa/dom/CommandLogEntry.java
index a86eedd845..6e19997cff 100644
--- 
a/extensions/core/commandlog/persistence-jpa/src/main/java/org/apache/isis/extensions/commandlog/jpa/dom/CommandLogEntry.java
+++ 
b/extensions/core/commandlog/persistence-jpa/src/main/java/org/apache/isis/extensions/commandlog/jpa/dom/CommandLogEntry.java
@@ -156,6 +156,11 @@ import lombok.Setter;
             query = "SELECT cl "
                   + "  FROM CommandLogEntry cl "
                   + " ORDER BY cl.timestamp DESC"),
+    @NamedQuery(
+            name = Nq.FIND_MOST_RECENT,
+            query = "SELECT cl "
+                    + "  FROM CommandLogEntry cl "
+                    + " ORDER BY cl.timestamp DESC, cl.pk.interactionId 
DESC"), // programmatic LIMIT 30
     @NamedQuery(
             name  = Nq.FIND_RECENT_BY_USERNAME,
             query = "SELECT cl "
diff --git 
a/extensions/core/executionlog/applib/src/main/java/org/apache/isis/extensions/executionlog/applib/app/ExecutionLogMenu.java
 
b/extensions/core/executionlog/applib/src/main/java/org/apache/isis/extensions/executionlog/applib/app/ExecutionLogMenu.java
index b96d40e5c7..85b3dc0966 100644
--- 
a/extensions/core/executionlog/applib/src/main/java/org/apache/isis/extensions/executionlog/applib/app/ExecutionLogMenu.java
+++ 
b/extensions/core/executionlog/applib/src/main/java/org/apache/isis/extensions/executionlog/applib/app/ExecutionLogMenu.java
@@ -25,18 +25,12 @@ import java.util.List;
 import javax.inject.Inject;
 import javax.inject.Named;
 
-import org.apache.isis.applib.annotation.Action;
-import org.apache.isis.applib.annotation.ActionLayout;
-import org.apache.isis.applib.annotation.DomainService;
-import org.apache.isis.applib.annotation.DomainServiceLayout;
-import org.apache.isis.applib.annotation.NatureOfService;
-import org.apache.isis.applib.annotation.PriorityPrecedence;
-import org.apache.isis.applib.annotation.RestrictTo;
-import org.apache.isis.applib.annotation.SemanticsOf;
+import org.apache.isis.applib.annotation.*;
 import org.apache.isis.applib.services.clock.ClockService;
 import 
org.apache.isis.extensions.executionlog.applib.IsisModuleExtExecutionLogApplib;
 import org.apache.isis.extensions.executionlog.applib.dom.ExecutionLogEntry;
 import 
org.apache.isis.extensions.executionlog.applib.dom.ExecutionLogEntryRepository;
+import org.springframework.lang.Nullable;
 
 import lombok.RequiredArgsConstructor;
 
@@ -44,12 +38,10 @@ import lombok.RequiredArgsConstructor;
  * @since 2.0 {@index}
  */
 @Named(ExecutionLogMenu.LOGICAL_TYPE_NAME)
-@DomainService(
-    nature = NatureOfService.VIEW
-)
+@DomainService(nature = NatureOfService.VIEW)
 @DomainServiceLayout(
-    named = "Activity",
-    menuBar = DomainServiceLayout.MenuBar.SECONDARY
+    menuBar = DomainServiceLayout.MenuBar.SECONDARY,
+    named = "Activity"
 )
 @javax.annotation.Priority(PriorityPrecedence.EARLY)
 @RequiredArgsConstructor(onConstructor_ = { @Inject })
@@ -58,27 +50,68 @@ public class ExecutionLogMenu {
     public static final String LOGICAL_TYPE_NAME =
             IsisModuleExtExecutionLogApplib.NAMESPACE + ".ExecutionLogMenu";
 
-    public static abstract class ActionDomainEvent
-        extends 
IsisModuleExtExecutionLogApplib.ActionDomainEvent<ExecutionLogMenu> { }
+    public static abstract class ActionDomainEvent<T>
+            extends IsisModuleExtExecutionLogApplib.ActionDomainEvent<T> { }
+
+
+    final ExecutionLogEntryRepository<? extends ExecutionLogEntry> 
executionLogEntryRepository;
+    final ClockService clockService;
 
 
+    @Action(
+            domainEvent = findMostRecent.DomainEvent.class,
+            semantics = SemanticsOf.SAFE,
+            typeOf = ExecutionLogEntry.class
+    )
+    @ActionLayout(cssClassFa = "fa-search", sequence="20")
+    public class findMostRecent {
+        public class DomainEvent extends ActionDomainEvent<findMostRecent> { }
 
-    @Action(semantics = SemanticsOf.SAFE)
-    @ActionLayout(describedAs = "Returns the most recent execution entries")
-    public List<? extends ExecutionLogEntry> findMostRecent() {
-        return executionLogEntryRepository.findMostRecent();
+        @MemberSupport public List<? extends ExecutionLogEntry> act() {
+            return executionLogEntryRepository.findMostRecent();
+        }
     }
 
 
-    @Action(semantics = SemanticsOf.SAFE, restrictTo = RestrictTo.PROTOTYPING)
-    @ActionLayout(describedAs = "Returns all entries (still to be processed) 
in the outbox")
-    public List<? extends ExecutionLogEntry> findAll() {
-        return executionLogEntryRepository.findAll();
+    @Action(
+            domainEvent = findExecutions.DomainEvent.class,
+            semantics = SemanticsOf.SAFE,
+            typeOf = ExecutionLogEntry.class
+    )
+    @ActionLayout(cssClassFa = "fa-search", sequence="30")
+    public class findExecutions {
+        public class DomainEvent extends ActionDomainEvent<findExecutions> { }
+
+        @MemberSupport public List<? extends ExecutionLogEntry> act(
+                final @Nullable LocalDate from,
+                final @Nullable LocalDate to) {
+            return executionLogEntryRepository.findByFromAndTo(from, to);
+        }
+        @MemberSupport public LocalDate default0Act() {
+            return now().minusDays(7);
+        }
+        @MemberSupport public LocalDate default1Act() {
+            return now();
+        }
     }
 
 
-    final ExecutionLogEntryRepository<? extends ExecutionLogEntry> 
executionLogEntryRepository;
-    final ClockService clockService;
+
+    @Action(
+            domainEvent = findAll.DomainEvent.class,
+            restrictTo = RestrictTo.PROTOTYPING,
+            semantics = SemanticsOf.SAFE,
+            typeOf = ExecutionLogEntry.class
+    )
+    @ActionLayout(cssClassFa = "fa-search", sequence="40")
+    public class findAll {
+        public class DomainEvent extends ActionDomainEvent<findAll> { }
+
+        @MemberSupport public List<? extends ExecutionLogEntry> act() {
+            return executionLogEntryRepository.findAll();
+        }
+    }
+
 
 
 
@@ -86,4 +119,3 @@ public class ExecutionLogMenu {
         return clockService.getClock().nowAsLocalDate(ZoneId.systemDefault());
     }
 }
-
diff --git 
a/extensions/core/executionlog/applib/src/main/java/org/apache/isis/extensions/executionlog/applib/dom/ExecutionLogEntry.java
 
b/extensions/core/executionlog/applib/src/main/java/org/apache/isis/extensions/executionlog/applib/dom/ExecutionLogEntry.java
index b5df1ff65b..45eb2ccf1d 100644
--- 
a/extensions/core/executionlog/applib/src/main/java/org/apache/isis/extensions/executionlog/applib/dom/ExecutionLogEntry.java
+++ 
b/extensions/core/executionlog/applib/src/main/java/org/apache/isis/extensions/executionlog/applib/dom/ExecutionLogEntry.java
@@ -114,6 +114,7 @@ implements Comparable<ExecutionLogEntry>, 
DomainChangeRecord, HasInteractionIdAn
         public static final String FIND_BY_TIMESTAMP_BETWEEN = 
LOGICAL_TYPE_NAME + ".findByTimestampBetween";
         public static final String FIND_BY_TIMESTAMP_AFTER = LOGICAL_TYPE_NAME 
+ ".findByTimestampAfter";
         public static final String FIND_BY_TIMESTAMP_BEFORE = 
LOGICAL_TYPE_NAME + ".findByTimestampBefore";
+        public static final String FIND = LOGICAL_TYPE_NAME + ".find";
         public static final String FIND_MOST_RECENT = LOGICAL_TYPE_NAME + 
".findMostRecent";
         public static final String FIND_RECENT_BY_USERNAME = LOGICAL_TYPE_NAME 
+ ".findRecentByUsername";
         public static final String FIND_RECENT_BY_TARGET = LOGICAL_TYPE_NAME + 
".findRecentByTarget";
diff --git 
a/extensions/core/executionlog/applib/src/main/java/org/apache/isis/extensions/executionlog/applib/dom/ExecutionLogEntryRepository.java
 
b/extensions/core/executionlog/applib/src/main/java/org/apache/isis/extensions/executionlog/applib/dom/ExecutionLogEntryRepository.java
index 8afd7e46ae..b5c8c995d7 100644
--- 
a/extensions/core/executionlog/applib/src/main/java/org/apache/isis/extensions/executionlog/applib/dom/ExecutionLogEntryRepository.java
+++ 
b/extensions/core/executionlog/applib/src/main/java/org/apache/isis/extensions/executionlog/applib/dom/ExecutionLogEntryRepository.java
@@ -19,6 +19,9 @@
 package org.apache.isis.extensions.executionlog.applib.dom;
 
 import java.sql.Timestamp;
+import java.time.Instant;
+import java.time.LocalDate;
+import java.time.ZoneId;
 import java.util.List;
 import java.util.Optional;
 import java.util.UUID;
@@ -33,8 +36,10 @@ import 
org.apache.isis.applib.services.factory.FactoryService;
 import org.apache.isis.applib.services.iactn.Execution;
 import org.apache.isis.applib.services.repository.RepositoryService;
 import org.apache.isis.core.config.environment.IsisSystemEnvironment;
+import org.springframework.lang.Nullable;
 
 import lombok.Getter;
+import lombok.val;
 
 /**
  * Provides supporting functionality for querying and persisting
@@ -97,9 +102,35 @@ public abstract class ExecutionLogEntryRepository<E extends 
ExecutionLogEntry> {
         );
     }
 
+    public List<E> findByFromAndTo(
+            final @Nullable LocalDate from,
+            final @Nullable LocalDate to) {
+        val fromTs = toTimestampStartOfDayWithOffset(from, 0);
+        val toTs = toTimestampStartOfDayWithOffset(to, 1);
+
+        final Query<E> query;
+        if(from != null) {
+            if(to != null) {
+                query = Query.named(executionLogEntryClass, 
ExecutionLogEntry.Nq.FIND_BY_TIMESTAMP_BETWEEN)
+                        .withParameter("from", fromTs)
+                        .withParameter("to", toTs);
+            } else {
+                query = Query.named(executionLogEntryClass, 
ExecutionLogEntry.Nq.FIND_BY_TIMESTAMP_AFTER)
+                        .withParameter("from", fromTs);
+            }
+        } else {
+            if(to != null) {
+                query = Query.named(executionLogEntryClass, 
ExecutionLogEntry.Nq.FIND_BY_TIMESTAMP_BEFORE)
+                        .withParameter("to", toTs);
+            } else {
+                query = Query.named(executionLogEntryClass, 
ExecutionLogEntry.Nq.FIND);
+            }
+        }
+        return repositoryService().allMatches(query);
+    }
+
     public List<E> findMostRecent() {
-        return repositoryService().allMatches(
-                Query.named(executionLogEntryClass,  
ExecutionLogEntry.Nq.FIND_MOST_RECENT));
+        return findMostRecent(100);
     }
 
     public List<E> findMostRecent(final int limit) {
@@ -207,4 +238,16 @@ public abstract class ExecutionLogEntryRepository<E 
extends ExecutionLogEntry> {
     }
 
 
+    private static Timestamp toTimestampStartOfDayWithOffset(
+            final @Nullable LocalDate dt,
+            final int daysOffset) {
+
+        return dt!=null
+                ? new java.sql.Timestamp(
+                
Instant.from(dt.atStartOfDay().plusDays(daysOffset).atZone(ZoneId.systemDefault()))
+                        .toEpochMilli())
+                : null;
+    }
+
+
 }
diff --git 
a/extensions/core/executionlog/persistence-jdo/src/main/java/org/apache/isis/extensions/executionlog/jdo/dom/ExecutionLogEntry.java
 
b/extensions/core/executionlog/persistence-jdo/src/main/java/org/apache/isis/extensions/executionlog/jdo/dom/ExecutionLogEntry.java
index f0ce8392e0..ea61bc16b5 100644
--- 
a/extensions/core/executionlog/persistence-jdo/src/main/java/org/apache/isis/extensions/executionlog/jdo/dom/ExecutionLogEntry.java
+++ 
b/extensions/core/executionlog/persistence-jdo/src/main/java/org/apache/isis/extensions/executionlog/jdo/dom/ExecutionLogEntry.java
@@ -114,11 +114,17 @@ import lombok.Setter;
                   + "  FROM " + ExecutionLogEntry.FQCN + " "
                   + " WHERE timestamp <= :timestamp "
                   + " ORDER BY timestamp DESC, interactionId DESC, sequence 
DESC"),
+    @Query(
+            name  = Nq.FIND,
+            value = "SELECT "
+                  + "  FROM " + ExecutionLogEntry.FQCN + " "
+                  + " ORDER BY timestamp DESC"),
     @Query(
             name = Nq.FIND_MOST_RECENT,
             value = "SELECT "
                   + "  FROM " + ExecutionLogEntry.FQCN + " "
-                  + " ORDER BY timestamp DESC, interactionId DESC, sequence 
DESC"),
+                  + " ORDER BY timestamp DESC, interactionId DESC, sequence 
DESC"
+                  + " RANGE 0,100"),
     @Query(
             name = Nq.FIND_RECENT_BY_USERNAME,
             value = "SELECT "
diff --git 
a/extensions/core/executionlog/persistence-jpa/src/main/java/org/apache/isis/extensions/executionlog/jpa/dom/ExecutionLogEntry.java
 
b/extensions/core/executionlog/persistence-jpa/src/main/java/org/apache/isis/extensions/executionlog/jpa/dom/ExecutionLogEntry.java
index b66e579f8d..f8a976882a 100644
--- 
a/extensions/core/executionlog/persistence-jpa/src/main/java/org/apache/isis/extensions/executionlog/jpa/dom/ExecutionLogEntry.java
+++ 
b/extensions/core/executionlog/persistence-jpa/src/main/java/org/apache/isis/extensions/executionlog/jpa/dom/ExecutionLogEntry.java
@@ -117,6 +117,11 @@ import lombok.Setter;
                   + "  FROM ExecutionLogEntry ele "
                   + " WHERE ele.timestamp >= :timestamp "
                   + " ORDER BY ele.timestamp DESC, ele.pk.interactionId DESC, 
ele.pk.sequence DESC"),
+    @NamedQuery(
+            name  = Nq.FIND,
+            query = "SELECT ele "
+                  + "  FROM ExecutionLogEntry ele "
+                  + " ORDER BY ele.timestamp DESC"),
     @NamedQuery(
             name = Nq.FIND_BY_TIMESTAMP_BEFORE,
             query = "SELECT ele "
@@ -127,7 +132,7 @@ import lombok.Setter;
             name = Nq.FIND_MOST_RECENT,
             query = "SELECT ele "
                   + "  FROM ExecutionLogEntry ele "
-                  + " ORDER BY ele.timestamp DESC, ele.pk.interactionId DESC, 
ele.pk.sequence DESC"),
+                  + " ORDER BY ele.timestamp DESC, ele.pk.interactionId DESC, 
ele.pk.sequence DESC"),  // programmatic limit 100
     @NamedQuery(
             name = Nq.FIND_RECENT_BY_USERNAME,
             query = "SELECT ele "
diff --git 
a/extensions/security/audittrail/applib/src/main/java/org/apache/isis/extensions/audittrail/applib/IsisModuleExtAuditTrailApplib.java
 
b/extensions/security/audittrail/applib/src/main/java/org/apache/isis/extensions/audittrail/applib/IsisModuleExtAuditTrailApplib.java
index a516561e70..5bccd5b527 100644
--- 
a/extensions/security/audittrail/applib/src/main/java/org/apache/isis/extensions/audittrail/applib/IsisModuleExtAuditTrailApplib.java
+++ 
b/extensions/security/audittrail/applib/src/main/java/org/apache/isis/extensions/audittrail/applib/IsisModuleExtAuditTrailApplib.java
@@ -38,7 +38,7 @@ import 
org.apache.isis.extensions.audittrail.applib.spiimpl.EntityPropertyChange
 })
 public class IsisModuleExtAuditTrailApplib {
 
-    public static final String NAMESPACE = "isis.ext.audittrail";
+    public static final String NAMESPACE = "isis.ext.auditTrail";
     public static final String SCHEMA = "isisExtAuditTrail";
 
     public abstract static class TitleUiEvent<S>
diff --git 
a/extensions/security/audittrail/applib/src/main/java/org/apache/isis/extensions/audittrail/applib/app/AuditTrailMenu.java
 
b/extensions/security/audittrail/applib/src/main/java/org/apache/isis/extensions/audittrail/applib/app/AuditTrailMenu.java
index c0d91bd39f..5a9dd4b070 100644
--- 
a/extensions/security/audittrail/applib/src/main/java/org/apache/isis/extensions/audittrail/applib/app/AuditTrailMenu.java
+++ 
b/extensions/security/audittrail/applib/src/main/java/org/apache/isis/extensions/audittrail/applib/app/AuditTrailMenu.java
@@ -21,20 +21,15 @@
 package org.apache.isis.extensions.audittrail.applib.app;
 
 import java.time.LocalDate;
+import java.time.ZoneId;
 import java.util.List;
 
 import javax.inject.Inject;
 import javax.inject.Named;
 
+import org.apache.isis.applib.annotation.*;
 import org.springframework.lang.Nullable;
 
-import org.apache.isis.applib.annotation.Action;
-import org.apache.isis.applib.annotation.ActionLayout;
-import org.apache.isis.applib.annotation.DomainService;
-import org.apache.isis.applib.annotation.DomainServiceLayout;
-import org.apache.isis.applib.annotation.MemberSupport;
-import org.apache.isis.applib.annotation.NatureOfService;
-import org.apache.isis.applib.annotation.SemanticsOf;
 import org.apache.isis.applib.services.clock.ClockService;
 import 
org.apache.isis.extensions.audittrail.applib.IsisModuleExtAuditTrailApplib;
 import org.apache.isis.extensions.audittrail.applib.dom.AuditTrailEntry;
@@ -44,34 +39,51 @@ import lombok.RequiredArgsConstructor;
 
 
 /**
- * This service exposes a &lt;Sessions&gt; menu to the secondary menu bar for 
searching for sessions.
+ * @since 2.0 {@index}
  */
 @Named(AuditTrailMenu.LOGICAL_TYPE_NAME)
 @DomainService(nature = NatureOfService.VIEW)
 @DomainServiceLayout(
-        menuBar = DomainServiceLayout.MenuBar.SECONDARY,
-        named = "Activity"
+    menuBar = DomainServiceLayout.MenuBar.SECONDARY,
+    named = "Activity"
 )
-@RequiredArgsConstructor(onConstructor_ = {@Inject})
+@RequiredArgsConstructor(onConstructor_ = { @Inject })
 public class AuditTrailMenu {
 
-    static final String LOGICAL_TYPE_NAME = 
IsisModuleExtAuditTrailApplib.NAMESPACE + ".AuditTrailMenu";
+    public static final String LOGICAL_TYPE_NAME =
+            IsisModuleExtAuditTrailApplib.NAMESPACE + ".AuditTrailMenu";
+
+    public static abstract class ActionDomainEvent<T>
+            extends IsisModuleExtAuditTrailApplib.ActionDomainEvent<T> { }
 
-    public static abstract class ActionDomainEvent<T> extends 
IsisModuleExtAuditTrailApplib.ActionDomainEvent<T> { }
 
     final AuditTrailEntryRepository<? extends AuditTrailEntry> 
auditTrailEntryRepository;
     final ClockService clockService;
 
+
     @Action(
-            domainEvent = findAuditEntries.ActionDomainEvent.class,
-            semantics = SemanticsOf.SAFE
+            domainEvent = findMostRecent.DomainEvent.class,
+            semantics = SemanticsOf.SAFE,
+            typeOf = AuditTrailEntry.class
     )
-    @ActionLayout(
-            cssClassFa = "fa-search"
+    @ActionLayout(cssClassFa = "fa-search", sequence="20")
+    public class findMostRecent {
+        public class DomainEvent extends ActionDomainEvent<findMostRecent> { }
+
+        @MemberSupport public List<? extends AuditTrailEntry> act() {
+            return auditTrailEntryRepository.findMostRecent();
+        }
+    }
+
+
+    @Action(
+            domainEvent = findAuditEntries.DomainEvent.class,
+            semantics = SemanticsOf.SAFE,
+            typeOf = AuditTrailEntry.class
     )
+    @ActionLayout(cssClassFa = "fa-search", sequence="30")
     public class findAuditEntries {
-
-        public class ActionDomainEvent extends 
AuditTrailMenu.ActionDomainEvent<findAuditEntries> { }
+        public class DomainEvent extends ActionDomainEvent<findAuditEntries> { 
}
 
         @MemberSupport public List<? extends AuditTrailEntry> act(
                 final @Nullable LocalDate from,
@@ -79,11 +91,34 @@ public class AuditTrailMenu {
             return auditTrailEntryRepository.findByFromAndTo(from, to);
         }
         @MemberSupport public LocalDate default0Act() {
-            return clockService.getClock().nowAsLocalDate().minusDays(7);
+            return now().minusDays(7);
         }
         @MemberSupport public LocalDate default1Act() {
-            return clockService.getClock().nowAsLocalDate();
+            return now();
         }
     }
 
+
+
+    @Action(
+            domainEvent = findAll.DomainEvent.class,
+            restrictTo = RestrictTo.PROTOTYPING,
+            semantics = SemanticsOf.SAFE,
+            typeOf = AuditTrailEntry.class
+    )
+    @ActionLayout(cssClassFa = "fa-search", sequence="40")
+    public class findAll {
+        public class DomainEvent extends ActionDomainEvent<findAll> { }
+
+        @MemberSupport public List<? extends AuditTrailEntry> act() {
+            return auditTrailEntryRepository.findAll();
+        }
+    }
+
+
+
+
+    private LocalDate now() {
+        return clockService.getClock().nowAsLocalDate(ZoneId.systemDefault());
+    }
 }
diff --git 
a/extensions/security/audittrail/applib/src/main/java/org/apache/isis/extensions/audittrail/applib/dom/AuditTrailEntry.java
 
b/extensions/security/audittrail/applib/src/main/java/org/apache/isis/extensions/audittrail/applib/dom/AuditTrailEntry.java
index e0131cf8f0..e4b1cbe541 100644
--- 
a/extensions/security/audittrail/applib/src/main/java/org/apache/isis/extensions/audittrail/applib/dom/AuditTrailEntry.java
+++ 
b/extensions/security/audittrail/applib/src/main/java/org/apache/isis/extensions/audittrail/applib/dom/AuditTrailEntry.java
@@ -82,6 +82,7 @@ public abstract class AuditTrailEntry implements 
DomainChangeRecord, Comparable<
         public static final String FIND_BY_TIMESTAMP_AFTER = 
"findByTimestampAfter";
         public static final String FIND_BY_TIMESTAMP_BEFORE = 
"findByTimestampBefore";
         public static final String FIND = "find";
+        public static final String FIND_MOST_RECENT = LOGICAL_TYPE_NAME + 
".findMostRecent";
     }
 
     // -- UI & DOMAIN EVENTS
diff --git 
a/extensions/security/audittrail/applib/src/main/java/org/apache/isis/extensions/audittrail/applib/dom/AuditTrailEntryRepository.java
 
b/extensions/security/audittrail/applib/src/main/java/org/apache/isis/extensions/audittrail/applib/dom/AuditTrailEntryRepository.java
index f2436c5f64..269f191f22 100644
--- 
a/extensions/security/audittrail/applib/src/main/java/org/apache/isis/extensions/audittrail/applib/dom/AuditTrailEntryRepository.java
+++ 
b/extensions/security/audittrail/applib/src/main/java/org/apache/isis/extensions/audittrail/applib/dom/AuditTrailEntryRepository.java
@@ -165,6 +165,16 @@ public abstract class AuditTrailEntryRepository<E extends 
AuditTrailEntry> {
     }
 
 
+    public List<E> findMostRecent() {
+        return findMostRecent(100);
+    }
+
+    public List<E> findMostRecent(final int limit) {
+        return repositoryService.allMatches(
+                Query.named(auditTrailEntryClass, 
AuditTrailEntry.Nq.FIND_MOST_RECENT).withLimit(limit));
+    }
+
+
 
     /**
      * intended for testing only
diff --git 
a/extensions/security/audittrail/persistence-jdo/src/main/java/org/apache/isis/extensions/audittrail/jdo/dom/AuditTrailEntry.java
 
b/extensions/security/audittrail/persistence-jdo/src/main/java/org/apache/isis/extensions/audittrail/jdo/dom/AuditTrailEntry.java
index 03d7a28828..35243c0ae3 100644
--- 
a/extensions/security/audittrail/persistence-jdo/src/main/java/org/apache/isis/extensions/audittrail/jdo/dom/AuditTrailEntry.java
+++ 
b/extensions/security/audittrail/persistence-jdo/src/main/java/org/apache/isis/extensions/audittrail/jdo/dom/AuditTrailEntry.java
@@ -91,14 +91,14 @@ import lombok.Setter;
                   + "  FROM " + AuditTrailEntry.FQCN + " "
                   + " WHERE target == :target "
                   + "    && timestamp >= :from "
-                  + " ORDER BY this.timestamp DESC"),
+                  + " ORDER BY timestamp DESC"),
     @Query(
             name  = Nq.FIND_BY_TARGET_AND_TIMESTAMP_BEFORE,
             value = "SELECT "
                   + "  FROM " + AuditTrailEntry.FQCN + " "
                   + " WHERE target == :target "
                   + "    && timestamp <= :to "
-                  + " ORDER BY this.timestamp DESC"),
+                  + " ORDER BY timestamp DESC"),
     @Query(
             name  = Nq.FIND_BY_TARGET,
             value = "SELECT "
@@ -111,24 +111,30 @@ import lombok.Setter;
                   + "  FROM " + AuditTrailEntry.FQCN + " "
                   + " WHERE timestamp >= :from "
                   + "    && timestamp <= :to "
-                  + " ORDER BY this.timestamp DESC"),
+                  + " ORDER BY timestamp DESC"),
     @Query(
             name  = Nq.FIND_BY_TIMESTAMP_AFTER,
             value = "SELECT "
                   + "  FROM " + AuditTrailEntry.FQCN + " "
                   + " WHERE timestamp >= :from "
-                  + " ORDER BY this.timestamp DESC"),
+                  + " ORDER BY timestamp DESC"),
     @Query(
             name  = Nq.FIND_BY_TIMESTAMP_BEFORE,
             value = "SELECT "
                   + "  FROM " + AuditTrailEntry.FQCN + " "
                   + " WHERE timestamp <= :to "
-                  + " ORDER BY this.timestamp DESC"),
+                  + " ORDER BY timestamp DESC"),
     @Query(
             name  = Nq.FIND,
             value = "SELECT "
                   + "  FROM " + AuditTrailEntry.FQCN + " "
-                  + " ORDER BY this.timestamp DESC"),
+                  + " ORDER BY timestamp DESC"),
+    @Query(
+            name = Nq.FIND_MOST_RECENT,
+            value = "SELECT "
+                  + "  FROM " + AuditTrailEntry.FQCN + " "
+                  + " ORDER BY timestamp DESC, interactionId DESC, sequence 
DESC"
+                  + " RANGE 0,100"),
     @Query(
             name = Nq.FIND_RECENT_BY_TARGET_AND_PROPERTY_ID,
             value = "SELECT "
diff --git 
a/extensions/security/audittrail/persistence-jpa/src/main/java/org/apache/isis/extensions/audittrail/jpa/dom/AuditTrailEntry.java
 
b/extensions/security/audittrail/persistence-jpa/src/main/java/org/apache/isis/extensions/audittrail/jpa/dom/AuditTrailEntry.java
index 8d7d6243eb..d0d00a32cf 100644
--- 
a/extensions/security/audittrail/persistence-jpa/src/main/java/org/apache/isis/extensions/audittrail/jpa/dom/AuditTrailEntry.java
+++ 
b/extensions/security/audittrail/persistence-jpa/src/main/java/org/apache/isis/extensions/audittrail/jpa/dom/AuditTrailEntry.java
@@ -130,6 +130,11 @@ import lombok.Setter;
             query = "SELECT e "
                   + "  FROM AuditTrailEntry e "
                   + " ORDER BY e.timestamp DESC"),
+    @NamedQuery(
+            name = Nq.FIND_MOST_RECENT,
+            query = "SELECT e "
+                  + "  FROM AuditTrailEntry e "
+                  + " ORDER BY e.timestamp DESC, e.interactionId DESC, 
e.sequence DESC"),  // programmatic limit 100
     @NamedQuery(
             name = Nq.FIND_RECENT_BY_TARGET_AND_PROPERTY_ID,
             query = "SELECT e "
@@ -176,7 +181,6 @@ extends 
org.apache.isis.extensions.audittrail.applib.dom.AuditTrailEntry {
 
 
 
-    @Getter @Setter
     private String username;
 
     @Column(nullable = Username.NULLABLE, length = Username.MAX_LENGTH)
@@ -191,7 +195,6 @@ extends 
org.apache.isis.extensions.audittrail.applib.dom.AuditTrailEntry {
 
 
 
-    @Getter @Setter
     private java.sql.Timestamp timestamp;
 
     @Column(nullable = Timestamp.NULLABLE)
@@ -205,7 +208,6 @@ extends 
org.apache.isis.extensions.audittrail.applib.dom.AuditTrailEntry {
     }
 
 
-    @Getter @Setter
     private UUID interactionId;
 
     @Convert(converter = JavaUtilUuidConverter.class)
@@ -220,7 +222,6 @@ extends 
org.apache.isis.extensions.audittrail.applib.dom.AuditTrailEntry {
     }
 
 
-    @Getter @Setter
     private int sequence;
 
     @Column(nullable = Sequence.NULLABLE)
@@ -235,7 +236,6 @@ extends 
org.apache.isis.extensions.audittrail.applib.dom.AuditTrailEntry {
 
 
 
-    @Getter @Setter
     private Bookmark target;
 
     @Convert(converter = IsisBookmarkConverter.class)
@@ -250,7 +250,6 @@ extends 
org.apache.isis.extensions.audittrail.applib.dom.AuditTrailEntry {
     }
 
 
-    @Getter @Setter
     private String logicalMemberIdentifier;
 
     @Column(nullable = LogicalMemberIdentifier.NULLABLE, length = 
LogicalMemberIdentifier.MAX_LENGTH)
@@ -264,7 +263,6 @@ extends 
org.apache.isis.extensions.audittrail.applib.dom.AuditTrailEntry {
     }
 
 
-    @Getter @Setter
     private String propertyId;
 
     @Column(nullable = PropertyId.NULLABLE, length = PropertyId.MAX_LENGTH)
@@ -278,7 +276,6 @@ extends 
org.apache.isis.extensions.audittrail.applib.dom.AuditTrailEntry {
     }
 
 
-    @Getter @Setter
     private String preValue;
 
     @Column(nullable = PreValue.NULLABLE, length = PreValue.MAX_LENGTH)
@@ -292,7 +289,6 @@ extends 
org.apache.isis.extensions.audittrail.applib.dom.AuditTrailEntry {
     }
 
 
-    @Getter @Setter
     private String postValue;
 
 


Reply via email to