This is an automated email from the ASF dual-hosted git repository.
ahuber pushed a commit to branch v4
in repository https://gitbox.apache.org/repos/asf/causeway.git
The following commit(s) were added to refs/heads/v4 by this push:
new ad4d36e4f95 CAUSEWAY-3889: remarks on the API design
ad4d36e4f95 is described below
commit ad4d36e4f959c838a251a6aedb28620a671774b3
Author: a.huber <[email protected]>
AuthorDate: Mon Aug 18 18:04:12 2025 +0200
CAUSEWAY-3889: remarks on the API design
needs polishing
---
api/applib/src/main/java/org/apache/causeway/applib/value/Markup.java | 3 +++
.../main/java/org/apache/causeway/applib/value/NamedWithMimeType.java | 3 +++
.../ui/components/object/icontitle/ObjectIconAndTitlePanel.java | 2 ++
.../src/main/java/org/apache/causeway/viewer/wicket/ui/util/Wkt.java | 4 +---
4 files changed, 9 insertions(+), 3 deletions(-)
diff --git
a/api/applib/src/main/java/org/apache/causeway/applib/value/Markup.java
b/api/applib/src/main/java/org/apache/causeway/applib/value/Markup.java
index b680487a0e0..27c2b97ed61 100644
--- a/api/applib/src/main/java/org/apache/causeway/applib/value/Markup.java
+++ b/api/applib/src/main/java/org/apache/causeway/applib/value/Markup.java
@@ -61,6 +61,9 @@ public static Markup embeddedImage(final @Nullable DataUri
dataUri) {
: new Markup(null);
}
+ //TODO[causeway-applib-CAUSEWAY-3889] perhaps remove!
+ // instead lets have image specific factory methods for DataUri
+ @Deprecated
public static Markup embeddedImage(final ImageType imageType, byte[]
imageData) {
Objects.requireNonNull(imageType);
Objects.requireNonNull(imageData);
diff --git
a/api/applib/src/main/java/org/apache/causeway/applib/value/NamedWithMimeType.java
b/api/applib/src/main/java/org/apache/causeway/applib/value/NamedWithMimeType.java
index b26f1644c9f..dfa16903e46 100644
---
a/api/applib/src/main/java/org/apache/causeway/applib/value/NamedWithMimeType.java
+++
b/api/applib/src/main/java/org/apache/causeway/applib/value/NamedWithMimeType.java
@@ -64,6 +64,9 @@ default int compareTo(final NamedWithMimeType o) {
: null);
}
+ //TODO[causeway-applib-CAUSEWAY-3889] perhaps remove!
+ // we need something similar for constructing DataUri instances for
embedded images
+ @Deprecated
@RequiredArgsConstructor
@Getter @Accessors(fluent=true)
public enum ImageType {
diff --git
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/object/icontitle/ObjectIconAndTitlePanel.java
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/object/icontitle/ObjectIconAndTitlePanel.java
index d8021f913c6..701faab812f 100644
---
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/object/icontitle/ObjectIconAndTitlePanel.java
+++
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/object/icontitle/ObjectIconAndTitlePanel.java
@@ -115,6 +115,8 @@ private AbstractLink createLinkWithIconAndTitle() {
.accept(
objectIcon->{
if(objectIcon instanceof ObjectIconEmbedded
iconEmbedded) {
+ //TODO[causeway-viewer-wicket-ui-CAUSEWAY-3889]
for embedded images we me might want to have a different CSS class
+ //e.g. don't constrain image sizes, as these
should be driven by embedded data
Wkt.imageAddEmbedded(link, ID_OBJECT_ICON,
iconEmbedded.dataUri());
} else if(objectIcon instanceof ObjectIconUrlBased
iconUrlBased) {
Wkt.imageAddCachable(link, ID_OBJECT_ICON,
diff --git
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/util/Wkt.java
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/util/Wkt.java
index ddfc45b352b..4fd1a8c7ea4 100644
---
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/util/Wkt.java
+++
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/util/Wkt.java
@@ -832,9 +832,7 @@ public Image imageEmbedded(final String id, final DataUri
dataUri) {
return new Image(id, "embedded") {
private static final long serialVersionUID = 1L;
@Override protected boolean shouldAddAntiCacheParameter() { return
false; }
-
- @Override
- protected String buildSrcAttribute(ComponentTag tag) {
+ @Override protected String buildSrcAttribute(ComponentTag tag) {
return dataUri.toExternalForm();
}
};