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 e3db559955 ISIS-3049: minor refactoring: creation of 
ChoicesFromFacetForActionAnnotation
e3db559955 is described below

commit e3db559955660961f0572f6cd9de5c85cbb06572
Author: andi-huber <[email protected]>
AuthorDate: Fri Jul 8 08:49:55 2022 +0200

    ISIS-3049: minor refactoring: creation of
    ChoicesFromFacetForActionAnnotation
---
 .../actions/action/ActionAnnotationFacetFactory.java  | 18 +++++++-----------
 .../ChoicesFromFacetForActionAnnotation.java          | 19 +++++++++++++++++--
 ....java => LayoutGroupFacetForActionAnnotation.java} |  8 ++++----
 3 files changed, 28 insertions(+), 17 deletions(-)

diff --git 
a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/ActionAnnotationFacetFactory.java
 
b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/ActionAnnotationFacetFactory.java
index 74990ca4a1..0dde330b5d 100644
--- 
a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/ActionAnnotationFacetFactory.java
+++ 
b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/ActionAnnotationFacetFactory.java
@@ -25,7 +25,6 @@ import javax.inject.Inject;
 import org.apache.isis.applib.annotation.Action;
 import org.apache.isis.applib.events.domain.ActionDomainEvent;
 import org.apache.isis.applib.mixins.system.HasInteractionId;
-import org.apache.isis.commons.internal.base._Strings;
 import org.apache.isis.commons.internal.collections._Collections;
 import org.apache.isis.core.metamodel.context.MetaModelContext;
 import org.apache.isis.core.metamodel.facetapi.FeatureType;
@@ -43,7 +42,7 @@ import 
org.apache.isis.core.metamodel.facets.actions.action.prototype.PrototypeF
 import 
org.apache.isis.core.metamodel.facets.actions.action.semantics.ActionSemanticsFacetForActionAnnotation;
 import 
org.apache.isis.core.metamodel.facets.actions.action.typeof.TypeOfFacetForActionAnnotation;
 import 
org.apache.isis.core.metamodel.facets.actions.fileaccept.FileAcceptFacetForActionAnnotation;
-import 
org.apache.isis.core.metamodel.facets.members.layout.group.LayoutGroupFacetFromActionAnnotation;
+import 
org.apache.isis.core.metamodel.facets.members.layout.group.LayoutGroupFacetForActionAnnotation;
 import 
org.apache.isis.core.metamodel.facets.members.publish.command.CommandPublishingFacetForActionAnnotation;
 import 
org.apache.isis.core.metamodel.facets.members.publish.execution.ExecutionPublishingActionFacetForActionAnnotation;
 import 
org.apache.isis.core.metamodel.facets.object.domainobject.domainevents.ActionDomainEventDefaultFacetForDomainObjectAnnotation;
@@ -259,19 +258,16 @@ extends FacetFactoryAbstract {
 
     void processChoicesFrom(final ProcessMethodContext processMethodContext, 
final Optional<Action> actionIfAny) {
 
-        val facetedMethod = processMethodContext.getFacetHolder();
+        val holder = processMethodContext.getFacetHolder();
 
         // check for @Action(choicesFrom=...)
-        actionIfAny.ifPresent(action->{
-            val choicesFrom = action.choicesFrom();
-            if(_Strings.isNotEmpty(choicesFrom)) {
-                addFacet(new ChoicesFromFacetForActionAnnotation(choicesFrom, 
facetedMethod));
-            }
-        });
+        addFacetIfPresent(
+                ChoicesFromFacetForActionAnnotation
+                .create(actionIfAny, holder));
 
         addFacetIfPresent(
-                LayoutGroupFacetFromActionAnnotation
-                .create(actionIfAny, facetedMethod));
+                LayoutGroupFacetForActionAnnotation
+                .create(actionIfAny, holder));
 
     }
 
diff --git 
a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/associateWith/ChoicesFromFacetForActionAnnotation.java
 
b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/associateWith/ChoicesFromFacetForActionAnnotation.java
index e38d0eb74f..98e57350e7 100644
--- 
a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/associateWith/ChoicesFromFacetForActionAnnotation.java
+++ 
b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/associateWith/ChoicesFromFacetForActionAnnotation.java
@@ -18,11 +18,26 @@
  */
 package org.apache.isis.core.metamodel.facets.actions.action.associateWith;
 
+import java.util.Optional;
+
+import org.apache.isis.applib.annotation.Action;
+import org.apache.isis.commons.internal.base._Strings;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 
-public class ChoicesFromFacetForActionAnnotation extends 
ChoicesFromFacetAbstract {
+public class ChoicesFromFacetForActionAnnotation
+extends ChoicesFromFacetAbstract {
+
+    public static Optional<ChoicesFromFacet> create(
+            final Optional<Action> actionIfAny,
+            final FacetHolder holder) {
+        return actionIfAny
+            .map(Action::choicesFrom)
+            .filter(_Strings::isNotEmpty)
+            .map(choicesFrom->
+                new ChoicesFromFacetForActionAnnotation(choicesFrom, holder));
+    }
 
-    public ChoicesFromFacetForActionAnnotation(
+    private ChoicesFromFacetForActionAnnotation(
             final String value,
             final FacetHolder holder) {
         super(value, holder);
diff --git 
a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/members/layout/group/LayoutGroupFacetFromActionAnnotation.java
 
b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/members/layout/group/LayoutGroupFacetForActionAnnotation.java
similarity index 79%
rename from 
core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/members/layout/group/LayoutGroupFacetFromActionAnnotation.java
rename to 
core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/members/layout/group/LayoutGroupFacetForActionAnnotation.java
index 1b57802715..32377ff279 100644
--- 
a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/members/layout/group/LayoutGroupFacetFromActionAnnotation.java
+++ 
b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/members/layout/group/LayoutGroupFacetForActionAnnotation.java
@@ -23,19 +23,19 @@ import java.util.Optional;
 import org.apache.isis.applib.annotation.Action;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 
-public class LayoutGroupFacetFromActionAnnotation
+public class LayoutGroupFacetForActionAnnotation
 extends LayoutGroupFacetAbstract {
 
-    public static Optional<LayoutGroupFacetFromActionAnnotation> create(
+    public static Optional<LayoutGroupFacetForActionAnnotation> create(
             final Optional<Action> actionIfAny,
             final FacetHolder holder) {
 
         return actionIfAny
             .flatMap(GroupIdAndName::forAction)
-            .map(groupIdAndName->new 
LayoutGroupFacetFromActionAnnotation(groupIdAndName, holder));
+            .map(groupIdAndName->new 
LayoutGroupFacetForActionAnnotation(groupIdAndName, holder));
     }
 
-    private LayoutGroupFacetFromActionAnnotation(final GroupIdAndName 
groupIdAndName, final FacetHolder holder) {
+    private LayoutGroupFacetForActionAnnotation(final GroupIdAndName 
groupIdAndName, final FacetHolder holder) {
         super(groupIdAndName, holder, Precedence.FALLBACK);
     }
 

Reply via email to