This is an automated email from the ASF dual-hosted git repository. danhaywood pushed a commit to branch ISIS-2735-command-log in repository https://gitbox.apache.org/repos/asf/isis.git
commit 5075e23a80589257d336ecc716284e8be20d9eaa Author: Dan Haywood <[email protected]> AuthorDate: Wed Sep 22 07:30:04 2021 +0100 ISIS-2835: moves mixins from jdo to applib (for commandlog) --- .../contributions}/HasInteractionId_command.java | 25 +++++++++++----------- .../HasUsername_recentCommandsByUser.java | 19 ++++++++-------- .../contributions}/Object_recentCommands.java | 16 +++++++------- .../commandlog/applib/contributions}/T_recent.java | 20 ++++++++--------- 4 files changed, 41 insertions(+), 39 deletions(-) diff --git a/extensions/core/command-log/jdo/src/main/java/org/apache/isis/extensions/commandlog/jdo/mixins/HasInteractionId_command.java b/extensions/core/command-log/applib/src/main/java/org/apache/isis/extensions/commandlog/applib/contributions/HasInteractionId_command.java similarity index 73% rename from extensions/core/command-log/jdo/src/main/java/org/apache/isis/extensions/commandlog/jdo/mixins/HasInteractionId_command.java rename to extensions/core/command-log/applib/src/main/java/org/apache/isis/extensions/commandlog/applib/contributions/HasInteractionId_command.java index da0213f..2c65171 100644 --- a/extensions/core/command-log/jdo/src/main/java/org/apache/isis/extensions/commandlog/jdo/mixins/HasInteractionId_command.java +++ b/extensions/core/command-log/applib/src/main/java/org/apache/isis/extensions/commandlog/applib/contributions/HasInteractionId_command.java @@ -16,7 +16,7 @@ * specific language governing permissions and limitations * under the License. */ -package org.apache.isis.extensions.commandlog.jdo.mixins; +package org.apache.isis.extensions.commandlog.applib.contributions; import java.util.UUID; @@ -24,12 +24,13 @@ import javax.inject.Inject; import org.apache.isis.applib.annotation.Action; import org.apache.isis.applib.annotation.ActionLayout; +import org.apache.isis.applib.annotation.MemberSupport; import org.apache.isis.applib.annotation.SemanticsOf; import org.apache.isis.applib.mixins.system.HasInteractionId; import org.apache.isis.applib.services.command.Command; -import org.apache.isis.extensions.commandlog.jdo.IsisModuleExtCommandLogJdo; -import org.apache.isis.extensions.commandlog.jdo.entities.PublishedCommandForJdo; -import org.apache.isis.extensions.commandlog.jdo.entities.PublishedCommandForJdoRepository; +import org.apache.isis.extensions.commandlog.applib.IsisModuleExtCommandLogApplib; +import org.apache.isis.extensions.commandlog.applib.dom.PublishedCommand; +import org.apache.isis.extensions.commandlog.applib.dom.PublishedCommandRepository; import lombok.RequiredArgsConstructor; @@ -50,30 +51,30 @@ import lombok.RequiredArgsConstructor; public class HasInteractionId_command { public static class ActionDomainEvent - extends IsisModuleExtCommandLogJdo.ActionDomainEvent<HasInteractionId_command> { } + extends IsisModuleExtCommandLogApplib.ActionDomainEvent<HasInteractionId_command> { } private final HasInteractionId hasInteractionId; - public PublishedCommandForJdo act() { + public PublishedCommand act() { return findCommand(); } /** * Hide if the contributee is a {@link Command}, because {@link Command}s already have a * {@link Command#getParent() parent} property. */ - public boolean hideAct() { - return (hasInteractionId instanceof PublishedCommandForJdo); + @MemberSupport public boolean hideAct() { + return (hasInteractionId instanceof PublishedCommand); } - public String disableAct() { + @MemberSupport public String disableAct() { return findCommand() == null ? "No command found for unique Id": null; } - private PublishedCommandForJdo findCommand() { + private PublishedCommand findCommand() { final UUID transactionId = hasInteractionId.getInteractionId(); - return commandServiceRepository + return publishedCommandRepository .findByInteractionId(transactionId) .orElse(null); } - @Inject PublishedCommandForJdoRepository commandServiceRepository; + @Inject PublishedCommandRepository publishedCommandRepository; } diff --git a/extensions/core/command-log/jdo/src/main/java/org/apache/isis/extensions/commandlog/jdo/mixins/HasUsername_recentCommandsByUser.java b/extensions/core/command-log/applib/src/main/java/org/apache/isis/extensions/commandlog/applib/contributions/HasUsername_recentCommandsByUser.java similarity index 70% rename from extensions/core/command-log/jdo/src/main/java/org/apache/isis/extensions/commandlog/jdo/mixins/HasUsername_recentCommandsByUser.java rename to extensions/core/command-log/applib/src/main/java/org/apache/isis/extensions/commandlog/applib/contributions/HasUsername_recentCommandsByUser.java index 2de12bf..698fcee 100644 --- a/extensions/core/command-log/jdo/src/main/java/org/apache/isis/extensions/commandlog/jdo/mixins/HasUsername_recentCommandsByUser.java +++ b/extensions/core/command-log/applib/src/main/java/org/apache/isis/extensions/commandlog/applib/contributions/HasUsername_recentCommandsByUser.java @@ -16,7 +16,7 @@ * specific language governing permissions and limitations * under the License. */ -package org.apache.isis.extensions.commandlog.jdo.mixins; +package org.apache.isis.extensions.commandlog.applib.contributions; import java.util.Collections; import java.util.List; @@ -25,10 +25,11 @@ import javax.inject.Inject; import org.apache.isis.applib.annotation.Collection; import org.apache.isis.applib.annotation.CollectionLayout; +import org.apache.isis.applib.annotation.MemberSupport; import org.apache.isis.applib.mixins.security.HasUsername; -import org.apache.isis.extensions.commandlog.jdo.IsisModuleExtCommandLogJdo; -import org.apache.isis.extensions.commandlog.jdo.entities.PublishedCommandForJdo; -import org.apache.isis.extensions.commandlog.jdo.entities.PublishedCommandForJdoRepository; +import org.apache.isis.extensions.commandlog.applib.IsisModuleExtCommandLogApplib; +import org.apache.isis.extensions.commandlog.applib.dom.PublishedCommand; +import org.apache.isis.extensions.commandlog.applib.dom.PublishedCommandRepository; /** @@ -44,22 +45,22 @@ import org.apache.isis.extensions.commandlog.jdo.entities.PublishedCommandForJdo public class HasUsername_recentCommandsByUser { public static class CollectionDomainEvent - extends IsisModuleExtCommandLogJdo.CollectionDomainEvent<HasUsername_recentCommandsByUser, PublishedCommandForJdo> { } + extends IsisModuleExtCommandLogApplib.CollectionDomainEvent<HasUsername_recentCommandsByUser, PublishedCommand> { } private final HasUsername hasUsername; public HasUsername_recentCommandsByUser(final HasUsername hasUsername) { this.hasUsername = hasUsername; } - public List<PublishedCommandForJdo> coll() { + public List<PublishedCommand> coll() { final String username = hasUsername.getUsername(); return username != null - ? commandServiceRepository.findRecentByUsername(username) + ? publishedCommandRepository.findRecentByUsername(username) : Collections.emptyList(); } - public boolean hideColl() { + @MemberSupport public boolean hideColl() { return hasUsername.getUsername() == null; } - @Inject PublishedCommandForJdoRepository commandServiceRepository; + @Inject PublishedCommandRepository publishedCommandRepository; } diff --git a/extensions/core/command-log/jdo/src/main/java/org/apache/isis/extensions/commandlog/jdo/mixins/Object_recentCommands.java b/extensions/core/command-log/applib/src/main/java/org/apache/isis/extensions/commandlog/applib/contributions/Object_recentCommands.java similarity index 81% rename from extensions/core/command-log/jdo/src/main/java/org/apache/isis/extensions/commandlog/jdo/mixins/Object_recentCommands.java rename to extensions/core/command-log/applib/src/main/java/org/apache/isis/extensions/commandlog/applib/contributions/Object_recentCommands.java index 16ad916..36bcee0 100644 --- a/extensions/core/command-log/jdo/src/main/java/org/apache/isis/extensions/commandlog/jdo/mixins/Object_recentCommands.java +++ b/extensions/core/command-log/applib/src/main/java/org/apache/isis/extensions/commandlog/applib/contributions/Object_recentCommands.java @@ -16,7 +16,7 @@ * specific language governing permissions and limitations * under the License. */ -package org.apache.isis.extensions.commandlog.jdo.mixins; +package org.apache.isis.extensions.commandlog.applib.contributions; import java.util.Collections; import java.util.List; @@ -32,9 +32,9 @@ import org.apache.isis.applib.annotation.SemanticsOf; import org.apache.isis.applib.mixins.layout.LayoutMixinConstants; import org.apache.isis.applib.mixins.system.HasInteractionId; import org.apache.isis.applib.services.bookmark.BookmarkService; -import org.apache.isis.extensions.commandlog.jdo.IsisModuleExtCommandLogJdo; -import org.apache.isis.extensions.commandlog.jdo.entities.PublishedCommandForJdo; -import org.apache.isis.extensions.commandlog.jdo.entities.PublishedCommandForJdoRepository; +import org.apache.isis.extensions.commandlog.applib.IsisModuleExtCommandLogApplib; +import org.apache.isis.extensions.commandlog.applib.dom.PublishedCommand; +import org.apache.isis.extensions.commandlog.applib.dom.PublishedCommandRepository; import lombok.RequiredArgsConstructor; @@ -61,13 +61,13 @@ import lombok.RequiredArgsConstructor; public class Object_recentCommands { public static class ActionDomainEvent - extends IsisModuleExtCommandLogJdo.ActionDomainEvent<Object_recentCommands> { } + extends IsisModuleExtCommandLogApplib.ActionDomainEvent<Object_recentCommands> { } private final Object domainObject; // mixee - @MemberSupport public List<PublishedCommandForJdo> act() { + @MemberSupport public List<PublishedCommand> act() { return bookmarkService.bookmarkFor(domainObject) - .map(commandServiceRepository::findRecentByTarget) + .map(publishedCommandRepository::findRecentByTarget) .orElse(Collections.emptyList()); } @@ -79,7 +79,7 @@ public class Object_recentCommands { return (domainObject instanceof HasInteractionId); } - @Inject PublishedCommandForJdoRepository commandServiceRepository; + @Inject PublishedCommandRepository publishedCommandRepository; @Inject BookmarkService bookmarkService; } diff --git a/extensions/core/command-log/jdo/src/main/java/org/apache/isis/extensions/commandlog/jdo/mixins/T_recent.java b/extensions/core/command-log/applib/src/main/java/org/apache/isis/extensions/commandlog/applib/contributions/T_recent.java similarity index 72% rename from extensions/core/command-log/jdo/src/main/java/org/apache/isis/extensions/commandlog/jdo/mixins/T_recent.java rename to extensions/core/command-log/applib/src/main/java/org/apache/isis/extensions/commandlog/applib/contributions/T_recent.java index 128e914..c218970 100644 --- a/extensions/core/command-log/jdo/src/main/java/org/apache/isis/extensions/commandlog/jdo/mixins/T_recent.java +++ b/extensions/core/command-log/applib/src/main/java/org/apache/isis/extensions/commandlog/applib/contributions/T_recent.java @@ -16,7 +16,7 @@ * specific language governing permissions and limitations * under the License. */ -package org.apache.isis.extensions.commandlog.jdo.mixins; +package org.apache.isis.extensions.commandlog.applib.contributions; import java.util.Collections; import java.util.List; @@ -27,9 +27,9 @@ import org.apache.isis.applib.annotation.Collection; import org.apache.isis.applib.annotation.CollectionLayout; import org.apache.isis.applib.services.bookmark.BookmarkService; import org.apache.isis.applib.services.queryresultscache.QueryResultsCache; -import org.apache.isis.extensions.commandlog.jdo.IsisModuleExtCommandLogJdo; -import org.apache.isis.extensions.commandlog.jdo.entities.PublishedCommandForJdo; -import org.apache.isis.extensions.commandlog.jdo.entities.PublishedCommandForJdoRepository; +import org.apache.isis.extensions.commandlog.applib.IsisModuleExtCommandLogApplib; +import org.apache.isis.extensions.commandlog.applib.dom.PublishedCommand; +import org.apache.isis.extensions.commandlog.applib.dom.PublishedCommandRepository; @Collection( domainEvent = T_recent.CollectionDomainEvent.class @@ -40,28 +40,28 @@ import org.apache.isis.extensions.commandlog.jdo.entities.PublishedCommandForJdo public abstract class T_recent<T> { public static class CollectionDomainEvent - extends IsisModuleExtCommandLogJdo.CollectionDomainEvent<T_recent, PublishedCommandForJdo> { } + extends IsisModuleExtCommandLogApplib.CollectionDomainEvent<T_recent, PublishedCommand> { } private final T domainObject; public T_recent(final T domainObject) { this.domainObject = domainObject; } - public List<PublishedCommandForJdo> coll() { + public List<PublishedCommand> coll() { return findRecent(); } - private List<PublishedCommandForJdo> findRecent() { + private List<PublishedCommand> findRecent() { return bookmarkService.bookmarkFor(domainObject) .map(bookmark->queryResultsCache.execute( - () -> commandJdoRepository.findRecentByTarget(bookmark) + () -> publishedCommandRepository.findRecentByTarget(bookmark) , T_recent.class - , "findRecentByTarget" + , "findRecent" , domainObject)) .orElse(Collections.emptyList()); } - @Inject PublishedCommandForJdoRepository commandJdoRepository; + @Inject PublishedCommandRepository publishedCommandRepository; @Inject BookmarkService bookmarkService; @Inject QueryResultsCache queryResultsCache;
