You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by ah...@apache.org on 2022/09/01 03:59:38 UTC
[isis] 03/03: ISIS-3167: remove ManagedObject.titleString()
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 <ah...@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");