You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by ah...@apache.org on 2020/05/28 08:15:44 UTC
[isis] branch master updated: ISIS-2340: minor simplification
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 2017428 ISIS-2340: minor simplification
2017428 is described below
commit 2017428cdbf2ee582ba0863838b8614c6d0d1afd
Author: Andi Huber <ah...@apache.org>
AuthorDate: Thu May 28 10:15:23 2020 +0200
ISIS-2340: minor simplification
---
.../viewer/vaadin/model/action/ActionFactoryVaa.java | 12 +++++-------
.../viewer/common/model/action/ActionUiModelFactory.java | 10 ++++------
.../common/model/menu/MenuUiModel_buildMenuItems.java | 15 ++++++---------
.../actionmenu/serviceactions/ServiceActionUtil.java | 10 ++++------
4 files changed, 19 insertions(+), 28 deletions(-)
diff --git a/incubator/viewers/vaadin/model/src/main/java/org/apache/isis/incubator/viewer/vaadin/model/action/ActionFactoryVaa.java b/incubator/viewers/vaadin/model/src/main/java/org/apache/isis/incubator/viewer/vaadin/model/action/ActionFactoryVaa.java
index c207311..ea7ba0d 100644
--- a/incubator/viewers/vaadin/model/src/main/java/org/apache/isis/incubator/viewer/vaadin/model/action/ActionFactoryVaa.java
+++ b/incubator/viewers/vaadin/model/src/main/java/org/apache/isis/incubator/viewer/vaadin/model/action/ActionFactoryVaa.java
@@ -21,8 +21,7 @@ package org.apache.isis.incubator.viewer.vaadin.model.action;
import com.vaadin.flow.component.Component;
import com.vaadin.flow.component.html.Label;
-import org.apache.isis.core.metamodel.spec.ManagedObject;
-import org.apache.isis.core.metamodel.spec.feature.ObjectAction;
+import org.apache.isis.core.metamodel.interactions.managed.ManagedAction;
import org.apache.isis.core.webapp.context.IsisWebAppCommonContext;
import org.apache.isis.incubator.viewer.vaadin.model.decorator.Decorators;
import org.apache.isis.incubator.viewer.vaadin.model.entity.ObjectVaa;
@@ -39,16 +38,15 @@ public class ActionFactoryVaa implements ActionUiModelFactory<Component> {
public ActionUiModel<Component> newAction(
IsisWebAppCommonContext commonContext,
String named,
- ManagedObject actionHolder,
- ObjectAction objectAction) {
+ ManagedAction managedAction) {
- val serviceModel = new ObjectVaa(commonContext, actionHolder);
+ val actionOwnerModel = new ObjectVaa(commonContext, managedAction.getOwner());
val actionUiModel = new ActionVaa(
this::createUiComponent,
named,
- serviceModel,
- objectAction);
+ actionOwnerModel,
+ managedAction.getAction());
return actionUiModel;
}
diff --git a/viewers/common/src/main/java/org/apache/isis/viewer/common/model/action/ActionUiModelFactory.java b/viewers/common/src/main/java/org/apache/isis/viewer/common/model/action/ActionUiModelFactory.java
index df5063c..39e97ee 100644
--- a/viewers/common/src/main/java/org/apache/isis/viewer/common/model/action/ActionUiModelFactory.java
+++ b/viewers/common/src/main/java/org/apache/isis/viewer/common/model/action/ActionUiModelFactory.java
@@ -18,8 +18,7 @@
*/
package org.apache.isis.viewer.common.model.action;
-import org.apache.isis.core.metamodel.spec.ManagedObject;
-import org.apache.isis.core.metamodel.spec.feature.ObjectAction;
+import org.apache.isis.core.metamodel.interactions.managed.ManagedAction;
import org.apache.isis.core.webapp.context.IsisWebAppCommonContext;
/**
@@ -37,14 +36,13 @@ public interface ActionUiModelFactory<T> {
*
* @param commonContext
* @param named - used when explicitly named (eg. menu bar layout file), otherwise {@code null}
- * @param actionHolder
- * @param objectAction
+ * @param managedAction
* @return
*/
ActionUiModel<T> newAction(
IsisWebAppCommonContext commonContext,
String named,
- ManagedObject actionHolder,
- ObjectAction objectAction);
+ ManagedAction managedAction);
+
}
diff --git a/viewers/common/src/main/java/org/apache/isis/viewer/common/model/menu/MenuUiModel_buildMenuItems.java b/viewers/common/src/main/java/org/apache/isis/viewer/common/model/menu/MenuUiModel_buildMenuItems.java
index 6306157..5d7dae0 100644
--- a/viewers/common/src/main/java/org/apache/isis/viewer/common/model/menu/MenuUiModel_buildMenuItems.java
+++ b/viewers/common/src/main/java/org/apache/isis/viewer/common/model/menu/MenuUiModel_buildMenuItems.java
@@ -25,6 +25,7 @@ import java.util.function.Function;
import org.apache.isis.applib.layout.menubars.bootstrap3.BS3Menu;
import org.apache.isis.applib.layout.menubars.bootstrap3.BS3MenuBar;
import org.apache.isis.core.commons.internal.base._Strings;
+import org.apache.isis.core.metamodel.interactions.managed.ManagedAction;
import org.apache.isis.core.webapp.context.IsisWebAppCommonContext;
import org.apache.isis.viewer.common.model.action.ActionUiModelFactory;
import org.apache.isis.viewer.common.model.menuitem.MenuItemUiModel;
@@ -66,23 +67,19 @@ final class MenuUiModel_buildMenuItems {
continue;
}
- val objectAction =
- serviceAdapter
- .getSpecification()
- .getObjectAction(actionLayoutData.getId())
- .orElse(null);
- if (objectAction == null) {
+ val managedAction = ManagedAction.lookupAction(serviceAdapter, actionLayoutData.getId())
+ .orElse(null);
+ if (managedAction == null) {
log.warn("No such action {}", actionLayoutData.getId());
continue;
}
-
+
val isFirstInSection = itemsPerSectionCounter.intValue()==0;
val menuActionUiModel = menuActionFactory.newAction(
commonContext,
actionLayoutData.getNamed(),
- serviceAdapter,
- objectAction);
+ managedAction);
// Optionally creates a sub-menu item based on visibility and usability
menuItemModel.addSubMenuItemFor(
diff --git a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actionmenu/serviceactions/ServiceActionUtil.java b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actionmenu/serviceactions/ServiceActionUtil.java
index 7a2ab96..4907766 100644
--- a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actionmenu/serviceactions/ServiceActionUtil.java
+++ b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actionmenu/serviceactions/ServiceActionUtil.java
@@ -29,8 +29,7 @@ import org.apache.wicket.markup.html.list.ListItem;
import org.apache.wicket.markup.html.list.ListView;
import org.apache.wicket.markup.html.panel.Fragment;
-import org.apache.isis.core.metamodel.spec.ManagedObject;
-import org.apache.isis.core.metamodel.spec.feature.ObjectAction;
+import org.apache.isis.core.metamodel.interactions.managed.ManagedAction;
import org.apache.isis.core.webapp.context.IsisWebAppCommonContext;
import org.apache.isis.viewer.common.model.action.ActionUiModelFactory;
import org.apache.isis.viewer.common.model.menu.MenuUiModel;
@@ -113,10 +112,9 @@ public final class ServiceActionUtil {
public LinkAndLabel newAction(
IsisWebAppCommonContext commonContext,
String named,
- ManagedObject actionHolder,
- ObjectAction objectAction) {
+ ManagedAction managedAction) {
- val serviceModel = EntityModel.ofAdapter(commonContext, actionHolder);
+ val serviceModel = EntityModel.ofAdapter(commonContext, managedAction.getOwner());
val actionLinkFactory = new MenuActionLinkFactory(
PageAbstract.ID_MENU_LINK,
@@ -126,7 +124,7 @@ public final class ServiceActionUtil {
model->actionLinkFactory.newActionLink(model.getObjectAction(), named).getUiComponent(),
named,
serviceModel,
- objectAction);
+ managedAction.getAction());
}
}