This is an automated email from the ASF dual-hosted git repository. ahuber pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/isis.git
commit 4703b300129fd87db8ae4c50a7cc26683256ee87 Author: Andi Huber <ahu...@apache.org> AuthorDate: Thu Sep 1 05:43:20 2022 +0200 ISIS-3167: remove ManagedObject.titleString() --- .../ident/TitleFacetFromProjectionFacet.java | 2 +- .../facets/object/title/TitleRenderRequest.java | 11 ++++---- .../annotation/TitleFacetViaTitleAnnotation.java | 2 +- .../objectvalue/regex/RegExFacetAbstract.java | 2 +- .../isis/core/metamodel/object/ManagedObject.java | 33 ++++++---------------- .../isis/core/metamodel/object/MmEntityUtil.java | 2 +- .../isis/core/metamodel/object/MmTitleUtil.java | 19 ++++++++++++- .../objectmanager/memento/ObjectMemento.java | 3 +- .../specimpl/ObjectSpecificationAbstract.java | 3 +- .../core/metamodel/util/snapshot/XmlSnapshot.java | 8 +++--- .../excel/applib/service/_CellMarshaller.java | 2 +- .../ui/components/ExcelFileModel.java | 2 +- .../ui/components/collections/TableViewFx.java | 2 +- .../ui/components/collection/TableViewVaa.java | 2 +- .../DomainModelTest_usingGoodDomain.java | 2 +- .../interaction/DomainObjectTesterFactory.java | 2 +- .../commons/model/action/ActionFormUiModel.java | 2 +- .../domainobjects/DomainObjectLinkTo.java | 2 +- .../domainobjects/DomainObjectReprRenderer.java | 4 +-- .../domainobjects/DomainServiceLinkTo.java | 4 +-- .../domainobjects/ScalarValueReprRenderer.java | 2 +- ...entNegotiationServiceForRestfulObjectsV1_0.java | 2 +- .../JsonValueEncoderServiceDefault.java | 2 +- .../viewer/wicket/model/models/EntityModel.java | 2 +- .../ui/components/actioninfo/ActionInfoPanel.java | 2 +- .../entityactions/LinkAndLabelFactory.java | 2 +- .../summary/CollectionContentsAsSummary.java | 2 +- .../entity/icontitle/EntityIconAndTitlePanel.java | 7 ++--- .../scalars/reference/ReferencePanel.java | 2 +- .../ui/components/value/StandaloneValuePanel.java | 2 +- .../widgets/breadcrumbs/BreadcrumbPanel.java | 2 +- .../select2/providers/ChoiceProviderAbstract.java | 2 +- .../viewer/wicket/ui/pages/entity/EntityPage.java | 2 +- 33 files changed, 70 insertions(+), 70 deletions(-) diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/projection/ident/TitleFacetFromProjectionFacet.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/projection/ident/TitleFacetFromProjectionFacet.java index 504f0a4f1c..df8fde10d0 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/projection/ident/TitleFacetFromProjectionFacet.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/projection/ident/TitleFacetFromProjectionFacet.java @@ -44,7 +44,7 @@ extends TitleFacetAbstract { public String title(final TitleRenderRequest titleRenderRequest) { final ManagedObject targetAdapter = titleRenderRequest.getObject(); val projectedAdapter = projectionFacet.projected(targetAdapter); - return projectedAdapter.titleString(); + return projectedAdapter.getTitle(); } @Override diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/title/TitleRenderRequest.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/title/TitleRenderRequest.java index 14b5ec6104..cda0b5a478 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/title/TitleRenderRequest.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/title/TitleRenderRequest.java @@ -44,13 +44,12 @@ public class TitleRenderRequest { /** * Provide a title for the target object, possibly abbreviated (according to supplied predicate) - * * <p> - * One reason why the title might be abbreviated is if it is being evaluated in the context of another object, - * for example as a child object of a parented collection of some parent object. In such a context, the - * title might be shortened so that it does not needlessly incorporate the title of the parent (context) - * object. - * </p> + * One reason why the title might be abbreviated is if it is being evaluated in the context + * of another object. + * For example as a child object of a parented collection of some parent object. + * In such a context, the title might be shortened so that it does not needlessly incorporate + * the title of the parent (context) object. */ @Builder.Default private final @NonNull Predicate<ManagedObject> skipTitlePartEvaluator = diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/title/annotation/TitleFacetViaTitleAnnotation.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/title/annotation/TitleFacetViaTitleAnnotation.java index cf24c97174..8875b5620b 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/title/annotation/TitleFacetViaTitleAnnotation.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/title/annotation/TitleFacetViaTitleAnnotation.java @@ -179,7 +179,7 @@ implements ImperativeFacet { if (adapter == null) { return null; } - return adapter.titleString(); + return adapter.getTitle(); } private static String abbreviated(final String str, final int maxLength) { diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/objectvalue/regex/RegExFacetAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/objectvalue/regex/RegExFacetAbstract.java index 0b20ee2d19..258b93f379 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/objectvalue/regex/RegExFacetAbstract.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/objectvalue/regex/RegExFacetAbstract.java @@ -75,7 +75,7 @@ implements RegExFacet { if (proposedArgument.getPojo() == null) { return null; } - final String titleString = proposedArgument.titleString(); + final String titleString = proposedArgument.getTitle(); if (!doesNotMatch(titleString)) { return null; } diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/object/ManagedObject.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/object/ManagedObject.java index 06fd277f57..df2861b712 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/object/ManagedObject.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/object/ManagedObject.java @@ -20,7 +20,6 @@ package org.apache.isis.core.metamodel.object; import java.util.Optional; import java.util.function.Supplier; -import java.util.function.UnaryOperator; import org.springframework.lang.Nullable; @@ -31,7 +30,6 @@ import org.apache.isis.commons.internal.collections._Collections; import org.apache.isis.commons.internal.exceptions._Exceptions; import org.apache.isis.core.metamodel.context.HasMetaModelContext; import org.apache.isis.core.metamodel.facets.object.icon.ObjectIcon; -import org.apache.isis.core.metamodel.facets.object.title.TitleRenderRequest; import org.apache.isis.core.metamodel.object.ManagedObject.Specialization.BookmarkPolicy; import org.apache.isis.core.metamodel.spec.ObjectSpecification; import org.apache.isis.core.metamodel.specloader.SpecificationLoader; @@ -345,28 +343,14 @@ extends // -- TITLE /** - * The (TODO translated ?) title of the wrapped pojo. + * The (untranslated) title of the wrapped pojo. */ String getTitle(); - @Deprecated - default String titleString() { - return getTitle(); - } - - default String titleString(final UnaryOperator<TitleRenderRequest.TitleRenderRequestBuilder> onBuilder) { - return _InternalTitleUtil - .titleString(onBuilder.apply( - TitleRenderRequest.builder() - .object(this)) - .build()); - } - - // -- SHORTCUT - ELEMENT SPECIFICATION /** - * Used only for (standalone or parented) collections. + * As used for the element type of collections. */ default Optional<ObjectSpecification> getElementSpecification() { return getSpecification().getElementSpecification(); @@ -448,9 +432,9 @@ extends static ManagedObject viewmodel( final @NonNull ObjectSpecification spec, final @Nullable Object pojo, - final Optional<Bookmark> bookmarkIfAny) { + final Optional<Bookmark> bookmarkIfKnown) { return pojo != null - ? bookmarkIfAny.map(bookmark->bookmarked(spec, pojo, bookmark)) //FIXME + ? bookmarkIfKnown.map(bookmark->bookmarked(spec, pojo, bookmark)) //FIXME .orElseGet(()->new _ManagedObjectWithEagerSpec(spec, pojo)) //FIXME : empty(spec); } @@ -525,12 +509,13 @@ extends return (ManagedObject)pojo; } val spec = specLoader.specForType(pojo.getClass()).orElse(null); - return wrapScalarInternal(spec, pojo); + return wrapScalarInternal(spec, pojo, Optional.empty()); } private static ManagedObject wrapScalarInternal( final @Nullable ObjectSpecification spec, - final @NonNull Object pojo) { + final @NonNull Object pojo, + final @NonNull Optional<Bookmark> bookmarkIfAny) { _Assert.assertTrue(!_Collections.isCollectionOrArrayOrCanType(pojo.getClass()), ()->String.format("is scalar %s", pojo.getClass())); @@ -547,7 +532,7 @@ extends case SERVICE: return service(spec, pojo); case VIEWMODEL: - return viewmodel(spec, pojo, Optional.empty()); + return viewmodel(spec, pojo, bookmarkIfAny); case ENTITY: return entity(spec, pojo); case MIXIN: @@ -572,7 +557,7 @@ extends return (ManagedObject)pojo; } return !_Collections.isCollectionOrArrayOrCanType(pojo.getClass()) - ? wrapScalarInternal(spec, pojo) + ? wrapScalarInternal(spec, pojo, Optional.empty()) : new _ManagedObjectWithEagerSpec(spec, pojo); } diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/object/MmEntityUtil.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/object/MmEntityUtil.java index 13e2d3bf21..1305817bb1 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/object/MmEntityUtil.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/object/MmEntityUtil.java @@ -192,7 +192,7 @@ public final class MmEntityUtil { throw _Exceptions.illegalArgument( "can't set a reference to a transient object [%s] from a persistent one [%s]", second, - first.titleString()); + first.getTitle()); } } diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/object/MmTitleUtil.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/object/MmTitleUtil.java index 9161c78ba7..8e9c9c7584 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/object/MmTitleUtil.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/object/MmTitleUtil.java @@ -18,9 +18,12 @@ */ package org.apache.isis.core.metamodel.object; +import java.util.function.Predicate; + import org.springframework.lang.Nullable; import org.apache.isis.applib.value.semantics.Renderer; +import org.apache.isis.core.metamodel.facets.object.title.TitleRenderRequest; import org.apache.isis.core.metamodel.spec.feature.ObjectFeature; import lombok.val; @@ -35,7 +38,7 @@ public class MmTitleUtil { public String titleOf(final ManagedObject adapter) { return adapter!=null - ? adapter.titleString() + ? adapter.getTitle() : ""; } @@ -63,4 +66,18 @@ public class MmTitleUtil { return renderer.htmlPresentation(valueFacet.createValueSemanticsContext(feature), adapter.getPojo()); } + public String getTitleHonoringTitlePartSkipping( + final ManagedObject managedObject, + final Predicate<ManagedObject> skipTitlePart) { + return ManagedObjects.isPacked(managedObject) + ? "(multiple objects)" + : managedObject != null + ? _InternalTitleUtil.titleString( + TitleRenderRequest.builder() + .object(managedObject) + .skipTitlePartEvaluator(skipTitlePart) + .build()) + : "(no object)"; + } + } diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/objectmanager/memento/ObjectMemento.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/objectmanager/memento/ObjectMemento.java index 23dbe77415..2c8b569762 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/objectmanager/memento/ObjectMemento.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/objectmanager/memento/ObjectMemento.java @@ -36,9 +36,10 @@ public interface ObjectMemento extends BookmarkHolder, HasLogicalType, Serializa /** * The object's title for rendering (before translation). - * Corresponds to {@link ManagedObject#titleString()}. + * Corresponds to {@link ManagedObject#getTitle()}. * <p> * Directly support choice rendering, without the need to (re-)fetch entire object graphs. + * (TODO translated or not?) */ String getTitle(); diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectSpecificationAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectSpecificationAbstract.java index a385325532..76296c1606 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectSpecificationAbstract.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectSpecificationAbstract.java @@ -566,7 +566,8 @@ implements ObjectSpecification { final ManagedObject targetObjectAdapter, final InteractionInitiatedBy interactionMethod) { - return new ObjectTitleContext(targetObjectAdapter, getFeatureIdentifier(), targetObjectAdapter.titleString(), + return new ObjectTitleContext(targetObjectAdapter, getFeatureIdentifier(), + targetObjectAdapter.getTitle(), interactionMethod); } diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/util/snapshot/XmlSnapshot.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/util/snapshot/XmlSnapshot.java index 69e49b224f..93a2ff4cb9 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/util/snapshot/XmlSnapshot.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/util/snapshot/XmlSnapshot.java @@ -547,7 +547,7 @@ public class XmlSnapshot implements Snapshot { } private String log(final String label, final ManagedObject adapter) { - return log(label, (adapter == null ? "(null)" : adapter.titleString() + "[" + oidAsString(adapter) + "]")); + return log(label, (adapter == null ? "(null)" : adapter.getTitle() + "[" + oidAsString(adapter) + "]")); } private String log(final String label, final Object pojo) { @@ -634,7 +634,7 @@ public class XmlSnapshot implements Snapshot { } final Element element = schema.createElement(getXmlDocument(), spec.getShortIdentifier(), spec.getFullIdentifier(), spec.getSingularName(), spec.getPluralName()); - isisMetaModel.appendIsisTitle(element, adapter.titleString()); + isisMetaModel.appendIsisTitle(element, adapter.getTitle()); if (log.isDebugEnabled()) { log.debug("objectToElement(NO): create XS element for Isis class"); @@ -712,7 +712,7 @@ public class XmlSnapshot implements Snapshot { if (valueFacet != null) { valueStr = valueFacet.toEncodedString(Format.JSON, value.getPojo()); } else { - valueStr = value.titleString(); + valueStr = value.getTitle(); } final boolean notEmpty = (valueStr.length() > 0); @@ -751,7 +751,7 @@ public class XmlSnapshot implements Snapshot { fullyQualifiedClassName); if (referencedObjectAdapter != null) { - isisMetaModel.appendIsisTitle(xmlReferenceElement, referencedObjectAdapter.titleString()); + isisMetaModel.appendIsisTitle(xmlReferenceElement, referencedObjectAdapter.getTitle()); } else { isisMetaModel.setIsEmptyAttribute(xmlReferenceElement, true); } diff --git a/extensions/core/excel/applib/src/main/java/org/apache/isis/extensions/excel/applib/service/_CellMarshaller.java b/extensions/core/excel/applib/src/main/java/org/apache/isis/extensions/excel/applib/service/_CellMarshaller.java index 48535b5c7c..b368c440a4 100644 --- a/extensions/core/excel/applib/src/main/java/org/apache/isis/extensions/excel/applib/service/_CellMarshaller.java +++ b/extensions/core/excel/applib/src/main/java/org/apache/isis/extensions/excel/applib/service/_CellMarshaller.java @@ -77,7 +77,7 @@ final class _CellMarshaller { final ObjectSpecification propertySpec = otoa.getElementType(); final Object propertyAsObj = propertyAdapter.getPojo(); - final String propertyAsTitle = propertyAdapter.titleString(); + final String propertyAsTitle = propertyAdapter.getTitle(); // value types if(propertySpec.isValue()) { diff --git a/extensions/vw/exceldownload/wicket-ui/src/main/java/org/apache/isis/extensions/viewer/wicket/exceldownload/ui/components/ExcelFileModel.java b/extensions/vw/exceldownload/wicket-ui/src/main/java/org/apache/isis/extensions/viewer/wicket/exceldownload/ui/components/ExcelFileModel.java index a98e380efc..93bc83678d 100644 --- a/extensions/vw/exceldownload/wicket-ui/src/main/java/org/apache/isis/extensions/viewer/wicket/exceldownload/ui/components/ExcelFileModel.java +++ b/extensions/vw/exceldownload/wicket-ui/src/main/java/org/apache/isis/extensions/viewer/wicket/exceldownload/ui/components/ExcelFileModel.java @@ -232,7 +232,7 @@ class ExcelFileModel extends LoadableDetachableModel<File> { return; } - final String objectAsStr = cellValue.titleString(); + final String objectAsStr = cellValue.getTitle(); cell.setCellValue(objectAsStr); return; } diff --git a/incubator/viewers/javafx/ui/src/main/java/org/apache/isis/incubator/viewer/javafx/ui/components/collections/TableViewFx.java b/incubator/viewers/javafx/ui/src/main/java/org/apache/isis/incubator/viewer/javafx/ui/components/collections/TableViewFx.java index 3b17c2e243..bcc8ebcedd 100644 --- a/incubator/viewers/javafx/ui/src/main/java/org/apache/isis/incubator/viewer/javafx/ui/components/collections/TableViewFx.java +++ b/incubator/viewers/javafx/ui/src/main/java/org/apache/isis/incubator/viewer/javafx/ui/components/collections/TableViewFx.java @@ -194,7 +194,7 @@ public class TableViewFx extends VBox { val propertyValue = property.get(targetObject); return propertyValue == null ? NULL_LITERAL - : propertyValue.titleString(); + : propertyValue.getTitle(); } catch (Exception e) { return Optional.ofNullable(e.getMessage()).orElse(e.getClass().getName()); } diff --git a/incubator/viewers/vaadin/ui/src/main/java/org/apache/isis/incubator/viewer/vaadin/ui/components/collection/TableViewVaa.java b/incubator/viewers/vaadin/ui/src/main/java/org/apache/isis/incubator/viewer/vaadin/ui/components/collection/TableViewVaa.java index 144c75d3a5..f153afc9ce 100644 --- a/incubator/viewers/vaadin/ui/src/main/java/org/apache/isis/incubator/viewer/vaadin/ui/components/collection/TableViewVaa.java +++ b/incubator/viewers/vaadin/ui/src/main/java/org/apache/isis/incubator/viewer/vaadin/ui/components/collection/TableViewVaa.java @@ -176,7 +176,7 @@ public class TableViewVaa extends VerticalLayout { val propertyValue = property.get(targetObject); return propertyValue == null ? NULL_LITERAL - : propertyValue.titleString(); + : propertyValue.getTitle(); } catch (Exception e) { return Optional.ofNullable(e.getMessage()).orElse(e.getClass().getName()); } diff --git a/regressiontests/stable-domainmodel/src/test/java/org/apache/isis/testdomain/domainmodel/DomainModelTest_usingGoodDomain.java b/regressiontests/stable-domainmodel/src/test/java/org/apache/isis/testdomain/domainmodel/DomainModelTest_usingGoodDomain.java index a3558477e5..82a33d1151 100644 --- a/regressiontests/stable-domainmodel/src/test/java/org/apache/isis/testdomain/domainmodel/DomainModelTest_usingGoodDomain.java +++ b/regressiontests/stable-domainmodel/src/test/java/org/apache/isis/testdomain/domainmodel/DomainModelTest_usingGoodDomain.java @@ -263,7 +263,7 @@ class DomainModelTest_usingGoodDomain { assertEquals("inherited icon", titleService.iconNameOf(instance)); val domainObject = ManagedObject.of(spec, instance); - assertEquals("inherited title", domainObject.titleString()); + assertEquals("inherited title", domainObject.getTitle()); assertEquals("inherited icon", iconFacet.iconName(domainObject)); } diff --git a/regressiontests/stable/src/main/java/org/apache/isis/testdomain/util/interaction/DomainObjectTesterFactory.java b/regressiontests/stable/src/main/java/org/apache/isis/testdomain/util/interaction/DomainObjectTesterFactory.java index 231d8c5e13..09424fb3b2 100644 --- a/regressiontests/stable/src/main/java/org/apache/isis/testdomain/util/interaction/DomainObjectTesterFactory.java +++ b/regressiontests/stable/src/main/java/org/apache/isis/testdomain/util/interaction/DomainObjectTesterFactory.java @@ -175,7 +175,7 @@ public class DomainObjectTesterFactory { assertEquals(expectedResult, super.objectSpecification.getTitleService().titleOf(vm.getPojo())); assertEquals(expectedResult, - vm.titleString()); + vm.getTitle()); } public void assertIcon(final @Nullable String expectedResult) { diff --git a/viewers/commons/model/src/main/java/org/apache/isis/viewer/commons/model/action/ActionFormUiModel.java b/viewers/commons/model/src/main/java/org/apache/isis/viewer/commons/model/action/ActionFormUiModel.java index f25e5eadc5..961f24661f 100644 --- a/viewers/commons/model/src/main/java/org/apache/isis/viewer/commons/model/action/ActionFormUiModel.java +++ b/viewers/commons/model/src/main/java/org/apache/isis/viewer/commons/model/action/ActionFormUiModel.java @@ -105,7 +105,7 @@ extends HasTitle, HasActionInteraction { } buf.append(MmTitleUtil.abbreviatedTitleOf(paramValue, 8, "...")); }); - return owner.titleString() + "." + getFriendlyName() + return owner.getTitle() + "." + getFriendlyName() + (buf.length()>0 ?"(" + buf.toString() + ")" :""); diff --git a/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/DomainObjectLinkTo.java b/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/DomainObjectLinkTo.java index 06e476fa52..5553995444 100644 --- a/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/DomainObjectLinkTo.java +++ b/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/DomainObjectLinkTo.java @@ -56,7 +56,7 @@ public class DomainObjectLinkTo implements ObjectAdapterLinkTo { relElseDefault(rel).getName(), RepresentationType.DOMAIN_OBJECT, linkRef(new StringBuilder()).toString()); - linkBuilder.withTitle(objectAdapter.titleString()); + linkBuilder.withTitle(objectAdapter.getTitle()); return linkBuilder; } diff --git a/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/DomainObjectReprRenderer.java b/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/DomainObjectReprRenderer.java index a7dcb570e9..f7d5dfbd6d 100644 --- a/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/DomainObjectReprRenderer.java +++ b/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/DomainObjectReprRenderer.java @@ -63,7 +63,7 @@ extends ReprRendererAbstract<ManagedObject> { final String objectRef = ManagedObjects.stringifyElseFail(objectAdapter, "/"); final String url = "objects/" + objectRef; - return LinkBuilder.newBuilder(resourceContext, rel.getName(), RepresentationType.DOMAIN_OBJECT, url).withTitle(objectAdapter.titleString()); + return LinkBuilder.newBuilder(resourceContext, rel.getName(), RepresentationType.DOMAIN_OBJECT, url).withTitle(objectAdapter.getTitle()); } public static LinkBuilder newLinkToObjectLayoutBuilder( @@ -185,7 +185,7 @@ extends ReprRendererAbstract<ManagedObject> { } // title - final String title = objectAdapter.titleString(); + final String title = objectAdapter.getTitle(); representation.mapPutString("title", title); // serviceId or instance Id diff --git a/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/DomainServiceLinkTo.java b/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/DomainServiceLinkTo.java index 2dfe37dd67..c5f9b35d31 100644 --- a/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/DomainServiceLinkTo.java +++ b/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/DomainServiceLinkTo.java @@ -39,13 +39,13 @@ public class DomainServiceLinkTo extends DomainObjectLinkTo { relElseDefault(rel).andParam("serviceId", serviceId), RepresentationType.DOMAIN_OBJECT, linkRef(new StringBuilder()).toString()); - linkBuilder.withTitle(objectAdapter.titleString()); + linkBuilder.withTitle(objectAdapter.getTitle()); return linkBuilder; } @Override - protected StringBuilder linkRef(StringBuilder buf) { + protected StringBuilder linkRef(final StringBuilder buf) { return buf.append("services/").append(serviceId); } diff --git a/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/ScalarValueReprRenderer.java b/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/ScalarValueReprRenderer.java index d771d5da1b..ef7fa55279 100644 --- a/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/ScalarValueReprRenderer.java +++ b/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/ScalarValueReprRenderer.java @@ -66,7 +66,7 @@ implements HasObjectFeature { @Override public ScalarValueReprRenderer with(final ManagedObject objectAdapter) { if (!objectAdapter.getSpecification().isValue()) { - throw ReprRendererException.create("Not an (encodable) value", objectAdapter.titleString()); + throw ReprRendererException.create("Not an (encodable) value", objectAdapter.getTitle()); } val context = JsonValueConverter.Context.of( diff --git a/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/service/conneg/ContentNegotiationServiceForRestfulObjectsV1_0.java b/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/service/conneg/ContentNegotiationServiceForRestfulObjectsV1_0.java index 28c941055d..c1aa08b060 100644 --- a/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/service/conneg/ContentNegotiationServiceForRestfulObjectsV1_0.java +++ b/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/service/conneg/ContentNegotiationServiceForRestfulObjectsV1_0.java @@ -296,7 +296,7 @@ implements ContentNegotiationService { } private static String titleOf(final ManagedObject argumentAdapter) { - return argumentAdapter!=null?argumentAdapter.titleString():""; + return argumentAdapter!=null?argumentAdapter.getTitle():""; } private static String abbreviated(final String str, final int maxLength) { diff --git a/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/service/valuerender/JsonValueEncoderServiceDefault.java b/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/service/valuerender/JsonValueEncoderServiceDefault.java index 65766b0270..6608afeb62 100644 --- a/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/service/valuerender/JsonValueEncoderServiceDefault.java +++ b/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/service/valuerender/JsonValueEncoderServiceDefault.java @@ -173,7 +173,7 @@ public class JsonValueEncoderServiceDefault implements JsonValueEncoderService { val decompRepr = JsonRepresentation.jsonAsMap(valueAsJson); // amend emums with "enumTitle" if(simple.getType() == ValueType.ENUM) { - decompRepr.mapPutString("enumTitle", valueAdapter.titleString()); + decompRepr.mapPutString("enumTitle", valueAdapter.getTitle()); } repr.mapPutJsonRepresentation("value", decompRepr); appendFormats(repr, null, simple.getType().value(), context.isSuppressExtensions()); diff --git a/viewers/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/models/EntityModel.java b/viewers/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/models/EntityModel.java index b7043aff5b..f5c00cd63c 100644 --- a/viewers/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/models/EntityModel.java +++ b/viewers/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/models/EntityModel.java @@ -170,7 +170,7 @@ implements @Override public String getTitle() { - return getObject().titleString(); + return getObject().getTitle(); } @Override diff --git a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actioninfo/ActionInfoPanel.java b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actioninfo/ActionInfoPanel.java index aa6c06238d..046893c8ee 100644 --- a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actioninfo/ActionInfoPanel.java +++ b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actioninfo/ActionInfoPanel.java @@ -39,7 +39,7 @@ extends PanelAbstract<ManagedObject, ActionModel> { // TODO: render instead as links (providing isn't a service; provide a // component for this?) - Wkt.labelAdd(this, ID_TARGET, ()->actionModel.getParentObject().titleString()); + Wkt.labelAdd(this, ID_TARGET, ()->actionModel.getParentObject().getTitle()); Wkt.labelAdd(this, ID_ACTION_NAME, ()->actionModel.getFriendlyName()); } } diff --git a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actionmenu/entityactions/LinkAndLabelFactory.java b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actionmenu/entityactions/LinkAndLabelFactory.java index 960f503416..50274cd702 100644 --- a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actionmenu/entityactions/LinkAndLabelFactory.java +++ b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actionmenu/entityactions/LinkAndLabelFactory.java @@ -120,7 +120,7 @@ extends Function<ObjectAction, LinkAndLabel> { if (!isIdentifiable) { throw new IllegalArgumentException(String.format( "Object '%s' is not identifiable (has no identifier).", - objectAdapter.titleString())); + objectAdapter.getTitle())); } } diff --git a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/summary/CollectionContentsAsSummary.java b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/summary/CollectionContentsAsSummary.java index d34e9e99b8..16d7fc6a53 100644 --- a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/summary/CollectionContentsAsSummary.java +++ b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/summary/CollectionContentsAsSummary.java @@ -136,7 +136,7 @@ implements CollectionCountProvider { this.propertyName = propertyName; int nonNullCount = 0; for (val adapter : adapters) { - titles.add(adapter.titleString()); + titles.add(adapter.getTitle()); final ManagedObject valueAdapter = numberAssociation.get(adapter, InteractionInitiatedBy.USER); if (valueAdapter == null) { diff --git a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/icontitle/EntityIconAndTitlePanel.java b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/icontitle/EntityIconAndTitlePanel.java index e1d142e2a7..3c270faf80 100644 --- a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/icontitle/EntityIconAndTitlePanel.java +++ b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/icontitle/EntityIconAndTitlePanel.java @@ -30,6 +30,7 @@ import org.apache.isis.core.metamodel.facets.members.cssclassfa.CssClassFaFactor import org.apache.isis.core.metamodel.object.ManagedObject; import org.apache.isis.core.metamodel.object.ManagedObjects; import org.apache.isis.core.metamodel.object.MmEntityUtil; +import org.apache.isis.core.metamodel.object.MmTitleUtil; import org.apache.isis.core.metamodel.spec.ObjectSpecification; import org.apache.isis.viewer.wicket.model.models.EntityModel; import org.apache.isis.viewer.wicket.model.models.ObjectAdapterModel; @@ -174,11 +175,7 @@ extends PanelAbstract<ManagedObject, ObjectAdapterModel> { private String determineTitle() { val managedObject = getModel().getObject(); - return ManagedObjects.isPacked(managedObject) - ? "(multiple objects)" - : managedObject != null - ? managedObject.titleString(conf->conf.skipTitlePartEvaluator(this::isContextAdapter)) - : "(no object)"; + return MmTitleUtil.getTitleHonoringTitlePartSkipping(managedObject, this::isContextAdapter); } private int abbreviateTo(final ObjectAdapterModel model, final String titleString) { diff --git a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/reference/ReferencePanel.java b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/reference/ReferencePanel.java index 2969161cc2..353c9e3241 100644 --- a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/reference/ReferencePanel.java +++ b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/reference/ReferencePanel.java @@ -238,7 +238,7 @@ public class ReferencePanel extends ScalarPanelSelectAbstract { String getTitleForFormComponentInput() { val pendingElseCurrentAdapter = scalarModel().getObject(); return pendingElseCurrentAdapter != null - ? pendingElseCurrentAdapter.titleString() + ? pendingElseCurrentAdapter.getTitle() : "(no object)"; } diff --git a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/value/StandaloneValuePanel.java b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/value/StandaloneValuePanel.java index a91cfe9de4..9f37f50aa2 100644 --- a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/value/StandaloneValuePanel.java +++ b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/value/StandaloneValuePanel.java @@ -56,7 +56,7 @@ extends PanelAbstract<ManagedObject, ValueModel> { } else { // resort to (textual) title rendering Wkt.labelAdd(this, ID_STANDALONE_VALUE, ()-> - getModel().getObject().titleString()); + getModel().getObject().getTitle()); } } diff --git a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/breadcrumbs/BreadcrumbPanel.java b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/breadcrumbs/BreadcrumbPanel.java index 38556b909e..c24103e0ba 100644 --- a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/breadcrumbs/BreadcrumbPanel.java +++ b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/breadcrumbs/BreadcrumbPanel.java @@ -74,7 +74,7 @@ extends PanelAbstract<Void, IModel<Void>> { } private String titleFor(final EntityModel model) { - return model.getManagedObject().titleString(); + return model.getManagedObject().getTitle(); } @Override diff --git a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/select2/providers/ChoiceProviderAbstract.java b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/select2/providers/ChoiceProviderAbstract.java index 03856f6bf9..72db452951 100644 --- a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/select2/providers/ChoiceProviderAbstract.java +++ b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/select2/providers/ChoiceProviderAbstract.java @@ -106,7 +106,7 @@ implements HasCommonContext { /** * Filters all choices against a term by using their - * {@link ManagedObject#titleString() title string} + * {@link ManagedObject#getTitle() title string} * * @param term The term entered by the user * @param choiceMementos The collections of choices to filter diff --git a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/entity/EntityPage.java b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/entity/EntityPage.java index 8130d25fa3..f2c310563e 100644 --- a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/entity/EntityPage.java +++ b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/entity/EntityPage.java @@ -156,7 +156,7 @@ public class EntityPage extends PageAbstract { Facets.gridPreload(objectSpec, objectAdapter); - final String titleStr = objectAdapter.titleString(); + final String titleStr = objectAdapter.getTitle(); setTitle(titleStr); WebMarkupContainer entityPageContainer = new WebMarkupContainer("entityPageContainer");