This is an automated email from the ASF dual-hosted git repository. ahuber pushed a commit to branch CAUSEWAY-3955 in repository https://gitbox.apache.org/repos/asf/causeway.git
commit 6b8d9a6ac0772df64939c4e3406d883e3bb8b6c1 Author: andi-huber <[email protected]> AuthorDate: Thu Jan 15 13:19:05 2026 +0100 CAUSEWAY-3955: [v2] refactors internally no longer to use deprecations in HasObjectSpecification --- .../_testing/MetaModelContext_forTesting.java | 2 +- .../context/MetaModelContext_usingSpring.java | 2 +- .../core/metamodel/execution/PropertyModifier.java | 2 +- .../actions/action/invocation/IdentifierUtil.java | 2 +- .../facets/collections/CollectionFacet.java | 2 +- .../choices/ChoicesFacetFromBoundedAbstract.java | 2 +- .../facets/object/grid/GridFacetDefault.java | 4 ++-- .../impl/ObjectValidPropertiesFacetImpl.java | 2 +- .../ident/CssClassFacetFromProjectionFacet.java | 2 +- .../ident/IconFacetFromProjectionFacet.java | 2 +- .../title/methods/TitleFacetViaTitleMethod.java | 2 +- .../title/parser/TitleFacetFromValueFacet.java | 4 ++-- .../ViewModelFacetForDomainObjectAnnotation.java | 2 +- .../ViewModelFacetForXmlRootElementAnnotation.java | 2 +- .../metamodel/interactions/InteractionHead.java | 4 ++-- .../interactions/ObjectValidityContext.java | 2 +- .../interactions/managed/ActionInteraction.java | 4 ++-- .../interactions/managed/ManagedMember.java | 2 +- .../managed/PendingParamsSnapshot.java | 2 +- .../core/metamodel/object/Bookmarkable.java | 2 +- .../core/metamodel/object/ManagedObjects.java | 8 ++++---- .../core/metamodel/object/MmAssertionUtils.java | 4 ++-- .../core/metamodel/object/MmEntityUtils.java | 16 ++++++++-------- .../core/metamodel/object/MmSpecUtils.java | 2 +- .../core/metamodel/object/MmValueUtils.java | 4 ++-- .../core/metamodel/object/MmVisibilityUtils.java | 4 ++-- .../core/metamodel/object/_InternalTitleUtil.java | 6 +++--- .../object/_ManagedObjectEntityBookmarked.java | 8 ++++---- .../object/_ManagedObjectEntityHybrid.java | 10 +++++----- .../object/_ManagedObjectEntityTransient.java | 2 +- .../core/metamodel/object/_ManagedObjectValue.java | 2 +- .../metamodel/object/_ManagedObjectViewmodel.java | 2 +- .../metamodel/objectmanager/ObjectCreator.java | 4 ++-- .../metamodel/objectmanager/ObjectManager.java | 4 ++-- .../memento/ObjectMementoForScalar.java | 4 ++-- .../authorization/AuthorizationFacetAbstract.java | 4 ++-- .../services/title/TitleServiceDefault.java | 4 ++-- .../core/metamodel/spec/feature/ObjectAction.java | 6 +++--- .../specloader/specimpl/ObjectActionDefault.java | 2 +- .../specloader/specimpl/ObjectActionMixedIn.java | 2 +- .../specimpl/ObjectSpecificationAbstract.java | 2 +- .../specimpl/dflt/_AssociationsAsColumns.java | 2 +- .../tabular/interactive/DataTableInteractive.java | 4 ++-- .../causeway/core/metamodel/util/Facets.java | 2 +- .../core/metamodel/util/snapshot/XmlSnapshot.java | 8 ++++---- .../RecreatableObjectFacetFactoryTest.java | 2 +- .../command/CommandExecutorServiceDefault.java | 4 ++-- .../executor/MemberExecutorServiceDefault.java | 2 +- .../bootstrap/MenuBarsServiceBootstrap.java | 12 ++++++------ .../publish/LifecycleCallbackNotifier.java | 2 +- .../InvocationHandlerforAsyncWrapRegular.java | 4 ++-- .../wrapper/WrapperFactoryDefault.java | 4 ++-- .../DelegatingInvocationHandlerAbstract.java | 2 +- .../handlers/DomainObjectInvocationHandler.java | 6 +++--- .../menubars/bootstrap/MenuBarsServiceBSTest.java | 2 +- .../changetracking/EntityChangeTrackerDefault.java | 2 +- .../commons/integration/changetracking/_Xray.java | 2 +- .../version/EntityVersionAccessorDefault.java | 2 +- .../jdo/datanucleus/changetracking/_Utils.java | 2 +- .../interaction/DomainObjectTesterFactory.java | 4 ++-- .../JpaGeneratedLongIdEntityLifecycleTest.java | 2 +- ...JpaNonGeneratedStringIdEntityLifecycleTest.java | 2 +- .../value/ActionInteractionProbeImpl.java | 4 ++-- .../value/PropertyInteractionProbeImpl.java | 2 +- .../viewers/common/wkt/InteractionTestWkt.java | 2 +- .../viewer/commons/model/action/UiActionForm.java | 2 +- .../viewer/commons/model/layout/UiGridLayout.java | 4 ++-- .../services/menu/MenuUiServiceDefault.java | 4 ++-- .../common/query/meta/CommonMetaFetcher.java | 6 +++--- .../viewer/controller/ResourceController.java | 4 ++-- .../domainobjects/DomainObjectReprRenderer.java | 22 +++++++++++----------- .../domainobjects/DomainServiceLinkTo.java | 2 +- .../rendering/domainobjects/ListReprRenderer.java | 2 +- .../domainobjects/ObjectActionReprRenderer.java | 2 +- .../domainobjects/ObjectAndActionInvocation.java | 4 ++-- .../ObjectCollectionReprRenderer.java | 2 +- .../domainobjects/ObjectPropertyReprRenderer.java | 4 ++-- .../domainobjects/ScalarValueReprRenderer.java | 2 +- ...ntentNegotiationServiceOrgApacheCausewayV2.java | 10 +++++----- .../service/valuerender/JsonValueConverter.java | 2 +- .../JsonValueEncoderServiceDefault.java | 10 +++++----- .../domainobjects/JsonValueEncoderTest.java | 14 +++++++------- .../resources/DomainObjectResourceServerside.java | 4 ++-- .../resources/ObjectAdapterUpdateHelper.java | 2 +- .../wicket/model/models/ScalarParameterModel.java | 2 +- .../viewer/wicket/model/models/UiObjectWkt.java | 2 +- .../interaction/HasBookmarkedOwnerAbstract.java | 2 +- .../interaction/act/ActionInteractionWkt.java | 2 +- .../interaction/prop/PropertyInteractionWkt.java | 2 +- .../actionresponse/ActionResultResponseType.java | 4 ++-- .../ajaxtable/CausewayAjaxDataTable.java | 2 +- .../ajaxtable/columns/SingularColumn.java | 2 +- .../components/entity/fieldset/PropertyGroup.java | 2 +- .../entity/icontitle/EntityIconAndTitlePanel.java | 8 ++++---- .../wicket/ui/components/layout/bs/col/Col.java | 2 +- .../scalars/markup/MarkupPanelFactories.java | 2 +- .../ui/components/unknown/UnknownModelPanel.java | 2 +- .../widgets/linkandlabel/ActionLink.java | 2 +- .../viewer/wicket/ui/pages/entity/EntityPage.java | 2 +- 99 files changed, 184 insertions(+), 184 deletions(-) diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/_testing/MetaModelContext_forTesting.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/_testing/MetaModelContext_forTesting.java index 4174afa7ea7..65f7f4d0d53 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/_testing/MetaModelContext_forTesting.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/_testing/MetaModelContext_forTesting.java @@ -552,7 +552,7 @@ private final Map<String, ManagedObject> collectBeansOfKnownSort() { services.stream() .map(service->ManagedObject.service(service.specification, service.pojo)) .forEach(serviceAdapter-> - map.put(serviceAdapter.getSpecification().getLogicalTypeName(), serviceAdapter)); + map.put(serviceAdapter.objSpec().getLogicalTypeName(), serviceAdapter)); return map; } diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/context/MetaModelContext_usingSpring.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/context/MetaModelContext_usingSpring.java index 23ee4ceed92..cd91f3cbb53 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/context/MetaModelContext_usingSpring.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/context/MetaModelContext_usingSpring.java @@ -202,7 +202,7 @@ private Map<String, ManagedObject> collectBeansOfKnownSort() { .streamRegisteredBeans() .map(this::toManagedObject) .collect(Collectors.toMap( - service->service.getSpecification().getLogicalTypeName(), + service->service.objSpec().getLogicalTypeName(), v->v, (o,n)->n, LinkedHashMap::new)); diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/execution/PropertyModifier.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/execution/PropertyModifier.java index d43cded7ea4..81d854fe7bd 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/execution/PropertyModifier.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/execution/PropertyModifier.java @@ -181,7 +181,7 @@ public Object execute(final PropertyEdit currentExecution) { final ManagedObject newValueAfterEventPolling = isValueModifiedByEvent // properly handles the pojo==null case - ? ManagedObject.adaptSingular(newValue.getSpecification(), newValuePojoPossiblyUpdated) + ? ManagedObject.adaptSingular(newValue.objSpec(), newValuePojoPossiblyUpdated) : newValue; // set event onto the execution diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/actions/action/invocation/IdentifierUtil.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/actions/action/invocation/IdentifierUtil.java index c5503468c23..7bcc030ac1c 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/actions/action/invocation/IdentifierUtil.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/actions/action/invocation/IdentifierUtil.java @@ -110,7 +110,7 @@ public String logicalMemberIdentifierFor( if (interactionHead instanceof ActionInteractionHead) { ObjectAction objectActionOnMixee = ((ActionInteractionHead) interactionHead).getMetaModel(); - ObjectSpecification specificationOfMixee = interactionHead.getOwner().getSpecification(); + ObjectSpecification specificationOfMixee = interactionHead.getOwner().objSpec(); return logicalMemberIdentifierFor(specificationOfMixee, objectActionOnMixee); } } diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/collections/CollectionFacet.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/collections/CollectionFacet.java index 4bddbe6b6f4..50d5fba6d08 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/collections/CollectionFacet.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/collections/CollectionFacet.java @@ -107,7 +107,7 @@ public static Optional<CollectionFacet> lookup(@Nullable final ManagedObject con if(container==null) { return Optional.empty(); } - return container.getSpecification().lookupFacet(CollectionFacet.class); + return container.objSpec().lookupFacet(CollectionFacet.class); } public static int elementCount(@Nullable final ManagedObject container) { diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/choices/ChoicesFacetFromBoundedAbstract.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/choices/ChoicesFacetFromBoundedAbstract.java index 6f5e2ee95ef..f56d6a693d7 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/choices/ChoicesFacetFromBoundedAbstract.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/choices/ChoicesFacetFromBoundedAbstract.java @@ -85,7 +85,7 @@ public String invalidates(final ValidityContext context) { } final ObjectSpecification objectSpec = getObjectSpecification(); - return objectSpec == target.getSpecification()? null: "Invalid type"; + return objectSpec == target.objSpec()? null: "Invalid type"; } private ObjectSpecification getObjectSpecification() { diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/grid/GridFacetDefault.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/grid/GridFacetDefault.java index 09699c5f06f..11b18ab39b5 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/grid/GridFacetDefault.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/grid/GridFacetDefault.java @@ -92,12 +92,12 @@ private void guardAgainstObjectOfDifferentType(final @Nullable ManagedObject obj return; // cannot introspect } - if(!getSpecification().equals(objectAdapter.getSpecification())) { + if(!getSpecification().equals(objectAdapter.objSpec())) { throw _Exceptions.unrecoverable( "getGrid(adapter) was called passing an adapter (type: %s), " + "for which this GridFacet (type: %s) is not responsible; " + "indicates that some framework internals are wired up in a wrong way", - objectAdapter.getSpecification().getCorrespondingClass().getName(), + objectAdapter.objSpec().getCorrespondingClass().getName(), getSpecification().getCorrespondingClass().getName()); } } diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/objectvalidprops/impl/ObjectValidPropertiesFacetImpl.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/objectvalidprops/impl/ObjectValidPropertiesFacetImpl.java index b58684a649c..ad5ae8a48f0 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/objectvalidprops/impl/ObjectValidPropertiesFacetImpl.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/objectvalidprops/impl/ObjectValidPropertiesFacetImpl.java @@ -45,7 +45,7 @@ public String invalidReason( final StringBuilder buf = new StringBuilder(); final ManagedObject adapter = context.getTarget(); - adapter.getSpecification().streamProperties(MixedIn.EXCLUDED) + adapter.objSpec().streamProperties(MixedIn.EXCLUDED) .filter(property->property.isVisible(adapter, context.getInitiatedBy(), where).isVetoed()) // ignore hidden properties .filter(property->property.isUsable(adapter, context.getInitiatedBy(), where).isVetoed()) // ignore disabled properties .forEach(property->{ diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/projection/ident/CssClassFacetFromProjectionFacet.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/projection/ident/CssClassFacetFromProjectionFacet.java index 87d1b545865..cd43a179bf8 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/projection/ident/CssClassFacetFromProjectionFacet.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/projection/ident/CssClassFacetFromProjectionFacet.java @@ -43,7 +43,7 @@ public CssClassFacetFromProjectionFacet( @Override public String cssClass(final ManagedObject targetAdapter) { val projectedAdapter = projectionFacet.projected(targetAdapter); - val cssClassFacet = projectedAdapter.getSpecification().getFacet(CssClassFacet.class); + val cssClassFacet = projectedAdapter.objSpec().getFacet(CssClassFacet.class); return cssClassFacet != null ? cssClassFacet.cssClass(projectedAdapter) : null; diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/projection/ident/IconFacetFromProjectionFacet.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/projection/ident/IconFacetFromProjectionFacet.java index b87a09c5ccc..00cbd4c50e5 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/projection/ident/IconFacetFromProjectionFacet.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/projection/ident/IconFacetFromProjectionFacet.java @@ -44,7 +44,7 @@ public IconFacetFromProjectionFacet( @Override public String iconName(final ManagedObject targetAdapter) { val projectedAdapter = projectionFacet.projected(targetAdapter); - return projectedAdapter.getSpecification().getIconName(projectedAdapter); + return projectedAdapter.objSpec().getIconName(projectedAdapter); } @Override diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/title/methods/TitleFacetViaTitleMethod.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/title/methods/TitleFacetViaTitleMethod.java index a241f76919e..d62c6ff8065 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/title/methods/TitleFacetViaTitleMethod.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/title/methods/TitleFacetViaTitleMethod.java @@ -95,7 +95,7 @@ public String title(final TitleRenderRequest titleRenderRequest) { .map(CausewaySystemEnvironment::isUnitTesting) .orElse(false); if(!isUnitTesting) { - log.warn("Failed Title {}", owningAdapter.getSpecification(), ex); + log.warn("Failed Title {}", owningAdapter.objSpec(), ex); } return "Failed Title"; } diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/title/parser/TitleFacetFromValueFacet.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/title/parser/TitleFacetFromValueFacet.java index a7a22949932..452f7067439 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/title/parser/TitleFacetFromValueFacet.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/title/parser/TitleFacetFromValueFacet.java @@ -65,7 +65,7 @@ public String title(final TitleRenderRequest renderRequest) { * and alternatively object-support method 'title()', * by letting the SpecificationLoader introspect enum types and populate the meta-model * with TitleFacets (that have higher priority than this one). */ - if(renderRequest.getObject().getSpecification().getCorrespondingClass().isEnum()) { + if(renderRequest.getObject().objSpec().getCorrespondingClass().isEnum()) { return Enums.getFriendlyNameOf((Enum<?>)pojo); } @@ -111,7 +111,7 @@ public String title(final TitleRenderRequest renderRequest) { .map(renderer->(Renderer) renderer) .map(renderer->renderer.titlePresentation(valueFacet.createValueSemanticsContext(feature), pojo)) .orElseGet(()->String.format("Value type %s has no value semantics for title rendering.", - renderRequest.getObject().getSpecification().getCorrespondingClass())); + renderRequest.getObject().objSpec().getCorrespondingClass())); } diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/viewmodel/ViewModelFacetForDomainObjectAnnotation.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/viewmodel/ViewModelFacetForDomainObjectAnnotation.java index e1dc96abf0a..b8039123740 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/viewmodel/ViewModelFacetForDomainObjectAnnotation.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/viewmodel/ViewModelFacetForDomainObjectAnnotation.java @@ -128,7 +128,7 @@ public String serialize(final ManagedObject viewModel) { final _Mementos.Memento memento = newMemento(); - val viewmodelSpec = viewModel.getSpecification(); + val viewmodelSpec = viewModel.objSpec(); streamPersistableProperties(viewmodelSpec) .forEach(property->{ diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/viewmodel/ViewModelFacetForXmlRootElementAnnotation.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/viewmodel/ViewModelFacetForXmlRootElementAnnotation.java index 84eabf5e08f..a398fad4c34 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/viewmodel/ViewModelFacetForXmlRootElementAnnotation.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/object/viewmodel/ViewModelFacetForXmlRootElementAnnotation.java @@ -82,7 +82,7 @@ protected String serialize(final ManagedObject managedObject) { + "--- XML ---\n" + "%s" + "-----------\n", - managedObject.getSpecification().getLogicalTypeName(), + managedObject.objSpec().getLogicalTypeName(), xml); }); return encoded; diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/interactions/InteractionHead.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/interactions/InteractionHead.java index 2586c896c92..d066fcddc20 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/interactions/InteractionHead.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/interactions/InteractionHead.java @@ -76,11 +76,11 @@ public Optional<ManagedObject> getMixee() { /** factory with consistency checks */ private static InteractionHead of(final @NonNull ManagedObject owner, final @NonNull ManagedObject target) { if(ManagedObjects.isSpecified(owner) - && owner.getSpecification().getBeanSort().isMixin()) { + && owner.objSpec().getBeanSort().isMixin()) { throw _Exceptions.unrecoverable("unexpected: owner is a mixin %s", owner); } if(ManagedObjects.isSpecified(target) - && target.getSpecification().getBeanSort().isMixin() + && target.objSpec().getBeanSort().isMixin() && target.getPojo()==null) { throw _Exceptions.unrecoverable("target not spec. %s", target); } diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/interactions/ObjectValidityContext.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/interactions/ObjectValidityContext.java index 152ab9e7666..d2e6e4cd216 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/interactions/ObjectValidityContext.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/interactions/ObjectValidityContext.java @@ -41,7 +41,7 @@ public ObjectValidityContext( super(InteractionContextType.OBJECT_VALIDATE, InteractionHead.regular(targetAdapter), identifier, - ()->targetAdapter.getSpecification().getSingularName(), + ()->targetAdapter.objSpec().getSingularName(), interactionInitiatedBy); } diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/interactions/managed/ActionInteraction.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/interactions/managed/ActionInteraction.java index 440ca60e5d6..170d3122be9 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/interactions/managed/ActionInteraction.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/interactions/managed/ActionInteraction.java @@ -215,7 +215,7 @@ public static ActionInteraction startAsBoundToProperty( //XXX guard against memberId collision, // such that if there is a conflict, the conventional member wins // (maybe improve programming model so this cannot happen) - && propertyOwner.getSpecification().getAction(memberId, MixedIn.INCLUDED).isEmpty()) { + && propertyOwner.objSpec().getAction(memberId, MixedIn.INCLUDED).isEmpty()) { val compositeValueNullable = prop.get(propertyOwner); val compositeValue = @@ -253,7 +253,7 @@ public static ActionInteraction startAsBoundToParameter( //XXX guard against memberId collision, // such that if there is a conflict, the conventional member wins // (maybe improve programming model so this cannot happen) - && actionOwner.getSpecification().getAction(memberId, MixedIn.INCLUDED).isEmpty()) { + && actionOwner.objSpec().getAction(memberId, MixedIn.INCLUDED).isEmpty()) { val compositeValueNullable = parameterNegotiationModel.getParamValue(paramIndex); val compositeValue = diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/interactions/managed/ManagedMember.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/interactions/managed/ManagedMember.java index ddb8fb23ac1..2daa25d1a71 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/interactions/managed/ManagedMember.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/interactions/managed/ManagedMember.java @@ -159,7 +159,7 @@ protected static <T extends ObjectMember> Optional<T> lookup( final @NonNull Identifier.Type memberType, final @NonNull String memberId) { - val onwerSpec = owner.getSpecification(); + val onwerSpec = owner.objSpec(); switch (memberType) { case ACTION: return _Casts.uncheckedCast(onwerSpec.getAction(memberId)); case PROPERTY: return _Casts.uncheckedCast(onwerSpec.getProperty(memberId)); diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/interactions/managed/PendingParamsSnapshot.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/interactions/managed/PendingParamsSnapshot.java index efc0c3281dd..1ad1c0b5a83 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/interactions/managed/PendingParamsSnapshot.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/interactions/managed/PendingParamsSnapshot.java @@ -145,7 +145,7 @@ private Can<Bookmark> bookmark( paramModel.getMetaModel().getFeatureIdentifier())); if(isPlural) { cardinalityConstraints[paramModel.getParamNr()] = - Objects.requireNonNull(((PackedManagedObject)paramValue).getLogicalType()); + Objects.requireNonNull(((PackedManagedObject)paramValue).logicalType()); } } return isPlural diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/Bookmarkable.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/Bookmarkable.java index 178da70a86f..3bf8f54dbe0 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/Bookmarkable.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/Bookmarkable.java @@ -44,7 +44,7 @@ default boolean isBookmarkSupported() { default Bookmark getBookmarkElseFail() { return getBookmark().orElseThrow(()-> - _Exceptions.unrecoverable("failed to bookmark %s", ((ManagedObject)this).getSpecification())); + _Exceptions.unrecoverable("failed to bookmark %s", ((ManagedObject)this).objSpec())); } /** diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/ManagedObjects.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/ManagedObjects.java index a7161db33e7..acec416c221 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/ManagedObjects.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/ManagedObjects.java @@ -169,14 +169,14 @@ public boolean isInstanceOf( return ((PackedManagedObject)object).unpack().stream() .allMatch(element->isInstanceOf(element, elementType)); } - val objectActualType = ClassUtils.resolvePrimitiveIfNecessary(object.getSpecification().getCorrespondingClass()); + val objectActualType = ClassUtils.resolvePrimitiveIfNecessary(object.objSpec().getCorrespondingClass()); return upperBound.isAssignableFrom(objectActualType); } // -- IDENTIFICATION public Optional<ObjectSpecification> spec(final @Nullable ManagedObject managedObject) { - return isSpecified(managedObject) ? Optional.of(managedObject.getSpecification()) : Optional.empty(); + return isSpecified(managedObject) ? Optional.of(managedObject.objSpec()) : Optional.empty(); } public Optional<Bookmark> bookmark(final @Nullable ManagedObject managedObject) { @@ -238,7 +238,7 @@ public String stringifyElseUnidentified( final @NonNull String separator) { return stringify(managedObject, separator) .orElseGet(()->isSpecified(managedObject) - ? managedObject.getSpecification().getLogicalTypeName() + separator + "?" + ? managedObject.objSpec().getLogicalTypeName() + separator + "?" : "?" + separator + "?"); } @@ -436,7 +436,7 @@ public Try<String> imperativeText( return Try.success(null); } - val mmc = object.getSpecification().getMetaModelContext(); + val mmc = object.objSpec().getMetaModelContext(); val result = Try.call(()->{ final Object returnValue = MmInvokeUtils.invokeNoArg(method.method(), object); diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/MmAssertionUtils.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/MmAssertionUtils.java index 0e78902f170..769b53ac160 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/MmAssertionUtils.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/MmAssertionUtils.java @@ -43,7 +43,7 @@ public void assertExactTypeSpecification(final @Nullable ManagedObject obj) { } val pojo = ManagedObjects.peekAtPojoOf(obj); val requiredType = pojo.getClass(); - val actualSpec = obj.getSpecification(); + val actualSpec = obj.objSpec(); _Assert.assertEquals(requiredType, actualSpec.getCorrespondingClass()); } @@ -90,7 +90,7 @@ public void assertExactType( return object; } val upperBound = ClassUtils.resolvePrimitiveIfNecessary(elementType.getCorrespondingClass()); - val objectActualType = ClassUtils.resolvePrimitiveIfNecessary(object.getSpecification().getCorrespondingClass()); + val objectActualType = ClassUtils.resolvePrimitiveIfNecessary(object.objSpec().getCorrespondingClass()); throw _Exceptions.illegalArgument("Object has incompatible type %s, " + "must be an instance of %s.", objectActualType.getName(), diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/MmEntityUtils.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/MmEntityUtils.java index b9edbbdae3f..b9297613b34 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/MmEntityUtils.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/MmEntityUtils.java @@ -45,7 +45,7 @@ public Optional<PersistenceStack> getPersistenceStandard(final @Nullable Managed if(adapter==null) { return Optional.empty(); } - val spec = adapter.getSpecification(); + val spec = adapter.objSpec(); if(spec==null || !spec.isEntity()) { return Optional.empty(); } @@ -63,14 +63,14 @@ public EntityState getEntityState(final @Nullable ManagedObject adapter) { public void persistInCurrentTransaction(final ManagedObject managedObject) { requiresEntity(managedObject); - val spec = managedObject.getSpecification(); + val spec = managedObject.objSpec(); val entityFacet = spec.entityFacetElseFail(); entityFacet.persist(managedObject.getPojo()); } public void deleteInCurrentTransaction(final ManagedObject managedObject) { requiresEntity(managedObject); - val spec = managedObject.getSpecification(); + val spec = managedObject.objSpec(); val entityFacet = spec.entityFacetElseFail(); entityFacet.delete(managedObject.getPojo()); } @@ -79,7 +79,7 @@ public void requiresEntity(final ManagedObject managedObject) { if(ManagedObjects.isNullOrUnspecifiedOrEmpty(managedObject)) { throw _Exceptions.illegalArgument("requires an entity object but got null, unspecified or empty"); } - val spec = managedObject.getSpecification(); + val spec = managedObject.objSpec(); if(!spec.isEntity()) { throw _Exceptions.illegalArgument("not an entity type %s (sort=%s)", spec.getCorrespondingClass(), @@ -134,7 +134,7 @@ public ManagedObject requiresAttached(final @NonNull ManagedObject managedObject EntityState.ATTACHED, entityState, ()-> String.format("entity %s is required to be attached (not detached)", - managedObject.getSpecification().getLogicalTypeName())); + managedObject.objSpec().getLogicalTypeName())); } return managedObject; } @@ -146,7 +146,7 @@ public void requiresWhenFirstIsBookmarkableSecondIsAlso( if(!ManagedObjects.isIdentifiable(first) || !ManagedObjects.isSpecified(second)) { return; } - val secondSpec = second.getSpecification(); + val secondSpec = second.objSpec(); if(secondSpec.isParented() || !secondSpec.isEntity()) { return; } @@ -162,7 +162,7 @@ public void requiresWhenFirstIsBookmarkableSecondIsAlso( // -- PROPERTY CHANGE PUBLISHING public Stream<OneToOneAssociation> streamPropertiesEnabledForChangePublishing(final @NonNull ManagedObject entity) { - return entity.getSpecification().streamProperties(MixedIn.EXCLUDED) + return entity.objSpec().streamProperties(MixedIn.EXCLUDED) .filter(property->!EntityPropertyChangePublishingPolicyFacet.isExcludedFromPublishing(property)); } @@ -174,7 +174,7 @@ public Stream<PropertyChangeRecordId> streamPropertyChangeRecordIdsForChangePubl public Optional<OneToOneAssociation> lookupPropertyEnabledForChangePublishing( final @NonNull ManagedObject entity, final String propertyName) { return entity - .getSpecification() + .objSpec() .getProperty(propertyName, MixedIn.EXCLUDED) .filter(property -> !EntityPropertyChangePublishingPolicyFacet.isExcludedFromPublishing(property)); } diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/MmSpecUtils.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/MmSpecUtils.java index 90e925594e4..908af2e7f7e 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/MmSpecUtils.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/MmSpecUtils.java @@ -46,7 +46,7 @@ public ManagedObject enforceMostSpecificSpecOn(final @NonNull ManagedObject obj) } val pojo = ManagedObjects.peekAtPojoOf(obj); val requiredType = pojo.getClass(); - val currentSpec = obj.getSpecification(); + val currentSpec = obj.objSpec(); if(currentSpec.getCorrespondingClass().equals(requiredType)) { return obj; } diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/MmValueUtils.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/MmValueUtils.java index db26e3d5595..fb31ee6b155 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/MmValueUtils.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/MmValueUtils.java @@ -64,7 +64,7 @@ public String htmlStringForValueType( return ""; } - val spec = adapter.getSpecification(); + val spec = adapter.objSpec(); val valueFacet = spec.valueFacet().orElse(null); if(valueFacet==null) { return String.format("missing ValueFacet %s", spec.getCorrespondingClass()); @@ -125,7 +125,7 @@ private Optional<ValueFacet> valueFacet(final @Nullable ManagedObject valueObjec if(!ManagedObjects.isSpecified(valueObject)) { return Optional.empty(); } - return valueFacet(valueObject.getSpecification()); + return valueFacet(valueObject.objSpec()); } } diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/MmVisibilityUtils.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/MmVisibilityUtils.java index 57cd30a1375..bf6246f5a9c 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/MmVisibilityUtils.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/MmVisibilityUtils.java @@ -97,7 +97,7 @@ public static boolean isVisible( // a choices list could include a null (eg example in ToDoItems#choices1Categorized()); want to show as "visible" return true; } - val spec = adapter.getSpecification(); + val spec = adapter.objSpec(); if(spec.isEntity()) { if(MmEntityUtils.getEntityState(adapter).isTransientOrRemoved()) { return false; @@ -122,7 +122,7 @@ private static VisibilityContext createVisibleInteractionContext( return new ObjectVisibilityContext( InteractionHead.regular(objectAdapter), - objectAdapter.getSpecification().getFeatureIdentifier(), + objectAdapter.objSpec().getFeatureIdentifier(), interactionInitiatedBy, where, InteractionUtils.determineIfHiddenPolicyFrom(objectAdapter), diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/_InternalTitleUtil.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/_InternalTitleUtil.java index def034e61eb..e71afad5044 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/_InternalTitleUtil.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/_InternalTitleUtil.java @@ -42,7 +42,7 @@ String titleString(@NonNull final TitleRenderRequest titleRenderRequest) { return managedObject.getTitle(); } - val objSpec = managedObject.getSpecification(); + val objSpec = managedObject.objSpec(); return objSpec.isSingular() ? objectTitleString(titleRenderRequest) @@ -65,13 +65,13 @@ private String objectTitleString(@NonNull final TitleRenderRequest titleRenderRe if (managedObject.getPojo() instanceof String) { return (String) managedObject.getPojo(); } - val spec = managedObject.getSpecification(); + val spec = managedObject.objSpec(); return Optional.ofNullable(spec.getTitle(titleRenderRequest)) .orElseGet(()->getDefaultTitle(managedObject)); } private String getDefaultTitle(final ManagedObject managedObject) { - return "A" + (" " + managedObject.getSpecification().getSingularName()).toLowerCase(); + return "A" + (" " + managedObject.objSpec().getSingularName()).toLowerCase(); } private String formatAnyCardinalityAsTitle(@NonNull final ObjectSpecification objSpec, @NonNull final ManagedObject managedObject) { diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/_ManagedObjectEntityBookmarked.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/_ManagedObjectEntityBookmarked.java index 6e811d6cffc..28bb6a4d930 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/_ManagedObjectEntityBookmarked.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/_ManagedObjectEntityBookmarked.java @@ -83,7 +83,7 @@ public Object getPojo() { val entityState = entityFacet.getEntityState(pojo); if(!entityState.isPersistable()) { - throw _Exceptions.illegalState("not persistable %s", getSpecification()); + throw _Exceptions.illegalState("not persistable %s", objSpec()); } if(entityState.isAttached()) { return pojo; // is attached @@ -134,13 +134,13 @@ private Object refetchPojo(final EntityState entityState) { throw new ObjectNotFoundException("" + bookmark); } - _XrayEvent.event("Entity %s refetched from persistence.", getSpecification()); + _XrayEvent.event("Entity %s refetched from persistence.", objSpec()); return refetchedPojo; } private EntityFacet entityFacet() { - return getSpecification().entityFacetElseFail(); + return objSpec().entityFacetElseFail(); } @SuppressWarnings("deprecation") @@ -163,7 +163,7 @@ private Bookmark createBookmark() { "The persistence layer does not recognize given object %s, " + "meaning the object has no identifier that associates it with the persistence layer. " + "(most likely, because the object is detached, eg. was not persisted after being new-ed up)", - getSpecification()); + objSpec()); // in case of the exception getting swallowed, also write a log log.error(msg); diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/_ManagedObjectEntityHybrid.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/_ManagedObjectEntityHybrid.java index 5414dc0c02e..8b270c34d3f 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/_ManagedObjectEntityHybrid.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/_ManagedObjectEntityHybrid.java @@ -75,14 +75,14 @@ static MorphState valueOf(final EntityState entityState) { _ManagedObjectEntityHybrid( final @NonNull _ManagedObjectEntityTransient _transient) { - super(ManagedObject.Specialization.ENTITY, _transient.getSpecification()); + super(ManagedObject.Specialization.ENTITY, _transient.objSpec()); this.variant = _transient; this.morphState = MorphState.TRANSIENT; } _ManagedObjectEntityHybrid( final @NonNull _ManagedObjectEntityBookmarked bookmarked) { - super(ManagedObject.Specialization.ENTITY, bookmarked.getSpecification()); + super(ManagedObject.Specialization.ENTITY, bookmarked.objSpec()); this.variant = bookmarked; this.morphState = MorphState.BOOKMARKED; _Assert.assertTrue(bookmarked.getBookmark().isPresent(), @@ -152,7 +152,7 @@ public Object peekAtPojo() { protected boolean isInjectionPointsResolved() { // overriding the default for optimization, let the EntityFacet handle injection // as a side-effect potentially injects if required - return getSpecification().entityFacetElseFail() + return objSpec().entityFacetElseFail() .isInjectionPointsResolved(peekAtPojo()); } @@ -197,7 +197,7 @@ private void reassessVariant(final EntityState entityState, final Object pojo) { // morph into attached private void makeBookmarked(final Object pojo) { - val attached = new _ManagedObjectEntityBookmarked(getSpecification(), pojo, Optional.empty()); + val attached = new _ManagedObjectEntityBookmarked(objSpec(), pojo, Optional.empty()); this.variant = attached; _Assert.assertTrue(attached.getBookmark().isPresent(), ()->"bookmarked entity must have bookmark"); @@ -205,7 +205,7 @@ private void makeBookmarked(final Object pojo) { // morph into attached private void makeRemoved() { - val removed = new _ManagedObjectEntityRemoved(getSpecification()); + val removed = new _ManagedObjectEntityRemoved(objSpec()); this.variant = removed; } diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/_ManagedObjectEntityTransient.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/_ManagedObjectEntityTransient.java index 5d8a63b9b9d..b8ae9a283fc 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/_ManagedObjectEntityTransient.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/_ManagedObjectEntityTransient.java @@ -66,7 +66,7 @@ public Object peekAtPojo() { // -- HELPER private EntityFacet entityFacet() { - return getSpecification().entityFacetElseFail(); + return objSpec().entityFacetElseFail(); } } \ No newline at end of file diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/_ManagedObjectValue.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/_ManagedObjectValue.java index 2a7eb8ee0a4..38da84e774f 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/_ManagedObjectValue.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/_ManagedObjectValue.java @@ -66,7 +66,7 @@ public boolean isBookmarkMemoized() { // -- HELPER private ValueFacet<?> valueFacet() { - return getSpecification().valueFacetElseFail(); + return objSpec().valueFacetElseFail(); } private Bookmark createBookmark() { diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/_ManagedObjectViewmodel.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/_ManagedObjectViewmodel.java index d9df359dd97..aedf8c95c17 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/_ManagedObjectViewmodel.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/object/_ManagedObjectViewmodel.java @@ -88,7 +88,7 @@ private void replaceBookmark(final UnaryOperator<Bookmark> replacer) { } private Optional<Bookmark> createBookmark() { - return Optional.ofNullable(getSpecification().viewmodelFacetElseFail().serializeToBookmark(this)); + return Optional.ofNullable(objSpec().viewmodelFacetElseFail().serializeToBookmark(this)); } // -- REFRESH OPTIMIZATION diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/objectmanager/ObjectCreator.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/objectmanager/ObjectCreator.java index 67146c89853..7e78b604f3a 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/objectmanager/ObjectCreator.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/objectmanager/ObjectCreator.java @@ -79,10 +79,10 @@ public ManagedObject createObject(final ObjectSpecification spec) { val domainObject = ManagedObject.adaptSingular(spec, pojo); // initialize new object - domainObject.getSpecification().streamAssociations(MixedIn.EXCLUDED) + domainObject.objSpec().streamAssociations(MixedIn.EXCLUDED) .forEach(field->field.toDefault(domainObject)); - if (domainObject.getSpecification().isEntity()) { + if (domainObject.objSpec().isEntity()) { getPersistenceLifecyclePublisher().onPostCreate(domainObject); } diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/objectmanager/ObjectManager.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/objectmanager/ObjectManager.java index c00a523fc34..519f5872673 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/objectmanager/ObjectManager.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/objectmanager/ObjectManager.java @@ -67,7 +67,7 @@ default Optional<ObjectMemento> mementify(final @Nullable ManagedObject object) default ObjectMemento mementifyElseFail(final @NonNull ManagedObject object) { return object.getMemento() .orElseThrow(()-> - _Exceptions.unrecoverable("failed to create memento for %s", object.getSpecification())); + _Exceptions.unrecoverable("failed to create memento for %s", object.objSpec())); } //TODO why not use loadObject(bookmark) instead @@ -121,7 +121,7 @@ default Optional<ManagedObject> loadObject(final @Nullable Bookmark bookmark) { */ default Bookmark bookmark(final @NonNull ManagedObject managedObj) { return ManagedObjects.bookmark(managedObj) - .orElseGet(()->Bookmark.empty(managedObj.getLogicalType())); + .orElseGet(()->Bookmark.empty(managedObj.logicalType())); } /** * Introduced for de-serializing action parameter values from bookmarks and vice versa. diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/objectmanager/memento/ObjectMementoForScalar.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/objectmanager/memento/ObjectMementoForScalar.java index eb175b3c449..fbac3b4af05 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/objectmanager/memento/ObjectMementoForScalar.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/objectmanager/memento/ObjectMementoForScalar.java @@ -94,10 +94,10 @@ private ObjectMementoForScalar( private ObjectMementoForScalar(final @NonNull ManagedObject adapter) { - this.logicalType = adapter.getLogicalType(); + this.logicalType = adapter.logicalType(); this.title = MmTitleUtils.titleOf(adapter); - val spec = adapter.getSpecification(); + val spec = adapter.objSpec(); if(spec.isIdentifiable() || spec.isParented() ) { diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/postprocessors/allbutparam/authorization/AuthorizationFacetAbstract.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/postprocessors/allbutparam/authorization/AuthorizationFacetAbstract.java index b194d13039d..fdc24245b98 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/postprocessors/allbutparam/authorization/AuthorizationFacetAbstract.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/postprocessors/allbutparam/authorization/AuthorizationFacetAbstract.java @@ -51,7 +51,7 @@ public AuthorizationFacetAbstract( @Override public String hides(final VisibilityContext ic) { - if(ic.getHead().getOwner().getSpecification().isValue()) { + if(ic.getHead().getOwner().objSpec().isValue()) { return null; // never hide value-types } @@ -72,7 +72,7 @@ public String hides(final VisibilityContext ic) { @Override public Optional<VetoReason> disables(final UsabilityContext ic) { - if(ic.getHead().getOwner().getSpecification().isValue()) { + if(ic.getHead().getOwner().objSpec().isValue()) { return Optional.empty(); // never disable value-types } diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/services/title/TitleServiceDefault.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/services/title/TitleServiceDefault.java index 2acaa5f77e6..3fecb61a2b6 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/services/title/TitleServiceDefault.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/services/title/TitleServiceDefault.java @@ -70,7 +70,7 @@ public String titleOf(final Object domainObject) { // here we just mean NOT-ATTACHED (and not the concrete DETACHED entity state) return "[DETACHED]"; } else { - return objectAdapter.getSpecification().getTitle( + return objectAdapter.objSpec().getTitle( TitleRenderRequest.builder() .object(objectAdapter) .build()); @@ -91,7 +91,7 @@ public String iconNameOf(final Object domainObject) { return "unspecified"; } - return objectAdapter.getSpecification().getIconName(objectAdapter); + return objectAdapter.objSpec().getIconName(objectAdapter); } //-- HELPER diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/spec/feature/ObjectAction.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/spec/feature/ObjectAction.java index 35f99444883..665dd2fa241 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/spec/feature/ObjectAction.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/spec/feature/ObjectAction.java @@ -380,7 +380,7 @@ public static Optional<FaLayersProvider> cssClassFaFactoryFor( public static Stream<ObjectAction> streamTopBarActions( final ManagedObject adapter) { - val spec = adapter.getSpecification(); + val spec = adapter.objSpec(); return spec.streamRuntimeActions(MixedIn.INCLUDED) .filter(Predicates @@ -394,7 +394,7 @@ public static Stream<ObjectAction> findForAssociation( final ManagedObject adapter, final ObjectAssociation association) { - val spec = adapter.getSpecification(); + val spec = adapter.objSpec(); return spec.streamRuntimeActions(MixedIn.INCLUDED) .filter(Predicates.isSameLayoutGroupAs(association)) @@ -423,7 +423,7 @@ public static String friendlyNameFor( if(mixeeAdapter != null) { val mixinSpec = action.getDeclaringType(); - val ownerSpec = mixeeAdapter.getSpecification(); + val ownerSpec = mixeeAdapter.objSpec(); return ownerSpec.lookupMixedInMember(mixinSpec) .map(mixedInMember->mixedInMember.getFriendlyName(mixeeAdapter.asSupplier())) .orElseThrow(_Exceptions::unexpectedCodeReach); diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/specloader/specimpl/ObjectActionDefault.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/specloader/specimpl/ObjectActionDefault.java index 87b6bb27e05..a0b0a9a317c 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/specloader/specimpl/ObjectActionDefault.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/specloader/specimpl/ObjectActionDefault.java @@ -551,7 +551,7 @@ public void setupCommand( final InteractionHead head, final Can<ManagedObject> argumentAdapters) { - if(head.getOwner().getSpecification().isValue()) { + if(head.getOwner().objSpec().isValue()) { return; // do not record value type mixin actions } diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/specloader/specimpl/ObjectActionMixedIn.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/specloader/specimpl/ObjectActionMixedIn.java index 90eda5fb087..659eeee8422 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/specloader/specimpl/ObjectActionMixedIn.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/specloader/specimpl/ObjectActionMixedIn.java @@ -178,7 +178,7 @@ public ManagedObject execute( final ManagedObject owner = head.getOwner(); final ManagedObject target = mixinAdapterFor(mixinType, owner); - _Assert.assertEquals(target.getSpecification(), head.getTarget().getSpecification(), + _Assert.assertEquals(target.objSpec(), head.getTarget().objSpec(), "head has the wrong target (should be a mixed-in adapter, but is the mixee adapter)"); if(!interactionInitiatedBy.isPassThrough()) { diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/specloader/specimpl/ObjectSpecificationAbstract.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/specloader/specimpl/ObjectSpecificationAbstract.java index ce215161d2d..e60f806b3d6 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/specloader/specimpl/ObjectSpecificationAbstract.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/specloader/specimpl/ObjectSpecificationAbstract.java @@ -478,7 +478,7 @@ private void notifySubscribersIfEntity( @Override public String getIconName(final ManagedObject domainObject) { if(ManagedObjects.isSpecified(domainObject)) { - _Assert.assertEquals(domainObject.getSpecification(), this); + _Assert.assertEquals(domainObject.objSpec(), this); } return iconFacet != null ? iconFacet.iconName(domainObject) diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/specloader/specimpl/dflt/_AssociationsAsColumns.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/specloader/specimpl/dflt/_AssociationsAsColumns.java index 3bbd3e0277c..ca9fe2ff8b7 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/specloader/specimpl/dflt/_AssociationsAsColumns.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/specloader/specimpl/dflt/_AssociationsAsColumns.java @@ -62,7 +62,7 @@ public final Stream<ObjectAssociation> streamAssociationsForColumnRendering( // the type that has the properties and collections that make up this table's columns val elementClass = elementType.getCorrespondingClass(); - val parentSpecIfAny = parentObject.getSpecification(); + val parentSpecIfAny = parentObject.objSpec(); val assocById = _Maps.<String, ObjectAssociation>newLinkedHashMap(); diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/tabular/interactive/DataTableInteractive.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/tabular/interactive/DataTableInteractive.java index 393e402c30d..2857da80e2f 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/tabular/interactive/DataTableInteractive.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/tabular/interactive/DataTableInteractive.java @@ -225,7 +225,7 @@ public void clearToggleAll() { private boolean ignoreHidden(final ManagedObject adapter) { final InteractionResult visibleResult = InteractionUtils.isVisibleResult( - adapter.getSpecification(), + adapter.objSpec(), createVisibleInteractionContext(adapter)); return visibleResult.isNotVetoing(); } @@ -233,7 +233,7 @@ private boolean ignoreHidden(final ManagedObject adapter) { private VisibilityContext createVisibleInteractionContext(final ManagedObject objectAdapter) { return new ObjectVisibilityContext( InteractionHead.regular(objectAdapter), - objectAdapter.getSpecification().getFeatureIdentifier(), + objectAdapter.objSpec().getFeatureIdentifier(), InteractionInitiatedBy.USER, Where.ALL_TABLES, InteractionUtils.determineIfHiddenPolicyFrom(objectAdapter), diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/util/Facets.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/util/Facets.java index b827844c578..4abe0826cf6 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/util/Facets.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/util/Facets.java @@ -306,7 +306,7 @@ public OptionalInt multilineNumberOfLines(final ObjectFeature feature) { //XXX could be moved to ManagedObject directly public ManagedObject projected(final ManagedObject objectAdapter) { - return objectAdapter.getSpecification().lookupFacet(ProjectionFacet.class) + return objectAdapter.objSpec().lookupFacet(ProjectionFacet.class) .map(projectionFacet->projectionFacet.projected(objectAdapter)) .orElse(objectAdapter); } diff --git a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/util/snapshot/XmlSnapshot.java b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/util/snapshot/XmlSnapshot.java index 348bd77487c..c497e1bb1c6 100644 --- a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/util/snapshot/XmlSnapshot.java +++ b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/util/snapshot/XmlSnapshot.java @@ -206,7 +206,7 @@ private Place appendXml(final ManagedObject object) { log.debug("appendXml({})", log("obj", object)); } - final String fullyQualifiedClassName = object.getSpecification().getFullIdentifier(); + final String fullyQualifiedClassName = object.objSpec().getFullIdentifier(); schema.setUri(fullyQualifiedClassName); // derive URI from fully qualified name @@ -446,7 +446,7 @@ private boolean includeField(final Place place, final Vector<String> fieldNames, } // locate the field in the object's class - final ObjectSpecification nos = object.getSpecification(); + final ObjectSpecification nos = object.objSpec(); // HACK: really want a ObjectSpecification.hasField method to // check first. val field = nos.getAssociation(fieldName).orElse(null); @@ -628,7 +628,7 @@ Place objectToElement(final ManagedObject adapter) { log.debug("objectToElement({})", log("object", adapter)); } - final ObjectSpecification spec = adapter.getSpecification(); + final ObjectSpecification spec = adapter.objSpec(); if (log.isDebugEnabled()) { log.debug("objectToElement(NO): create element and causeway:title"); @@ -702,7 +702,7 @@ Place objectToElement(final ManagedObject adapter) { try { value = valueAssociation.get(adapter, InteractionInitiatedBy.PASS_THROUGH); - val valueSpec = value.getSpecification(); + val valueSpec = value.objSpec(); // XML causewayMetaModel.setAttributesForValue(xmlValueElement, valueSpec.getShortIdentifier()); diff --git a/core/metamodel/src/test/java/org/apache/causeway/core/metamodel/facets/object/recreatable/RecreatableObjectFacetFactoryTest.java b/core/metamodel/src/test/java/org/apache/causeway/core/metamodel/facets/object/recreatable/RecreatableObjectFacetFactoryTest.java index e9c7559a52e..d17c90c1d76 100644 --- a/core/metamodel/src/test/java/org/apache/causeway/core/metamodel/facets/object/recreatable/RecreatableObjectFacetFactoryTest.java +++ b/core/metamodel/src/test/java/org/apache/causeway/core/metamodel/facets/object/recreatable/RecreatableObjectFacetFactoryTest.java @@ -93,7 +93,7 @@ void viewModelInterfacePickedUpOnClassAndDefaultsToAlways() { val customerBookmark = viewModelFacet.serializeToBookmark(customer); val customerRecreated = viewModelFacet.instantiate( - customer.getSpecification(), Optional.of(customerBookmark)); + customer.objSpec(), Optional.of(customerBookmark)); assertEquals(customerPojo.getName(), ((Customer)(customerRecreated.getPojo())).getName()); } diff --git a/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/command/CommandExecutorServiceDefault.java b/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/command/CommandExecutorServiceDefault.java index 1cdc3dbf240..2e3939ff496 100644 --- a/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/command/CommandExecutorServiceDefault.java +++ b/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/command/CommandExecutorServiceDefault.java @@ -274,7 +274,7 @@ private static ObjectAction findObjectAction( final ManagedObject targetAdapter, final String logicalMemberIdentifier) throws RuntimeException { - val objectSpecification = targetAdapter.getSpecification(); + val objectSpecification = targetAdapter.objSpec(); // we use the local identifier because the fullyQualified version includes the class name. // that is a problem for us if the property is inherited, because it will be the class name of the declaring @@ -297,7 +297,7 @@ private static OneToOneAssociation findOneToOneAssociation( // superclass, rather than the concrete class of the target that we are inspecting here. val localPropertyId = localPartOf(logicalMemberIdentifier); - val objectSpecification = targetAdapter.getSpecification(); + val objectSpecification = targetAdapter.objSpec(); val property = findOneToOneAssociationElseNull(objectSpecification, localPropertyId); if(property == null) { diff --git a/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/executor/MemberExecutorServiceDefault.java b/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/executor/MemberExecutorServiceDefault.java index 7c868a04f9e..1bf634af145 100644 --- a/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/executor/MemberExecutorServiceDefault.java +++ b/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/executor/MemberExecutorServiceDefault.java @@ -193,7 +193,7 @@ private ManagedObject invokeActionInternally( }) .ifPresent(scalarNonEmpty->{ _Assert.assertTrue(scalarNonEmpty.getBookmark().isPresent(), ()->{ - var returnTypeSpec = scalarNonEmpty.getSpecification(); + var returnTypeSpec = scalarNonEmpty.objSpec(); var violation = returnTypeSpec.isEntity() ? MessageTemplate.ACTION_METHOD_RETURNING_TRANSIENT_ENTITY_NOT_ALLOWED : MessageTemplate.ACTION_METHOD_RETURNING_NON_BOOKMARKABLE_OBJECT_NOT_ALLOWED; diff --git a/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/menubars/bootstrap/MenuBarsServiceBootstrap.java b/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/menubars/bootstrap/MenuBarsServiceBootstrap.java index f1c5beb4da7..8ba6df21822 100644 --- a/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/menubars/bootstrap/MenuBarsServiceBootstrap.java +++ b/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/menubars/bootstrap/MenuBarsServiceBootstrap.java @@ -187,7 +187,7 @@ private BSMenuBars updateFacetsFromActionLayoutXml(final BSMenuBars menuBarsFrom .filter(this::isVisibleAdapterForMenu) .forEach(serviceAdapter->{ - val serviceSpec = serviceAdapter.getSpecification(); + val serviceSpec = serviceAdapter.objSpec(); serviceSpec.streamAnyActions(MixedIn.INCLUDED) .forEach(objectAction->{ @@ -288,7 +288,7 @@ private BSMenuBars menuBarsFromAnnotationsOnly() { } private boolean isVisibleAdapterForMenu(final ManagedObject objectAdapter) { - val spec = objectAdapter.getSpecification(); + val spec = objectAdapter.objSpec(); if (spec.isHidden()) { // however, this isn't the same as HiddenObjectFacet, so doesn't filter out // services that have an imperative hidden() method. @@ -346,7 +346,7 @@ private static List<BSMenu> buildMenuItemsFromAnnotationsOnly( val objectAction = serviceAndAction.getObjectAction(); //val service = serviceAndAction.getServiceAdapter(); - val logicalTypeName = serviceAndAction.getServiceAdapter().getSpecification().getLogicalTypeName(); + val logicalTypeName = serviceAndAction.getServiceAdapter().objSpec().getLogicalTypeName(); val actionLayoutData = new ServiceActionLayoutData(logicalTypeName, objectAction.getId()); val named = objectAction @@ -383,7 +383,7 @@ private static Set<String> serviceNamesInOrder( // first, order as defined in causeway.properties for (ManagedObject serviceAdapter : serviceAdapters) { - val serviceSpec = serviceAdapter.getSpecification(); + val serviceSpec = serviceAdapter.objSpec(); // assuming services always provide singular NounForm String serviceName = serviceSpec.getSingularName(); serviceNameOrder.add(serviceName); @@ -434,7 +434,7 @@ private Stream<ServiceAndAction> streamServiceActions( final ManagedObject serviceAdapter, final ActionScope actionType) { - final ObjectSpecification serviceSpec = serviceAdapter.getSpecification(); + final ObjectSpecification serviceSpec = serviceAdapter.objSpec(); final Stream<ObjectAction> objectActions = serviceSpec.streamDeclaredActions(actionType, MixedIn.INCLUDED); return objectActions @@ -454,7 +454,7 @@ private Stream<ServiceAndAction> streamServiceActions( private static Predicate<ManagedObject> with(final DomainServiceLayout.MenuBar menuBar) { return (final ManagedObject input) -> { final DomainServiceLayoutFacet facet = - input.getSpecification().getFacet(DomainServiceLayoutFacet.class); + input.objSpec().getFacet(DomainServiceLayoutFacet.class); return facet != null && facet.getMenuBar() == menuBar; }; } diff --git a/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/publish/LifecycleCallbackNotifier.java b/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/publish/LifecycleCallbackNotifier.java index 14ffa89acfa..7fd9a4f2546 100644 --- a/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/publish/LifecycleCallbackNotifier.java +++ b/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/publish/LifecycleCallbackNotifier.java @@ -122,7 +122,7 @@ private void dispatch( final Class<? extends LifecycleEventFacet> lifecycleEventFacetClass) { ManagedObjects.asSpecified(entity) - .map(ManagedObject::getSpecification) + .map(ManagedObject::objSpec) .ifPresent(spec->{ spec.lookupFacet(callbackFacetType) diff --git a/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/wrapper/InvocationHandlerforAsyncWrapRegular.java b/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/wrapper/InvocationHandlerforAsyncWrapRegular.java index 33419c01657..3e9e8cf5ca4 100644 --- a/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/wrapper/InvocationHandlerforAsyncWrapRegular.java +++ b/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/wrapper/InvocationHandlerforAsyncWrapRegular.java @@ -44,7 +44,7 @@ public InvocationHandlerforAsyncWrapRegular( final AsyncControl<R> asyncControl, final @NonNull T targetPojo, final ManagedObject targetAdapter) { - super(metaModelContext, interactionIdGenerator, commonExecutorService, asyncControl, targetPojo, targetAdapter.getSpecification()); + super(metaModelContext, interactionIdGenerator, commonExecutorService, asyncControl, targetPojo, targetAdapter.objSpec()); this.targetAdapter = targetAdapter; } @@ -82,7 +82,7 @@ MemberAndTarget locateMemberAndTarget( final _GenericResolver.ResolvedMethod method, final ManagedObject targetAdapter) { - final var objectMember = targetAdapter.getSpecification().getMember(method).orElse(null); + final var objectMember = targetAdapter.objSpec().getMember(method).orElse(null); if(objectMember == null) { return MemberAndTarget.notFound(); } diff --git a/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/wrapper/WrapperFactoryDefault.java b/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/wrapper/WrapperFactoryDefault.java index f0015157962..8e070d629b5 100644 --- a/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/wrapper/WrapperFactoryDefault.java +++ b/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/wrapper/WrapperFactoryDefault.java @@ -280,7 +280,7 @@ public <T,R> T asyncWrap( final AsyncControl<R> asyncControl) { val targetAdapter = adaptAndGuardAgainstWrappingNotSupported(targetPojo); - final var targetSpecification = targetAdapter.getSpecification(); + final var targetSpecification = targetAdapter.objSpec(); if(targetSpecification.isMixin()) { throw _Exceptions.illegalArgument("cannot wrap a mixin instance directly, " + "use WrapperFactory.asyncWrapMixin(...) instead"); @@ -356,7 +356,7 @@ private ManagedObject adaptAndGuardAgainstWrappingNotSupported( final var adapter = getObjectManager().adapt(domainObject); if(ManagedObjects.isNullOrUnspecifiedOrEmpty(adapter) - || !adapter.getSpecification().getBeanSort().isWrappingSupported()) { + || !adapter.objSpec().getBeanSort().isWrappingSupported()) { throw _Exceptions.illegalArgument("Cannot wrap an object of type %s", domainObject.getClass().getName()); } diff --git a/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/wrapper/handlers/DelegatingInvocationHandlerAbstract.java b/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/wrapper/handlers/DelegatingInvocationHandlerAbstract.java index 5575100b92a..10586a2be6c 100644 --- a/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/wrapper/handlers/DelegatingInvocationHandlerAbstract.java +++ b/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/wrapper/handlers/DelegatingInvocationHandlerAbstract.java @@ -71,7 +71,7 @@ protected ManagedObject adaptAndGuardAgainstWrappingNotSupported(final Object do } val adapter = metaModelContext.getObjectManager().adapt(domainObject); if(ManagedObjects.isNullOrUnspecifiedOrEmpty(adapter) - || !adapter.getSpecification().getBeanSort().isWrappingSupported()) { + || !adapter.objSpec().getBeanSort().isWrappingSupported()) { throw _Exceptions.illegalArgument("Cannot wrap an object of type %s", domainObject.getClass().getName()); } diff --git a/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/wrapper/handlers/DomainObjectInvocationHandler.java b/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/wrapper/handlers/DomainObjectInvocationHandler.java index 49061465dfb..030e7cd69cd 100644 --- a/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/wrapper/handlers/DomainObjectInvocationHandler.java +++ b/core/runtimeservices/src/main/java/org/apache/causeway/core/runtimeservices/wrapper/handlers/DomainObjectInvocationHandler.java @@ -294,7 +294,7 @@ private static ObjectMember determineMixinMember( if(domainObjectAdapter == null) { return null; } - val specification = domainObjectAdapter.getSpecification(); + val specification = domainObjectAdapter.objSpec(); val objectActions = specification.streamAnyActions(MixedIn.INCLUDED); val objectAssociations = specification.streamAssociations(MixedIn.INCLUDED); @@ -324,7 +324,7 @@ private boolean isEnhancedEntityMethod(final Method method) { private Object handleTitleMethod(final ManagedObject targetAdapter) { - val targetNoSpec = targetAdapter.getSpecification(); + val targetNoSpec = targetAdapter.objSpec(); val titleContext = targetNoSpec .createTitleInteractionContext(targetAdapter, InteractionInitiatedBy.FRAMEWORK); val titleEvent = titleContext.createInteractionEvent(); @@ -343,7 +343,7 @@ private Object handleSaveMethod( }); - val spec = targetAdapter.getSpecification(); + val spec = targetAdapter.objSpec(); if(spec.isEntity()) { return runExecutionTask(proxyObject, ()->{ MmEntityUtils.persistInCurrentTransaction(targetAdapter); diff --git a/core/runtimeservices/src/test/java/org/apache/causeway/core/runtimeservices/menubars/bootstrap/MenuBarsServiceBSTest.java b/core/runtimeservices/src/test/java/org/apache/causeway/core/runtimeservices/menubars/bootstrap/MenuBarsServiceBSTest.java index 07336911326..8c2b40cd4dd 100644 --- a/core/runtimeservices/src/test/java/org/apache/causeway/core/runtimeservices/menubars/bootstrap/MenuBarsServiceBSTest.java +++ b/core/runtimeservices/src/test/java/org/apache/causeway/core/runtimeservices/menubars/bootstrap/MenuBarsServiceBSTest.java @@ -77,7 +77,7 @@ protected void afterSetUp() { .anyMatch(bean->bean.getBeanClass().equals(Bar.class))); assertTrue(getMetaModelContext().streamServiceAdapters() - .anyMatch(domainObject->domainObject.getSpecification().getCorrespondingClass().equals(Bar.class))); + .anyMatch(domainObject->domainObject.objSpec().getCorrespondingClass().equals(Bar.class))); } @Test diff --git a/persistence/commons/src/main/java/org/apache/causeway/persistence/commons/integration/changetracking/EntityChangeTrackerDefault.java b/persistence/commons/src/main/java/org/apache/causeway/persistence/commons/integration/changetracking/EntityChangeTrackerDefault.java index 4a18e7a56a1..997e1e54515 100644 --- a/persistence/commons/src/main/java/org/apache/causeway/persistence/commons/integration/changetracking/EntityChangeTrackerDefault.java +++ b/persistence/commons/src/main/java/org/apache/causeway/persistence/commons/integration/changetracking/EntityChangeTrackerDefault.java @@ -313,7 +313,7 @@ private boolean isEntityExcludedForChangePublishing(final ManagedObject entity) return true; } - if(!EntityChangePublishingFacet.isPublishingEnabled(entity.getSpecification())) { + if(!EntityChangePublishingFacet.isPublishingEnabled(entity.objSpec())) { return true; // ignore entities that are not enabled for entity change publishing } diff --git a/persistence/commons/src/main/java/org/apache/causeway/persistence/commons/integration/changetracking/_Xray.java b/persistence/commons/src/main/java/org/apache/causeway/persistence/commons/integration/changetracking/_Xray.java index 558cade3348..4bba92c97aa 100644 --- a/persistence/commons/src/main/java/org/apache/causeway/persistence/commons/integration/changetracking/_Xray.java +++ b/persistence/commons/src/main/java/org/apache/causeway/persistence/commons/integration/changetracking/_Xray.java @@ -108,7 +108,7 @@ private static void addSequence( ManagedObjects.isNullOrUnspecifiedOrEmpty(entity) ? "<empty>" : String.format("%s:\n%s", - entity.getSpecification().getLogicalTypeName(), + entity.objSpec().getLogicalTypeName(), "" + entity.getPojo())); _XrayEvent.event(enteringLabel); diff --git a/persistence/commons/src/main/java/org/apache/causeway/persistence/commons/integration/version/EntityVersionAccessorDefault.java b/persistence/commons/src/main/java/org/apache/causeway/persistence/commons/integration/version/EntityVersionAccessorDefault.java index cfa705993b5..8f6fe5169d5 100644 --- a/persistence/commons/src/main/java/org/apache/causeway/persistence/commons/integration/version/EntityVersionAccessorDefault.java +++ b/persistence/commons/src/main/java/org/apache/causeway/persistence/commons/integration/version/EntityVersionAccessorDefault.java @@ -40,7 +40,7 @@ public class EntityVersionAccessorDefault implements EntityVersionAccessor { @Override public Object versionOf(Object domainObject) { ManagedObject managedObject = objectManager.adapt(domainObject); - EntityFacet facet = managedObject.getSpecification().getFacet(EntityFacet.class); + EntityFacet facet = managedObject.objSpec().getFacet(EntityFacet.class); if (facet != null) { return facet.versionOf(domainObject); } diff --git a/persistence/jdo/datanucleus/src/main/java/org/apache/causeway/persistence/jdo/datanucleus/changetracking/_Utils.java b/persistence/jdo/datanucleus/src/main/java/org/apache/causeway/persistence/jdo/datanucleus/changetracking/_Utils.java index c8ecb8eb96c..7e185b17820 100644 --- a/persistence/jdo/datanucleus/src/main/java/org/apache/causeway/persistence/jdo/datanucleus/changetracking/_Utils.java +++ b/persistence/jdo/datanucleus/src/main/java/org/apache/causeway/persistence/jdo/datanucleus/changetracking/_Utils.java @@ -58,7 +58,7 @@ ManagedObject adaptEntity( val objectManager = mmc.getObjectManager(); val entity = objectManager.adapt(entityPojo); - _Assert.assertTrue(entity.getSpecification().isEntity()); + _Assert.assertTrue(entity.objSpec().isEntity()); return entity; } diff --git a/regressiontests/base/src/main/java/org/apache/causeway/testdomain/util/interaction/DomainObjectTesterFactory.java b/regressiontests/base/src/main/java/org/apache/causeway/testdomain/util/interaction/DomainObjectTesterFactory.java index 36dd3349322..b7108c5b044 100644 --- a/regressiontests/base/src/main/java/org/apache/causeway/testdomain/util/interaction/DomainObjectTesterFactory.java +++ b/regressiontests/base/src/main/java/org/apache/causeway/testdomain/util/interaction/DomainObjectTesterFactory.java @@ -111,7 +111,7 @@ public <T> ActionTester<T> actionTesterForSpecificInteraction( final @NonNull ActionInteraction actionInteraction) { val managedAction = actionInteraction.getManagedActionElseFail(); assertEquals(domainObjectType, - managedAction.getOwner().getSpecification().getCorrespondingClass()); + managedAction.getOwner().objSpec().getCorrespondingClass()); val actionTester = getServiceInjector().injectServicesInto( new ActionTester<>(domainObjectType, actionInteraction, managedAction)); actionTester.init(); @@ -623,7 +623,7 @@ public DataTableTester tableTester( @SuppressWarnings("unchecked") static void updatePojo(final ManagedValue managedValue, final UnaryOperator replacer) { managedValue.update(v->ManagedObject.adaptSingular( - v.getSpecification(), + v.objSpec(), replacer.apply(v.getPojo()))); } diff --git a/regressiontests/persistence-jpa/src/test/java/org/apache/causeway/testdomain/persistence/jpa/entitylifecycle/JpaGeneratedLongIdEntityLifecycleTest.java b/regressiontests/persistence-jpa/src/test/java/org/apache/causeway/testdomain/persistence/jpa/entitylifecycle/JpaGeneratedLongIdEntityLifecycleTest.java index 2fb06977d4a..4f295c9af10 100644 --- a/regressiontests/persistence-jpa/src/test/java/org/apache/causeway/testdomain/persistence/jpa/entitylifecycle/JpaGeneratedLongIdEntityLifecycleTest.java +++ b/regressiontests/persistence-jpa/src/test/java/org/apache/causeway/testdomain/persistence/jpa/entitylifecycle/JpaGeneratedLongIdEntityLifecycleTest.java @@ -76,7 +76,7 @@ void detached_shouldBeProperlyDetected() { val entity = objectManager.adapt( repository.detachedEntity(new JpaEntityGeneratedLongId("test"))); - assertTrue(entity.getSpecification().isEntity()); + assertTrue(entity.objSpec().isEntity()); assertEquals( EntityState.TRANSIENT_OR_REMOVED, MmEntityUtils.getEntityState(entity)); diff --git a/regressiontests/persistence-jpa/src/test/java/org/apache/causeway/testdomain/persistence/jpa/entitylifecycle/JpaNonGeneratedStringIdEntityLifecycleTest.java b/regressiontests/persistence-jpa/src/test/java/org/apache/causeway/testdomain/persistence/jpa/entitylifecycle/JpaNonGeneratedStringIdEntityLifecycleTest.java index da1a19dbbd0..3a59333c10c 100644 --- a/regressiontests/persistence-jpa/src/test/java/org/apache/causeway/testdomain/persistence/jpa/entitylifecycle/JpaNonGeneratedStringIdEntityLifecycleTest.java +++ b/regressiontests/persistence-jpa/src/test/java/org/apache/causeway/testdomain/persistence/jpa/entitylifecycle/JpaNonGeneratedStringIdEntityLifecycleTest.java @@ -76,7 +76,7 @@ void detached_shouldBeProperlyDetected() { val entity = objectManager.adapt( repository.detachedEntity(new JpaEntityNonGeneratedStringId("test"))); - assertTrue(entity.getSpecification().isEntity()); + assertTrue(entity.objSpec().isEntity()); assertEquals( EntityState.TRANSIENT_OR_REMOVED, MmEntityUtils.getEntityState(entity)); diff --git a/regressiontests/value/src/test/java/org/apache/causeway/testdomain/value/ActionInteractionProbeImpl.java b/regressiontests/value/src/test/java/org/apache/causeway/testdomain/value/ActionInteractionProbeImpl.java index 029d5e84462..10c87ea7efd 100644 --- a/regressiontests/value/src/test/java/org/apache/causeway/testdomain/value/ActionInteractionProbeImpl.java +++ b/regressiontests/value/src/test/java/org/apache/causeway/testdomain/value/ActionInteractionProbeImpl.java @@ -70,7 +70,7 @@ public void testCommandWithNonEmptyArg( val parameterRecorded = valueMarshaller.recoverParameterFrom(paramId, parameterRecordedDto); assertNotNull(parameterRecorded); - assertEquals(valueType, parameterRecorded.getSpecification().getCorrespondingClass(), ()-> + assertEquals(valueType, parameterRecorded.objSpec().getCorrespondingClass(), ()-> String.format("command value parsing type mismatch '%s'", _Utils.valueDtoToXml(parameterRecordedDto))); @@ -102,7 +102,7 @@ public void testCommandWithEmptyArg( val parameterRecorded = valueMarshaller.recoverParameterFrom(paramId, parameterRecordedDto); assertNotNull(parameterRecorded); - assertEquals(valueType, parameterRecorded.getSpecification().getCorrespondingClass(), ()-> + assertEquals(valueType, parameterRecorded.objSpec().getCorrespondingClass(), ()-> String.format("command value parsing type mismatch '%s'", _Utils.valueDtoToXml(parameterRecordedDto))); diff --git a/regressiontests/value/src/test/java/org/apache/causeway/testdomain/value/PropertyInteractionProbeImpl.java b/regressiontests/value/src/test/java/org/apache/causeway/testdomain/value/PropertyInteractionProbeImpl.java index 4e12901f1a9..864a168dc6d 100644 --- a/regressiontests/value/src/test/java/org/apache/causeway/testdomain/value/PropertyInteractionProbeImpl.java +++ b/regressiontests/value/src/test/java/org/apache/causeway/testdomain/value/PropertyInteractionProbeImpl.java @@ -237,7 +237,7 @@ public void testCommand( val newValueRecorded = valueMarshaller.recoverPropertyFrom(propertyDto); assertNotNull(newValueRecorded); - assertEquals(valueType, newValueRecorded.getSpecification().getCorrespondingClass(), ()-> + assertEquals(valueType, newValueRecorded.objSpec().getCorrespondingClass(), ()-> String.format("command value parsing type mismatch '%s'", _Utils.valueDtoToXml(newValueRecordedDto))); diff --git a/regressiontests/viewers-common/src/test/java/org/apache/causeway/testdomain/viewers/common/wkt/InteractionTestWkt.java b/regressiontests/viewers-common/src/test/java/org/apache/causeway/testdomain/viewers/common/wkt/InteractionTestWkt.java index fe138767f41..eaa4e175cd3 100644 --- a/regressiontests/viewers-common/src/test/java/org/apache/causeway/testdomain/viewers/common/wkt/InteractionTestWkt.java +++ b/regressiontests/viewers-common/src/test/java/org/apache/causeway/testdomain/viewers/common/wkt/InteractionTestWkt.java @@ -123,7 +123,7 @@ void shouldHaveARequestCycle() { @Test void propertyModels_shouldBeInSyncWithInteractionAPI() { - val objectSpec = domainObject.getSpecification(); + val objectSpec = domainObject.objSpec(); val entityModel = UiObjectWkt.ofAdapter(domainObject); assertEquals(domainObject.getBookmark().get(), entityModel.getOwnerBookmark()); diff --git a/viewers/commons/model/src/main/java/org/apache/causeway/viewer/commons/model/action/UiActionForm.java b/viewers/commons/model/src/main/java/org/apache/causeway/viewer/commons/model/action/UiActionForm.java index 81eb4f94bf1..4c4f876757b 100644 --- a/viewers/commons/model/src/main/java/org/apache/causeway/viewer/commons/model/action/UiActionForm.java +++ b/viewers/commons/model/src/main/java/org/apache/causeway/viewer/commons/model/action/UiActionForm.java @@ -62,7 +62,7 @@ default Consent getVisibilityConsent() { } // check whether action owner type is hidden - if (getActionOwner().getSpecification().isHidden()) { + if (getActionOwner().objSpec().isHidden()) { return Veto.DEFAULT; } diff --git a/viewers/commons/model/src/main/java/org/apache/causeway/viewer/commons/model/layout/UiGridLayout.java b/viewers/commons/model/src/main/java/org/apache/causeway/viewer/commons/model/layout/UiGridLayout.java index f33c465c619..33d8e9d2a7f 100644 --- a/viewers/commons/model/src/main/java/org/apache/causeway/viewer/commons/model/layout/UiGridLayout.java +++ b/viewers/commons/model/src/main/java/org/apache/causeway/viewer/commons/model/layout/UiGridLayout.java @@ -81,7 +81,7 @@ public <C, T> void visit(final Visitor<C, T> visitor) { } private Optional<BSGrid> initGridData() { - return Facets.bootstrapGrid(managedObject.getSpecification(), managedObject) + return Facets.bootstrapGrid(managedObject.objSpec(), managedObject) .map(this::attachAssociatedActions); } @@ -91,7 +91,7 @@ private BSGrid attachAssociatedActions(final BSGrid bSGrid) { val primedActions = bSGrid.getAllActionsById(); final Set<String> actionIdsAlreadyAdded = _Sets.newHashSet(primedActions.keySet()); - managedObject.getSpecification().streamProperties(MixedIn.INCLUDED) + managedObject.objSpec().streamProperties(MixedIn.INCLUDED) .forEach(property->{ Optional.ofNullable( bSGrid.getAllPropertiesById().get(property.getId())) diff --git a/viewers/commons/services/src/main/java/org/apache/causeway/viewer/commons/services/menu/MenuUiServiceDefault.java b/viewers/commons/services/src/main/java/org/apache/causeway/viewer/commons/services/menu/MenuUiServiceDefault.java index 7b34e4499c0..3fc24098800 100644 --- a/viewers/commons/services/src/main/java/org/apache/causeway/viewer/commons/services/menu/MenuUiServiceDefault.java +++ b/viewers/commons/services/src/main/java/org/apache/causeway/viewer/commons/services/menu/MenuUiServiceDefault.java @@ -81,7 +81,7 @@ public void buildMenuItems( private List<String> select(final DomainServiceLayout.MenuBar menuBarSelect) { return metaModelContext.streamServiceAdapters() .filter(with(menuBarSelect)) - .map(ManagedObject::getSpecification) + .map(ManagedObject::objSpec) .map(ObjectSpecification::getLogicalTypeName) .collect(Collectors.toList()); } @@ -89,7 +89,7 @@ private List<String> select(final DomainServiceLayout.MenuBar menuBarSelect) { private static Predicate<ManagedObject> with(final DomainServiceLayout.MenuBar menuBarSelect) { return (final ManagedObject adapter) -> - Facets.domainServiceLayoutMenuBar(adapter.getSpecification()) + Facets.domainServiceLayoutMenuBar(adapter.objSpec()) .orElse(DomainServiceLayout.MenuBar.PRIMARY) .equals(menuBarSelect); } diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/common/query/meta/CommonMetaFetcher.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/common/query/meta/CommonMetaFetcher.java index 480f4adeb5a..ec768402daa 100644 --- a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/common/query/meta/CommonMetaFetcher.java +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/common/query/meta/CommonMetaFetcher.java @@ -68,7 +68,7 @@ public String version() { return managedObject() .map(managedObject -> { val domainPojo = managedObject.getPojo(); - val entityFacet = managedObject.getSpecification().getFacet(EntityFacet.class); + val entityFacet = managedObject.objSpec().getFacet(EntityFacet.class); if (entityFacet != null) { val object = entityFacet.versionOf(domainPojo); return object != null ? object.toString() : null; @@ -91,7 +91,7 @@ public String title() { public String cssClass() { return managedObject() .map(managedObject -> { - val facet = managedObject.getSpecification().getFacet(CssClassFacet.class); + val facet = managedObject.objSpec().getFacet(CssClassFacet.class); return facet != null ? facet.cssClass(managedObject) : null; }) .orElse(null); @@ -100,7 +100,7 @@ public String cssClass() { public String layout() { return managedObject() .map(managedObject -> { - val facet = managedObject.getSpecification().getFacet(LayoutFacet.class); + val facet = managedObject.objSpec().getFacet(LayoutFacet.class); return facet != null ? facet.layout(managedObject) : null; }) .orElse(null); diff --git a/viewers/graphql/viewer/src/main/java/org/apache/causeway/viewer/graphql/viewer/controller/ResourceController.java b/viewers/graphql/viewer/src/main/java/org/apache/causeway/viewer/graphql/viewer/controller/ResourceController.java index aceca7cd25b..54385476e80 100644 --- a/viewers/graphql/viewer/src/main/java/org/apache/causeway/viewer/graphql/viewer/controller/ResourceController.java +++ b/viewers/graphql/viewer/src/main/java/org/apache/causeway/viewer/graphql/viewer/controller/ResourceController.java @@ -194,13 +194,13 @@ public ResponseEntity<byte[]> icon( @Nullable private static Grid gridOf(ManagedObject managedObject) { - val facet = managedObject.getSpecification().getFacet(GridFacet.class); + val facet = managedObject.objSpec().getFacet(GridFacet.class); return facet != null ? facet.getGrid(managedObject) : null; } private Optional<Object> valueOfProperty(String logicalTypeName, String id, String propertyId) { return lookup(logicalTypeName, id) - .map(managedObject -> ManagedObjectAndPropertyIfAny.of(managedObject, managedObject.getSpecification().getProperty(propertyId))) + .map(managedObject -> ManagedObjectAndPropertyIfAny.of(managedObject, managedObject.objSpec().getProperty(propertyId))) .filter(ManagedObjectAndPropertyIfAny::isPropertyPresent) .map(ManagedObjectAndProperty::of) .map(ManagedObjectAndProperty::value) diff --git a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/DomainObjectReprRenderer.java b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/DomainObjectReprRenderer.java index 8809e110aeb..71f866d51e5 100644 --- a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/DomainObjectReprRenderer.java +++ b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/DomainObjectReprRenderer.java @@ -152,7 +152,7 @@ public DomainObjectReprRenderer with(final ManagedObject objectAdapter) { .newLinkToBuilder( getResourceContext(), Rel.DOMAIN_TYPE, - objectAdapter.getSpecification()) + objectAdapter.objSpec()) .build() .getString("href"); addMediaTypeParams(X_RO_DOMAIN_TYPE, domainTypeHref); @@ -166,7 +166,7 @@ public JsonRepresentation render() { return null; } - final boolean isService = objectAdapter.getSpecification().isInjectable(); + final boolean isService = objectAdapter.objSpec().isInjectable(); if (!(mode.isArgs())) { @@ -189,7 +189,7 @@ public JsonRepresentation render() { // serviceId or instance Id if (isService) { - representation.mapPutString("serviceId", objectAdapter.getSpecification().getLogicalTypeName()); + representation.mapPutString("serviceId", objectAdapter.objSpec().getLogicalTypeName()); } else { oidIfAny.ifPresent(oid->{ Optional.ofNullable(oid.getLogicalTypeName()) @@ -225,7 +225,7 @@ public JsonRepresentation render() { getExtensions().mapPutBoolean("isPersistent", ManagedObjects.isIdentifiable(objectAdapter)); if(isService) { - Facets.domainServiceLayoutMenuBar(objectAdapter.getSpecification()) + Facets.domainServiceLayoutMenuBar(objectAdapter.objSpec()) .ifPresent(menuBar-> getExtensions().mapPut("menuBar", menuBar)); @@ -250,12 +250,12 @@ private void addLinkToSelf() { } private void addLinkToDescribedBy() { - final JsonRepresentation link = DomainTypeReprRenderer.newLinkToBuilder(getResourceContext(), Rel.DESCRIBEDBY, objectAdapter.getSpecification()).build(); + final JsonRepresentation link = DomainTypeReprRenderer.newLinkToBuilder(getResourceContext(), Rel.DESCRIBEDBY, objectAdapter.objSpec()).build(); final LinkFollowSpecs linkFollower = getLinkFollowSpecs().follow("links"); if (linkFollower.matches(link)) { final DomainTypeReprRenderer renderer = new DomainTypeReprRenderer(getResourceContext(), linkFollower, JsonRepresentation.newMap()); - renderer.with(objectAdapter.getSpecification()); + renderer.with(objectAdapter.objSpec()); link.mapPutJsonRepresentation("value", renderer.render()); } getLinks().arrayAdd(link); @@ -283,7 +283,7 @@ private void addLinkToUp() { private DomainObjectReprRenderer withMembers(final ManagedObject objectAdapter) { final JsonRepresentation appendTo = mode.isUpdatePropertiesLinkArgs() ? representation : JsonRepresentation.newMap(); - final List<ObjectAssociation> associations = objectAdapter.getSpecification() + final List<ObjectAssociation> associations = objectAdapter.objSpec() .streamAssociations(MixedIn.INCLUDED) .collect(Collectors.toList()); @@ -295,7 +295,7 @@ private DomainObjectReprRenderer withMembers(final ManagedObject objectAdapter) } if (mode.isRegular()) { - final Stream<ObjectAction> actions = objectAdapter.getSpecification() + final Stream<ObjectAction> actions = objectAdapter.objSpec() .streamAnyActions(MixedIn.INCLUDED); addActions(objectAdapter, actions, appendTo); @@ -407,7 +407,7 @@ private void addPersistLinkIfTransientAndPersistable() { new DomainObjectReprRenderer(getResourceContext(), null, JsonRepresentation.newMap()); final JsonRepresentation domainObjectRepr = renderer.with(objectAdapter).asPersistLinkArguments().render(); - final String domainType = objectAdapter.getSpecification().getLogicalTypeName(); + final String domainType = objectAdapter.objSpec().getLogicalTypeName(); final LinkBuilder persistLinkBuilder = LinkBuilder.newBuilder(getResourceContext(), Rel.PERSIST.getName(), RepresentationType.DOMAIN_OBJECT, "objects/%s", domainType).withHttpMethod(RestfulHttpMethod.POST).withArguments(domainObjectRepr); getLinks().arrayAdd(persistLinkBuilder.build()); } @@ -436,7 +436,7 @@ private void addUpdatePropertiesLinkIfRequired() { if (!ManagedObjects.isIdentifiable(objectAdapter)) { return; } - final boolean isService = objectAdapter.getSpecification().isInjectable(); + final boolean isService = objectAdapter.objSpec().isInjectable(); if(isService) { return; } @@ -459,7 +459,7 @@ public static Object valueOrRef( final JsonValueEncoderService jsonValueEncoder, final ManagedObject domainObject) { - val spec = domainObject.getSpecification(); + val spec = domainObject.objSpec(); if(spec.isValue()) { val context2 = JsonValueConverter.Context.of(objectFeature, context.config().isSuppressMemberExtensions()); return jsonValueEncoder.asObject(domainObject, context2); diff --git a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/DomainServiceLinkTo.java b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/DomainServiceLinkTo.java index 38898374565..4ffd61f5966 100644 --- a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/DomainServiceLinkTo.java +++ b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/DomainServiceLinkTo.java @@ -28,7 +28,7 @@ public class DomainServiceLinkTo extends DomainObjectLinkTo { @Override public ObjectAdapterLinkTo with(final ManagedObject objectAdapter) { - serviceId = objectAdapter.getSpecification().getLogicalTypeName(); + serviceId = objectAdapter.objSpec().getLogicalTypeName(); return super.with(objectAdapter); } diff --git a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/ListReprRenderer.java b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/ListReprRenderer.java index 02ce3e88928..9f7f90538a6 100644 --- a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/ListReprRenderer.java +++ b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/ListReprRenderer.java @@ -57,7 +57,7 @@ public ListReprRenderer usingLinkToBuilder(final ObjectAdapterLinkTo objectAdapt public ListReprRenderer with(final Stream<ManagedObject> objectAdapters) { this.objectAdapters = objectAdapters!=null ? objectAdapters - .filter(adapter->!adapter.getSpecification().isHidden()) + .filter(adapter->!adapter.objSpec().isHidden()) .collect(Collectors.toList()) : null; return this; diff --git a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/ObjectActionReprRenderer.java b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/ObjectActionReprRenderer.java index a41f818a0ee..6d67641ed96 100644 --- a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/ObjectActionReprRenderer.java +++ b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/ObjectActionReprRenderer.java @@ -197,7 +197,7 @@ protected void addLinksToFormalDomainModel() { if(resourceContext.config().isSuppressDescribedByLinks()) { return; } - final JsonRepresentation link = ActionDescriptionReprRenderer.newLinkToBuilder(resourceContext, Rel.DESCRIBEDBY, objectAdapter.getSpecification(), objectMember).build(); + final JsonRepresentation link = ActionDescriptionReprRenderer.newLinkToBuilder(resourceContext, Rel.DESCRIBEDBY, objectAdapter.objSpec(), objectMember).build(); getLinks().arrayAdd(link); } diff --git a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/ObjectAndActionInvocation.java b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/ObjectAndActionInvocation.java index 46cc377d2ed..d046d238f7a 100644 --- a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/ObjectAndActionInvocation.java +++ b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/ObjectAndActionInvocation.java @@ -78,7 +78,7 @@ public ActionResultRepresentation.ResultType determineResultType() { //FIXME following decision tree should not depend on the returned runtime types // but on the returnTypeSpec, // which is introspected eagerly on application start and should be the binding contract - val actualReturnTypeSpec = returnedAdapter.getSpecification(); + val actualReturnTypeSpec = returnedAdapter.objSpec(); if (ManagedObjects.isPacked(returnedAdapter) || isVector(actualReturnTypeSpec)) { @@ -95,7 +95,7 @@ public ActionResultRepresentation.ResultType determineResultType() { // inspect the collection's elements val isListOfDomainObjects = streamElementAdapters() - .allMatch(elementAdapter->!isScalarValue(elementAdapter.getSpecification())); + .allMatch(elementAdapter->!isScalarValue(elementAdapter.objSpec())); return isListOfDomainObjects ? ActionResultRepresentation.ResultType.LIST diff --git a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/ObjectCollectionReprRenderer.java b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/ObjectCollectionReprRenderer.java index 023da8342d4..dabe77c27f1 100644 --- a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/ObjectCollectionReprRenderer.java +++ b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/ObjectCollectionReprRenderer.java @@ -164,7 +164,7 @@ protected void addLinksToFormalDomainModel() { } final JsonRepresentation link = CollectionDescriptionReprRenderer - .newLinkToBuilder(resourceContext, Rel.DESCRIBEDBY, objectAdapter.getSpecification(), objectMember).build(); + .newLinkToBuilder(resourceContext, Rel.DESCRIBEDBY, objectAdapter.objSpec(), objectMember).build(); getLinks().arrayAdd(link); } diff --git a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/ObjectPropertyReprRenderer.java b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/ObjectPropertyReprRenderer.java index 3df4bce9aa8..4e606778e92 100644 --- a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/ObjectPropertyReprRenderer.java +++ b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/ObjectPropertyReprRenderer.java @@ -87,7 +87,7 @@ private void addValue(final LinkFollowSpecs linkFollower) { ? valueAdapterIfAny : ManagedObject.empty(objectMember.getElementType()); - val spec = valueAdapter.getSpecification(); + val spec = valueAdapter.objSpec(); if (spec.isValue()) { jsonValueEncoder @@ -200,7 +200,7 @@ protected void addLinksToFormalDomainModel() { if(resourceContext.config().isSuppressDescribedByLinks()) { return; } - final JsonRepresentation link = PropertyDescriptionReprRenderer.newLinkToBuilder(getResourceContext(), Rel.DESCRIBEDBY, objectAdapter.getSpecification(), objectMember).build(); + final JsonRepresentation link = PropertyDescriptionReprRenderer.newLinkToBuilder(getResourceContext(), Rel.DESCRIBEDBY, objectAdapter.objSpec(), objectMember).build(); getLinks().arrayAdd(link); } diff --git a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/ScalarValueReprRenderer.java b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/ScalarValueReprRenderer.java index 48119275bd9..7c26b1bec61 100644 --- a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/ScalarValueReprRenderer.java +++ b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/ScalarValueReprRenderer.java @@ -65,7 +65,7 @@ public MediaType getMediaType() { @Override public ScalarValueReprRenderer with(final ManagedObject objectAdapter) { - if (!objectAdapter.getSpecification().isValue()) { + if (!objectAdapter.objSpec().isValue()) { throw ReprRendererException.create("Not an (encodable) value", objectAdapter.getTitle()); } diff --git a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/service/conneg/ContentNegotiationServiceOrgApacheCausewayV2.java b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/service/conneg/ContentNegotiationServiceOrgApacheCausewayV2.java index 21f50c35d38..15e461640ca 100644 --- a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/service/conneg/ContentNegotiationServiceOrgApacheCausewayV2.java +++ b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/service/conneg/ContentNegotiationServiceOrgApacheCausewayV2.java @@ -266,7 +266,7 @@ public Response.ResponseBuilder buildResponse( objectAndActionInvocation.streamElementAdapters() .map(elementAdapter->{ val dto = dtoForValue(returnedAdapter) - .orElseGet(()->elementAdapter.getSpecification().getCorrespondingClass()); + .orElseGet(()->elementAdapter.objSpec().getCorrespondingClass()); return dto; }) .forEach(rootRepresentation::arrayAdd); @@ -306,10 +306,10 @@ public Response.ResponseBuilder buildResponse( private Optional<Object> dtoForValue(final @Nullable ManagedObject valueObject) { if(ManagedObjects.isNullOrUnspecifiedOrEmpty(valueObject) - || !valueObject.getSpecification().isValue()) { + || !valueObject.objSpec().isValue()) { return Optional.empty(); } - val valSpec = valueObject.getSpecification(); + val valSpec = valueObject.objSpec(); val dto = valSpec.isCompositeValue() ? ScalarValueDtoV2.forValue(valueObject.getPojo(), //XXX honor value semantics context? @@ -346,7 +346,7 @@ private void appendObjectTo( val where = resourceContext.getWhere(); - owner.getSpecification() + owner.objSpec() .streamCollections(MixedIn.INCLUDED) .forEach(collection->{ @@ -374,7 +374,7 @@ private void appendPropertiesTo( val interactionInitiatedBy = resourceContext.getInteractionInitiatedBy(); val where = resourceContext.getWhere(); - final Stream<OneToOneAssociation> properties = objectAdapter.getSpecification() + final Stream<OneToOneAssociation> properties = objectAdapter.objSpec() .streamProperties(MixedIn.INCLUDED); properties.forEach(property->{ diff --git a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/service/valuerender/JsonValueConverter.java b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/service/valuerender/JsonValueConverter.java index a2d44b494e2..e8ca8a40e58 100644 --- a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/service/valuerender/JsonValueConverter.java +++ b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/service/valuerender/JsonValueConverter.java @@ -111,7 +111,7 @@ public OptionalInt maxFractionalDigits(final @Nullable ManagedObject value) { private Can<FacetHolder> facetHolders(final @Nullable ManagedObject value) { return ManagedObjects.isNullOrUnspecifiedOrEmpty(value) ? Can.of(objectFeature) - : Can.of(objectFeature, value.getSpecification()); + : Can.of(objectFeature, value.objSpec()); } } diff --git a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/service/valuerender/JsonValueEncoderServiceDefault.java b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/service/valuerender/JsonValueEncoderServiceDefault.java index dc7dca46c4b..b435433dfcd 100644 --- a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/service/valuerender/JsonValueEncoderServiceDefault.java +++ b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/service/valuerender/JsonValueEncoderServiceDefault.java @@ -168,7 +168,7 @@ public void appendValueAndFormat( final JsonRepresentation repr, final Context context) { - val valueSpec = valueAdapter.getSpecification(); + val valueSpec = valueAdapter.objSpec(); val valueClass = valueSpec.getCorrespondingClass(); val jsonValueConverter = converterByClass.get(valueClass); if(jsonValueConverter != null) { @@ -223,11 +223,11 @@ private static Optional<ValueDecomposition> decompose(final ManagedObject valueA if(ManagedObjects.isNullOrUnspecifiedOrEmpty(valueAdapter)) { return Optional.empty(); } - val valueClass = valueAdapter.getSpecification().getCorrespondingClass(); - val decompositionIfAny = Facets.valueDefaultSemantics(valueAdapter.getSpecification(), valueClass) + val valueClass = valueAdapter.objSpec().getCorrespondingClass(); + val decompositionIfAny = Facets.valueDefaultSemantics(valueAdapter.objSpec(), valueClass) .map(composer->composer.decompose(_Casts.uncheckedCast(valueAdapter.getPojo()))); if(decompositionIfAny.isEmpty()) { - val valueSpec = valueAdapter.getSpecification(); + val valueSpec = valueAdapter.objSpec(); log.warn("{Could not resolve a ValueComposer for {}, " + "falling back to rendering as 'null'. " + "Make sure the framework has access to a ValueSemanticsProvider<{}> " @@ -243,7 +243,7 @@ private static Optional<ValueDecomposition> decompose(final ManagedObject valueA @Nullable public Object asObject(final @NonNull ManagedObject adapter, final JsonValueConverter.Context context) { - val objectSpec = adapter.getSpecification(); + val objectSpec = adapter.objSpec(); val cls = objectSpec.getCorrespondingClass(); val jsonValueConverter = converterByClass.get(cls); diff --git a/viewers/restfulobjects/rendering/src/test/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/JsonValueEncoderTest.java b/viewers/restfulobjects/rendering/src/test/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/JsonValueEncoderTest.java index 503b9386522..e778180e69c 100644 --- a/viewers/restfulobjects/rendering/src/test/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/JsonValueEncoderTest.java +++ b/viewers/restfulobjects/rendering/src/test/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/JsonValueEncoderTest.java @@ -139,7 +139,7 @@ void whenReprIsBoolean(final Class<?> correspondingClass) { val adapter = jsonValueEncoder.asAdapter(spec, representation, null); // then - assertSame(spec, adapter.getSpecification()); + assertSame(spec, adapter.objSpec()); } @ParameterizedTest @@ -154,7 +154,7 @@ void whenReprIsInteger(final Class<?> correspondingClass) { val adapter = jsonValueEncoder.asAdapter(spec, representation, null); // then - assertSame(spec, adapter.getSpecification()); + assertSame(spec, adapter.objSpec()); } @ParameterizedTest @@ -169,7 +169,7 @@ void whenReprIsLong(final Class<?> correspondingClass) { val adapter = jsonValueEncoder.asAdapter(spec, representation, null); // then - assertSame(spec, adapter.getSpecification()); + assertSame(spec, adapter.objSpec()); } @ParameterizedTest @@ -184,7 +184,7 @@ void whenReprIsDouble(final Class<?> correspondingClass) { val adapter = jsonValueEncoder.asAdapter(spec, representation, null); // then - assertSame(spec, adapter.getSpecification()); + assertSame(spec, adapter.objSpec()); } @Test @@ -198,7 +198,7 @@ void whenReprIsBigInteger() throws Exception { val adapter = jsonValueEncoder.asAdapter(spec, representation, null); // then - assertSame(spec, adapter.getSpecification()); + assertSame(spec, adapter.objSpec()); } @Test @@ -212,7 +212,7 @@ void whenReprIsBigDecimal() throws Exception { val adapter = jsonValueEncoder.asAdapter(spec, representation, null); // then - assertSame(spec, adapter.getSpecification()); + assertSame(spec, adapter.objSpec()); } @@ -226,7 +226,7 @@ void whenReprIsString() throws Exception { val adapter = jsonValueEncoder.asAdapter(spec, representation, null); // then - assertSame(spec, adapter.getSpecification()); + assertSame(spec, adapter.objSpec()); } } diff --git a/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/DomainObjectResourceServerside.java b/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/DomainObjectResourceServerside.java index 44b62f1a0ac..a562b090671 100644 --- a/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/DomainObjectResourceServerside.java +++ b/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/DomainObjectResourceServerside.java @@ -134,7 +134,7 @@ public Response persist( .createWithBody(HttpStatusCode.BAD_REQUEST, objectRepr, "Illegal property value")); } - final Consent validity = adapter.getSpecification().isValid(adapter, InteractionInitiatedBy.USER); + final Consent validity = adapter.objSpec().isValid(adapter, InteractionInitiatedBy.USER); if (validity.isVetoed()) { throw _EndpointLogging.error(log, "POST /objects/{}", domainType, RestfulObjectsApplicationException @@ -213,7 +213,7 @@ public Response object( HttpStatusCode.BAD_REQUEST, argRepr, "Illegal property value")); } - final Consent validity = objectAdapter.getSpecification().isValid(objectAdapter, InteractionInitiatedBy.USER); + final Consent validity = objectAdapter.objSpec().isValid(objectAdapter, InteractionInitiatedBy.USER); if (validity.isVetoed()) { throw _EndpointLogging.error(log, "PUT /objects/{}/{}", domainType, instanceId, RestfulObjectsApplicationException diff --git a/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/ObjectAdapterUpdateHelper.java b/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/ObjectAdapterUpdateHelper.java index ca920ee9191..cb68c55f9b0 100644 --- a/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/ObjectAdapterUpdateHelper.java +++ b/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/ObjectAdapterUpdateHelper.java @@ -67,7 +67,7 @@ boolean copyOverProperties( val allOk = _Refs.booleanRef(true); // simply a non-thread-safe boolean reference - objectAdapter.getSpecification().streamAssociations(MixedIn.EXCLUDED) + objectAdapter.objSpec().streamAssociations(MixedIn.EXCLUDED) .filter(ObjectAssociation.Predicates.PROPERTIES) // properties only .forEach(association->{ diff --git a/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/models/ScalarParameterModel.java b/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/models/ScalarParameterModel.java index b83fdab3c31..de44ade0871 100644 --- a/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/models/ScalarParameterModel.java +++ b/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/models/ScalarParameterModel.java @@ -62,7 +62,7 @@ private ScalarParameterModel( @Override public String validate(final @NonNull ManagedObject proposedArg) { // workaround for FileUpload - if(proposedArg.getSpecification().getBeanSort().isUnknown()) { + if(proposedArg.objSpec().getBeanSort().isUnknown()) { return null; } proposedValue().getValue().setValue(proposedArg); // updates the pending parameter value diff --git a/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/models/UiObjectWkt.java b/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/models/UiObjectWkt.java index 878a2c88346..7384f01b0e4 100644 --- a/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/models/UiObjectWkt.java +++ b/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/models/UiObjectWkt.java @@ -262,7 +262,7 @@ public ScalarModel getPropertyModel( public Stream<Bookmark> streamPropertyBookmarks() { val candidateAdapter = this.getObject(); - return candidateAdapter.getSpecification() + return candidateAdapter.objSpec() .streamProperties(MixedIn.EXCLUDED) .map(prop-> ManagedObjects.bookmark(prop.get(candidateAdapter, InteractionInitiatedBy.PASS_THROUGH)) diff --git a/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/models/interaction/HasBookmarkedOwnerAbstract.java b/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/models/interaction/HasBookmarkedOwnerAbstract.java index d8ae56b384d..dc434be7b3d 100644 --- a/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/models/interaction/HasBookmarkedOwnerAbstract.java +++ b/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/models/interaction/HasBookmarkedOwnerAbstract.java @@ -58,7 +58,7 @@ public final BookmarkPolicy getBookmarkPolicy() { public final ObjectSpecification getTypeOfSpecification() { // serving this from a potentially unattached entity seems safe - return bookmarkedObject.getObject().getSpecification(); + return bookmarkedObject.getObject().objSpec(); } } diff --git a/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/models/interaction/act/ActionInteractionWkt.java b/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/models/interaction/act/ActionInteractionWkt.java index 9452d0ba650..8b06d9db6a0 100644 --- a/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/models/interaction/act/ActionInteractionWkt.java +++ b/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/models/interaction/act/ActionInteractionWkt.java @@ -96,7 +96,7 @@ public static ActionInteractionWkt forEntity( final ScalarParameterModel associatedWithParameterIfAny, final EntityCollectionModel associatedWithCollectionIfAny) { - val onwerSpec = parentEntityModel.getBookmarkedOwner().getSpecification(); + val onwerSpec = parentEntityModel.getBookmarkedOwner().objSpec(); val objectAction = onwerSpec.getAction(actionIdentifier.getMemberLogicalName()); return new ActionInteractionWkt( diff --git a/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/models/interaction/prop/PropertyInteractionWkt.java b/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/models/interaction/prop/PropertyInteractionWkt.java index 474f46d33a0..306adec6df4 100644 --- a/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/models/interaction/prop/PropertyInteractionWkt.java +++ b/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/models/interaction/prop/PropertyInteractionWkt.java @@ -124,7 +124,7 @@ private PropertyInteraction loadPropertyInteraction() { ManagedProperty.lookupProperty(getBookmarkedOwner(), memberId, where) .orElseThrow(()->_Exceptions.noSuchElement("property '%s' in %s", memberId, - getBookmarkedOwner().getSpecification()))); + getBookmarkedOwner().objSpec()))); } /** diff --git a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/actionresponse/ActionResultResponseType.java b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/actionresponse/ActionResultResponseType.java index 6153f8f7f2e..ee204859dfb 100644 --- a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/actionresponse/ActionResultResponseType.java +++ b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/actionresponse/ActionResultResponseType.java @@ -274,7 +274,7 @@ private static ManagedObject determineScalarAdapter( final @NonNull MetaModelContext commonContext, final @NonNull ManagedObject resultAdapter) { - if (resultAdapter.getSpecification().isSingular()) { + if (resultAdapter.objSpec().isSingular()) { return resultAdapter; } else { // will only be a single element @@ -304,7 +304,7 @@ private static TypeAndAdapter determineFor( return TypeAndAdapter.of(mapAbsentResultTo, resultAdapter); } - val resultSpec = resultAdapter.getSpecification(); + val resultSpec = resultAdapter.objSpec(); if (!(resultAdapter instanceof PackedManagedObject)) { // scalar ... diff --git a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/collectioncontents/ajaxtable/CausewayAjaxDataTable.java b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/collectioncontents/ajaxtable/CausewayAjaxDataTable.java index f1d5d2c89f3..7be63df1630 100644 --- a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/collectioncontents/ajaxtable/CausewayAjaxDataTable.java +++ b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/collectioncontents/ajaxtable/CausewayAjaxDataTable.java @@ -141,7 +141,7 @@ private static String cssClassForRow(final DataRow model) { return null; } val rowElement = model.getRowElement(); - return rowElement.getSpecification().getCssClass(rowElement); + return rowElement.objSpec().getCssClass(rowElement); } private static Iterator<Item<DataRow>> itemReuseStrategy( diff --git a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/collectioncontents/ajaxtable/columns/SingularColumn.java b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/collectioncontents/ajaxtable/columns/SingularColumn.java index 8d1f410e5bb..df5acf7e3f5 100644 --- a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/collectioncontents/ajaxtable/columns/SingularColumn.java +++ b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/collectioncontents/ajaxtable/columns/SingularColumn.java @@ -51,7 +51,7 @@ protected Component createCellComponent( final String componentId, final DataRow dataRow, final IModel<Boolean> dataRowToggle) { val rowElement = dataRow.getRowElement(); val rowElementModel = UiObjectWkt.ofAdapter(rowElement); - val property = rowElement.getSpecification().getPropertyElseFail(memberId); + val property = rowElement.objSpec().getPropertyElseFail(memberId); val scalarModel = rowElementModel .getPropertyModel( diff --git a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/entity/fieldset/PropertyGroup.java b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/entity/fieldset/PropertyGroup.java index 58d7eef8cda..70db27c6d7e 100644 --- a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/entity/fieldset/PropertyGroup.java +++ b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/entity/fieldset/PropertyGroup.java @@ -166,7 +166,7 @@ private Can<OneToOneAssociation> getPropertiesNotStaticallyHidden() { return _NullSafe.stream(propertyLayouts) .filter(propertyLayoutData -> propertyLayoutData.getMetadataError() == null) .map(propertyLayoutData -> - entity.getSpecification().getProperty(propertyLayoutData.getId()) + entity.objSpec().getProperty(propertyLayoutData.getId()) .orElse(null) ) .filter(_NullSafe::isPresent) diff --git a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/entity/icontitle/EntityIconAndTitlePanel.java b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/entity/icontitle/EntityIconAndTitlePanel.java index 0bebb571b61..23dbfa47c19 100644 --- a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/entity/icontitle/EntityIconAndTitlePanel.java +++ b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/entity/icontitle/EntityIconAndTitlePanel.java @@ -227,8 +227,8 @@ private TitleRecord determineTitle(final ManagedObject linkedDomainObject) { return this.cachedTitle = TitleRecord.builder() .fullTitle(fullTitle) .abbreviatedTitle(titleAbbreviated(fullTitle)) - .tooltipTitle(_Strings.nullToEmpty(linkedDomainObject.getSpecification().getSingularName())) - .tooltipBody(_Strings.nonEmpty(linkedDomainObject.getSpecification().getDescription()) + .tooltipTitle(_Strings.nullToEmpty(linkedDomainObject.objSpec().getSingularName())) + .tooltipBody(_Strings.nonEmpty(linkedDomainObject.objSpec().getDescription()) .orElseGet(()->fullTitle)) .build(); } @@ -282,7 +282,7 @@ private static void guardAgainstNonEmptyAbstractSingular(final ObjectAdapterMode ()->String.format("model for EntityIconAndTitlePanel, " + "when non-empty, must not represent abstract types; " + "however, got an abstract %s for object of type %s", - obj.getSpecification(), + obj.objSpec(), obj.getPojo().getClass().getName())); } @@ -292,7 +292,7 @@ private static boolean isNonEmptyAbstractSingular(final ManagedObject obj) { || ManagedObjects.isPacked(obj)) { return false; } - return obj.getSpecification().isAbstract(); + return obj.objSpec().isAbstract(); } } diff --git a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/layout/bs/col/Col.java b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/layout/bs/col/Col.java index 5cd98364d07..2e2072bdd00 100644 --- a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/layout/bs/col/Col.java +++ b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/layout/bs/col/Col.java @@ -232,7 +232,7 @@ private void buildGui() { } final UiObjectWkt entityModel = getModel(); - val ownerSpec = entityModel.getManagedObject().getSpecification(); + val ownerSpec = entityModel.getManagedObject().objSpec(); // collection layout data by collection id (the collection's member-id) // preserving order, as order matters diff --git a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/markup/MarkupPanelFactories.java b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/markup/MarkupPanelFactories.java index 1683c28ea34..6bdeb9a879e 100644 --- a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/markup/MarkupPanelFactories.java +++ b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/markup/MarkupPanelFactories.java @@ -94,7 +94,7 @@ public ApplicationAdvice appliesTo(final IModel<?> model) { } return appliesIf(valueType.isAssignableFrom( - objectAdapter.getSpecification().getCorrespondingClass()) ); + objectAdapter.objSpec().getCorrespondingClass()) ); } @Override diff --git a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/unknown/UnknownModelPanel.java b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/unknown/UnknownModelPanel.java index c10f4994de5..002c2462a43 100644 --- a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/unknown/UnknownModelPanel.java +++ b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/unknown/UnknownModelPanel.java @@ -68,7 +68,7 @@ private void buildMessageForModel(final StringBuilder buf, final IModel<?> model val scalarAdapter = scalarModel.getObject(); if(ManagedObjects.isSpecified(scalarAdapter)) { buf.append(String.format("??? spec=%s, value='%s'", - scalarAdapter.getSpecification(), scalarAdapter.getPojo())); + scalarAdapter.objSpec(), scalarAdapter.getPojo())); } else { buf.append("??? scalarAdapter is NULL or UNSPECIFIED"); } diff --git a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/widgets/linkandlabel/ActionLink.java b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/widgets/linkandlabel/ActionLink.java index 31afbd01d61..3fb96af9955 100644 --- a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/widgets/linkandlabel/ActionLink.java +++ b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/widgets/linkandlabel/ActionLink.java @@ -210,7 +210,7 @@ private void executeWithoutParams() { private void startDialogWithParams(final AjaxRequestTarget target) { val actionModel = this.getActionModel(); - val actionOwnerSpec = actionModel.getActionOwner().getSpecification(); + val actionOwnerSpec = actionModel.getActionOwner().objSpec(); val actionPrompt = ActionPromptProvider .getFrom(this.getPage()) .getActionPrompt(actionModel.getPromptStyle(), actionOwnerSpec.getBeanSort()); diff --git a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/entity/EntityPage.java b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/entity/EntityPage.java index 6f35f9c51ac..b3c61fe386a 100644 --- a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/entity/EntityPage.java +++ b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/entity/EntityPage.java @@ -106,7 +106,7 @@ public static EntityPage forAdapter( final ManagedObject adapter) { _Debug.onCondition(XrayUi.isXrayEnabled(), ()->{ - _Debug.log("new EntityPage from Adapter %s", adapter.getSpecification()); + _Debug.log("new EntityPage from Adapter %s", adapter.objSpec()); }); return new EntityPage(
