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 2021/03/07 07:19:13 UTC
[isis] branch master updated: ISIS-2553: remove
SpecificationLoader.loadSpecification(LogicalType)
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 b589eb0 ISIS-2553: remove SpecificationLoader.loadSpecification(LogicalType)
b589eb0 is described below
commit b589eb008059e217231c5a50d706c0114246e638
Author: Andi Huber <ah...@apache.org>
AuthorDate: Sun Mar 7 08:19:02 2021 +0100
ISIS-2553: remove SpecificationLoader.loadSpecification(LogicalType)
---
.../isis/core/metamodel/specloader/SpecificationLoader.java | 6 ------
.../apache/isis/viewer/wicket/model/links/LinkAndLabel.java | 10 +++++-----
.../viewer/services/mementos/ObjectMementoServiceWicket.java | 6 ++++--
3 files changed, 9 insertions(+), 13 deletions(-)
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/SpecificationLoader.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/SpecificationLoader.java
index a8df5e7..04c08bc 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/SpecificationLoader.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/SpecificationLoader.java
@@ -203,10 +203,4 @@ public interface SpecificationLoader {
return loadSpecification(domainType, IntrospectionState.TYPE_INTROSPECTED);
}
- @Nullable
- default ObjectSpecification loadSpecification(
- final @Nullable LogicalType logicalType) {
- return loadSpecification(logicalType.getCorrespondingClass(), IntrospectionState.TYPE_INTROSPECTED);
- }
-
}
diff --git a/viewers/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/links/LinkAndLabel.java b/viewers/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/links/LinkAndLabel.java
index dd1acb4..3453823 100644
--- a/viewers/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/links/LinkAndLabel.java
+++ b/viewers/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/links/LinkAndLabel.java
@@ -96,11 +96,11 @@ public final class LinkAndLabel extends LinkAndLabelAbstract {
private Object readResolve() {
val commonContext = CommonContextUtils.getCommonContext();
- val actionHolderSpec = commonContext.getSpecificationLoader().loadSpecification(actionHolderLogicalType);
- val objectMember = actionHolderSpec
- .getMember(objectActionId)
- .orElseThrow(()->
- _Exceptions.noSuchElement("could not restore objectAction from id %s", objectActionId));
+ val objectMember = commonContext.getSpecificationLoader()
+ .specForLogicalType(actionHolderLogicalType)
+ .flatMap(actionHolderSpec->actionHolderSpec.getMember(objectActionId))
+ .orElseThrow(()->
+ _Exceptions.noSuchElement("could not restore objectAction from id %s", objectActionId));
return new LinkAndLabel(uiComponentFactory, named, actionHolder, (ObjectAction) objectMember);
}
}
diff --git a/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/services/mementos/ObjectMementoServiceWicket.java b/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/services/mementos/ObjectMementoServiceWicket.java
index 6f046ae..58021cd 100644
--- a/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/services/mementos/ObjectMementoServiceWicket.java
+++ b/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/services/mementos/ObjectMementoServiceWicket.java
@@ -130,8 +130,10 @@ public class ObjectMementoServiceWicket implements ObjectMementoService {
if(memento instanceof ObjectMementoForEmpty) {
val objectMementoForEmpty = (ObjectMementoForEmpty) memento;
val logicalType = objectMementoForEmpty.getLogicalType();
- val spec = specificationLoader.loadSpecification(logicalType);
- return ManagedObject.empty(spec);
+ val spec = specificationLoader.specForLogicalType(logicalType);
+ return spec.isPresent()
+ ? ManagedObject.empty(spec.get())
+ : ManagedObject.unspecified();
}
if(memento instanceof ObjectMementoCollection) {