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/05/11 11:07:39 UTC

[isis] branch master updated: ISIS-3040: replaces the demo pdf example with a more sophisticated one

This is an automated email from the ASF dual-hosted git repository.

ahuber pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git


The following commit(s) were added to refs/heads/master by this push:
     new ba27fd3123 ISIS-3040: replaces the demo pdf example with a more sophisticated one
ba27fd3123 is described below

commit ba27fd312313ec6671edead06ed6913f47230d2e
Author: Andi Huber <ah...@apache.org>
AuthorDate: Wed May 11 13:07:31 2022 +0200

    ISIS-3040: replaces the demo pdf example with a more sophisticated one
    
    - also add memoization to the demo blob sampler
---
 .../PropertyLayout/PropertyLayoutMenu.java          |   3 +--
 .../types/isis/blobs/samples/IsisBlobsSamples.java  |  20 ++++++++++++++------
 .../samples/compressed.tracemonkey-pldi-09.pdf      | Bin 0 -> 1016315 bytes
 .../wkt/integration/res/pdfjs-integration-v2.js     |   2 +-
 4 files changed, 16 insertions(+), 9 deletions(-)

diff --git a/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/PropertyLayoutMenu.java b/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/PropertyLayoutMenu.java
index cacdb25c5d..1ce4205556 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/PropertyLayoutMenu.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/PropertyLayoutMenu.java
@@ -34,7 +34,6 @@ import org.apache.isis.applib.value.Blob;
 
 import lombok.RequiredArgsConstructor;
 import lombok.val;
-import lombok.extern.log4j.Log4j2;
 
 import demoapp.dom.domain.properties.PropertyLayout.cssClass.PropertyLayoutCssClassVm;
 import demoapp.dom.domain.properties.PropertyLayout.describedAs.PropertyLayoutDescribedAsVm;
@@ -55,7 +54,7 @@ import demoapp.dom.types.Samples;
 )
 @javax.annotation.Priority(PriorityPrecedence.EARLY)
 @RequiredArgsConstructor(onConstructor_ = { @Inject })
-@Log4j2
+//@Log4j2
 public class PropertyLayoutMenu {
 
     final ClockService clockService;
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/isis/blobs/samples/IsisBlobsSamples.java b/examples/demo/domain/src/main/java/demoapp/dom/types/isis/blobs/samples/IsisBlobsSamples.java
index 810a6001a9..5a42fb8599 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/isis/blobs/samples/IsisBlobsSamples.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/isis/blobs/samples/IsisBlobsSamples.java
@@ -24,9 +24,11 @@ import org.springframework.stereotype.Service;
 
 import org.apache.isis.applib.value.Blob;
 import org.apache.isis.applib.value.NamedWithMimeType;
+import org.apache.isis.commons.collections.Can;
 import org.apache.isis.commons.internal.base._Bytes;
 import org.apache.isis.commons.internal.resources._Resources;
 
+import lombok.Getter;
 import lombok.SneakyThrows;
 import lombok.val;
 
@@ -35,21 +37,27 @@ import demoapp.dom.types.Samples;
 @Service
 public class IsisBlobsSamples implements Samples<Blob> {
 
+    @Getter(lazy = true)
+    private final Can<Blob> blobs = Can.of(
+            "file-sample_100kB.docx",
+            //"file-sample_150kB.pdf",
+            "isis-logo-568x286.png",
+            "compressed.tracemonkey-pldi-09.pdf" // advanced example from the Mozilla pdf.js project
+            )
+        .map(this::loadBlob);
+
     @Override
     public Stream<Blob> stream() {
-        return Stream.of(
-                "file-sample_100kB.docx", "file-sample_150kB.pdf", "isis-logo-568x286.png")
-                .map(this::loadBlob);
+        return getBlobs().stream();
     }
 
-
     @SneakyThrows
-    private Blob loadBlob(String name) {
+    private Blob loadBlob(final String name) {
         val bytes = _Bytes.of(_Resources.load(IsisBlobsSamples.class, name ));
         return Blob.of(name, mimeTypeFor(name), bytes);
     }
 
-    private static NamedWithMimeType.CommonMimeType mimeTypeFor(String name) {
+    private static NamedWithMimeType.CommonMimeType mimeTypeFor(final String name) {
         if (name.endsWith(".png")) return NamedWithMimeType.CommonMimeType.PNG;
         if (name.endsWith(".docx")) return NamedWithMimeType.CommonMimeType.DOCX;
         if (name.endsWith(".pdf")) return NamedWithMimeType.CommonMimeType.PDF;
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/isis/blobs/samples/compressed.tracemonkey-pldi-09.pdf b/examples/demo/domain/src/main/java/demoapp/dom/types/isis/blobs/samples/compressed.tracemonkey-pldi-09.pdf
new file mode 100644
index 0000000000..65570184ac
Binary files /dev/null and b/examples/demo/domain/src/main/java/demoapp/dom/types/isis/blobs/samples/compressed.tracemonkey-pldi-09.pdf differ
diff --git a/extensions/vw/pdfjs/wicket/integration/src/main/java/org/apache/isis/extensions/pdfjs/wkt/integration/res/pdfjs-integration-v2.js b/extensions/vw/pdfjs/wicket/integration/src/main/java/org/apache/isis/extensions/pdfjs/wkt/integration/res/pdfjs-integration-v2.js
index 8cf35b70f9..a820f056ca 100644
--- a/extensions/vw/pdfjs/wicket/integration/src/main/java/org/apache/isis/extensions/pdfjs/wkt/integration/res/pdfjs-integration-v2.js
+++ b/extensions/vw/pdfjs/wicket/integration/src/main/java/org/apache/isis/extensions/pdfjs/wkt/integration/res/pdfjs-integration-v2.js
@@ -361,7 +361,7 @@
              * @param num Page number.
              */
             function renderPage(num) {
-				console.log("renderPage: " + num);
+				// console.log("renderPage: " + num);
 	
                 pageRendering = true;
                 // Using promise to fetch the page