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 2020/10/22 05:52:52 UTC

[isis] branch master updated (f72e0fc -> 62cbcf1)

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

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


    from f72e0fc  ISIS-2411: fixing mm tests (after Image removal)
     new fafa722  ISIS-2412: Wicket: remove IsisTimePanel (not used)
     new 3932f92  ISIS-2412: Wicket: renaming blob/clob package
     new 62cbcf1  ISIS-2412: mm: remove CloseableExtensions (use Java try with resources instead)

The 3 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../isis/commons/internal/image/_Images.java       | 95 +++++++++++++---------
 .../metamodel/commons/CloseableExtensions.java     | 40 ---------
 .../wicket/ui/components/about/AboutPanel.java     |  5 +-
 .../ui/components/about/JarManifestModel.java      | 25 +++---
 .../ui/components/scalars/ScalarPanelAbstract.java |  2 +-
 .../IsisBlobOrClobPanelAbstract.html               |  0
 .../IsisBlobOrClobPanelAbstract.java               | 13 +--
 .../{isisapplib => blobclob}/IsisBlobPanel.java    |  2 +-
 .../IsisBlobPanelFactory.java                      |  2 +-
 .../{isisapplib => blobclob}/IsisClobPanel.java    |  2 +-
 .../IsisClobPanelFactory.java                      |  2 +-
 .../ResourceLinkVolatile.java                      |  2 +-
 .../scalars/isisapplib/IsisTimePanel.java          | 42 ----------
 .../{isisapplib => passwd}/IsisPasswordPanel.java  |  2 +-
 .../IsisPasswordPanelFactory.java                  |  2 +-
 .../wicket/ui/panels/FormExecutorDefault.java      |  2 +-
 .../ComponentFactoryRegistrarDefault.java          |  6 +-
 17 files changed, 89 insertions(+), 155 deletions(-)
 delete mode 100644 core/metamodel/src/main/java/org/apache/isis/core/metamodel/commons/CloseableExtensions.java
 rename viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/{isisapplib => blobclob}/IsisBlobOrClobPanelAbstract.html (100%)
 rename viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/{isisapplib => blobclob}/IsisBlobOrClobPanelAbstract.java (97%)
 rename viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/{isisapplib => blobclob}/IsisBlobPanel.java (96%)
 rename viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/{isisapplib => blobclob}/IsisBlobPanelFactory.java (95%)
 rename viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/{isisapplib => blobclob}/IsisClobPanel.java (97%)
 rename viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/{isisapplib => blobclob}/IsisClobPanelFactory.java (95%)
 rename viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/{isisapplib => blobclob}/ResourceLinkVolatile.java (97%)
 delete mode 100644 viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisTimePanel.java
 rename viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/{isisapplib => passwd}/IsisPasswordPanel.java (97%)
 rename viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/{isisapplib => passwd}/IsisPasswordPanelFactory.java (95%)


[isis] 01/03: ISIS-2412: Wicket: remove IsisTimePanel (not used)

Posted by ah...@apache.org.
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 fafa7229d5a5a5f5d276d46be301a099fa62b97d
Author: Andi Huber <ah...@apache.org>
AuthorDate: Thu Oct 22 07:01:21 2020 +0200

    ISIS-2412: Wicket: remove IsisTimePanel (not used)
---
 .../isis/commons/internal/image/_Images.java       | 95 +++++++++++++---------
 .../scalars/isisapplib/IsisTimePanel.java          | 42 ----------
 2 files changed, 58 insertions(+), 79 deletions(-)

diff --git a/commons/src/main/java/org/apache/isis/commons/internal/image/_Images.java b/commons/src/main/java/org/apache/isis/commons/internal/image/_Images.java
index 1e61f13..85e7a10 100644
--- a/commons/src/main/java/org/apache/isis/commons/internal/image/_Images.java
+++ b/commons/src/main/java/org/apache/isis/commons/internal/image/_Images.java
@@ -28,9 +28,11 @@ import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
 import java.nio.charset.StandardCharsets;
 
+import javax.annotation.Nullable;
 import javax.imageio.ImageIO;
 
 import org.apache.isis.commons.internal.base._Bytes;
+import org.apache.isis.commons.internal.base._NullSafe;
 import org.apache.isis.commons.internal.primitives._Ints;
 
 import lombok.NonNull;
@@ -39,40 +41,6 @@ import lombok.val;
 
 public class _Images {
     
-    // -- PIXELS
-    
-    /**
-     * @return 2 dim. array of pixels defining this image, 
-     *      where each pixel is a 32 bit ARGB color value,
-     *      with {@code A} the alpha value as highest significant 8 bits
-     *      followed by {@code R} the red value and so on
-     */
-    public static int[][] toPixels(final @NonNull BufferedImage image){
-        final int width = image.getWidth();
-        final int height = image.getHeight();
-        val pixels = new int[height][width];
-        for(int lineIndex=0; lineIndex<height; ++lineIndex) {
-            image.getRGB(0, lineIndex, width, 1, pixels[lineIndex], 0, width);
-
-// debug            
-//            System.err.println(
-//                    _Ints.rowForm(pixels[lineIndex],10, Integer::toHexString));
-            
-        }
-        return pixels;
-    }
-    
-    /**
-     * @param pixels - 2 dim. array of pixels defining this image, 
-     *      where each pixel is a 32 bit ARGB color value,
-     *      with {@code A} the alpha value as highest significant 8 bits
-     *      followed by {@code R} the red value and so on
-     */
-    public static BufferedImage fromPixels(final @NonNull int[][] pixels){
-        val raster = createRasterARGB8888(pixels);
-        return createImageARGB8888(raster);
-    }
-
     // -- BYTES
     
     @SneakyThrows
@@ -104,22 +72,75 @@ public class _Images {
         return fromBytes(imageData);
     }
     
+    // -- PIXELS
+    
+    /**
+     * @return 2 dim. array of pixels defining this image, 
+     *      where each pixel is a 32 bit ARGB color value,
+     *      with {@code A} the alpha value as highest significant 8 bits
+     *      followed by {@code R} the red value and so on
+     */
+    @Nullable
+    public static int[][] toPixels(final @Nullable BufferedImage image){
+        
+        if(image==null) {
+            return null;
+        }
+        
+        final int width = image.getWidth();
+        final int height = image.getHeight();
+        val pixels = new int[height][width];
+        for(int lineIndex=0; lineIndex<height; ++lineIndex) {
+            image.getRGB(0, lineIndex, width, 1, pixels[lineIndex], 0, width);
+
+            // debug            
+            // System.err.println(
+            //           _Ints.rowForm(pixels[lineIndex],10, Integer::toHexString));
+            
+        }
+        return pixels;
+    }
+    
+    /**
+     * @param pixels - 2 dim. array of pixels defining this image, 
+     *      where each pixel is a 32 bit ARGB color value,
+     *      with {@code A} the alpha value as highest significant 8 bits
+     *      followed by {@code R} the red value and so on
+     */
+    @Nullable
+    public static BufferedImage fromPixels(final @Nullable int[][] pixels){
+        
+        final int height = _NullSafe.size(pixels);
+        final int width = height>0
+                ? _NullSafe.size(pixels[0])
+                : 0;
+        final int pixelCount = width * height;
+
+        if(pixelCount>0) {
+            // internally clones pixel data
+            val raster = createRasterARGB8888(pixels);
+            return createImageARGB8888(raster);
+        } else {
+            return null;
+        }
+    }
+    
     // -- RASTER UTILS (LOW LEVEL)
     
-    public static WritableRaster createRasterARGB8888(final int[][] pixels){
+    private static WritableRaster createRasterARGB8888(final int[][] pixels){
         final int height = pixels.length;
         final int width = pixels[0].length;
         return createRasterARGB8888(width, height, _Ints.flatten(pixels));
     }
     
-    public static WritableRaster createRasterARGB8888(final int width, final int height, final int[] dataArray){
+    private static WritableRaster createRasterARGB8888(final int width, final int height, final int[] dataArray){
         val dataBuffer = new DataBufferInt(dataArray, width * height);
         val sampleModel = new SinglePixelPackedSampleModel(
                 dataBuffer.getDataType(), width, height, BitMask8888); 
         return Raster.createWritableRaster(sampleModel, dataBuffer, null);
     }
     
-    public static BufferedImage createImageARGB8888(final WritableRaster raster){
+    private static BufferedImage createImageARGB8888(final WritableRaster raster){
         val directColorModel​ = 
                 new DirectColorModel(32, BitMask8888[0], BitMask8888[1], BitMask8888[2], BitMask8888[3]);
         return new BufferedImage(directColorModel​, raster, false, null);
diff --git a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisTimePanel.java b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisTimePanel.java
deleted file mode 100644
index d650d49..0000000
--- a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisTimePanel.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *        http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- */
-
-package org.apache.isis.viewer.wicket.ui.components.scalars.isisapplib;
-
-import org.apache.isis.viewer.wicket.model.models.ScalarModel;
-import org.apache.isis.viewer.wicket.ui.components.scalars.ScalarPanelTextFieldParseableAbstract;
-
-/**
- * Panel for rendering scalars of type {@link Time Isis' applib.Time}.
- */
-public class IsisTimePanel extends ScalarPanelTextFieldParseableAbstract {
-
-    private static final long serialVersionUID = 1L;
-
-    public IsisTimePanel(final String id, final ScalarModel scalarModel) {
-        super(id, scalarModel);
-    }
-
-    @Override
-    protected String getScalarPanelType() {
-        return "isisTimePanel";
-    }
-
-
-}


[isis] 02/03: ISIS-2412: Wicket: renaming blob/clob package

Posted by ah...@apache.org.
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 3932f928ebbe52a9f6f528d3a074b9fd28057218
Author: Andi Huber <ah...@apache.org>
AuthorDate: Thu Oct 22 07:04:43 2020 +0200

    ISIS-2412: Wicket: renaming blob/clob package
---
 .../viewer/wicket/ui/components/scalars/ScalarPanelAbstract.java    | 2 +-
 .../{isisapplib => blobclob}/IsisBlobOrClobPanelAbstract.html       | 0
 .../{isisapplib => blobclob}/IsisBlobOrClobPanelAbstract.java       | 2 +-
 .../components/scalars/{isisapplib => blobclob}/IsisBlobPanel.java  | 2 +-
 .../scalars/{isisapplib => blobclob}/IsisBlobPanelFactory.java      | 2 +-
 .../components/scalars/{isisapplib => blobclob}/IsisClobPanel.java  | 2 +-
 .../scalars/{isisapplib => blobclob}/IsisClobPanelFactory.java      | 2 +-
 .../scalars/{isisapplib => blobclob}/ResourceLinkVolatile.java      | 2 +-
 .../scalars/{isisapplib => passwd}/IsisPasswordPanel.java           | 2 +-
 .../scalars/{isisapplib => passwd}/IsisPasswordPanelFactory.java    | 2 +-
 .../apache/isis/viewer/wicket/ui/panels/FormExecutorDefault.java    | 2 +-
 .../registries/components/ComponentFactoryRegistrarDefault.java     | 6 +++---
 12 files changed, 13 insertions(+), 13 deletions(-)

diff --git a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/ScalarPanelAbstract.java b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/ScalarPanelAbstract.java
index 40f25af..066f62a 100644
--- a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/ScalarPanelAbstract.java
+++ b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/ScalarPanelAbstract.java
@@ -66,7 +66,7 @@ import org.apache.isis.viewer.wicket.ui.components.actionmenu.entityactions.Link
 import org.apache.isis.viewer.wicket.ui.components.property.PropertyEditFormPanel;
 import org.apache.isis.viewer.wicket.ui.components.property.PropertyEditPanel;
 import org.apache.isis.viewer.wicket.ui.components.propertyheader.PropertyEditPromptHeaderPanel;
-import org.apache.isis.viewer.wicket.ui.components.scalars.isisapplib.IsisBlobOrClobPanelAbstract;
+import org.apache.isis.viewer.wicket.ui.components.scalars.blobclob.IsisBlobOrClobPanelAbstract;
 import org.apache.isis.viewer.wicket.ui.components.scalars.primitive.BooleanPanel;
 import org.apache.isis.viewer.wicket.ui.components.scalars.reference.ReferencePanel;
 import org.apache.isis.viewer.wicket.ui.components.scalars.valuechoices.ValueChoicesSelect2Panel;
diff --git a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisBlobOrClobPanelAbstract.html b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/blobclob/IsisBlobOrClobPanelAbstract.html
similarity index 100%
rename from viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisBlobOrClobPanelAbstract.html
rename to viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/blobclob/IsisBlobOrClobPanelAbstract.html
diff --git a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisBlobOrClobPanelAbstract.java b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/blobclob/IsisBlobOrClobPanelAbstract.java
similarity index 99%
rename from viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisBlobOrClobPanelAbstract.java
rename to viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/blobclob/IsisBlobOrClobPanelAbstract.java
index 08ba8b3..88fe929 100644
--- a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisBlobOrClobPanelAbstract.java
+++ b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/blobclob/IsisBlobOrClobPanelAbstract.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.viewer.wicket.ui.components.scalars.isisapplib;
+package org.apache.isis.viewer.wicket.ui.components.scalars.blobclob;
 
 import java.awt.image.BufferedImage;
 import java.io.ByteArrayInputStream;
diff --git a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisBlobPanel.java b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/blobclob/IsisBlobPanel.java
similarity index 96%
rename from viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisBlobPanel.java
rename to viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/blobclob/IsisBlobPanel.java
index abbe855..e9c5b8b 100644
--- a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisBlobPanel.java
+++ b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/blobclob/IsisBlobPanel.java
@@ -17,7 +17,7 @@
  *  under the License.
  */
 
-package org.apache.isis.viewer.wicket.ui.components.scalars.isisapplib;
+package org.apache.isis.viewer.wicket.ui.components.scalars.blobclob;
 
 
 import java.util.List;
diff --git a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisBlobPanelFactory.java b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/blobclob/IsisBlobPanelFactory.java
similarity index 95%
rename from viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisBlobPanelFactory.java
rename to viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/blobclob/IsisBlobPanelFactory.java
index c3fbea4..1eabba0 100644
--- a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisBlobPanelFactory.java
+++ b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/blobclob/IsisBlobPanelFactory.java
@@ -17,7 +17,7 @@
  *  under the License.
  */
 
-package org.apache.isis.viewer.wicket.ui.components.scalars.isisapplib;
+package org.apache.isis.viewer.wicket.ui.components.scalars.blobclob;
 
 import org.apache.wicket.Component;
 
diff --git a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisClobPanel.java b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/blobclob/IsisClobPanel.java
similarity index 97%
rename from viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisClobPanel.java
rename to viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/blobclob/IsisClobPanel.java
index 0fdd2ff..ee767a0 100644
--- a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisClobPanel.java
+++ b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/blobclob/IsisClobPanel.java
@@ -17,7 +17,7 @@
  *  under the License.
  */
 
-package org.apache.isis.viewer.wicket.ui.components.scalars.isisapplib;
+package org.apache.isis.viewer.wicket.ui.components.scalars.blobclob;
 
 
 import java.nio.charset.Charset;
diff --git a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisClobPanelFactory.java b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/blobclob/IsisClobPanelFactory.java
similarity index 95%
rename from viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisClobPanelFactory.java
rename to viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/blobclob/IsisClobPanelFactory.java
index d9dc802..93ac8fc 100644
--- a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisClobPanelFactory.java
+++ b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/blobclob/IsisClobPanelFactory.java
@@ -17,7 +17,7 @@
  *  under the License.
  */
 
-package org.apache.isis.viewer.wicket.ui.components.scalars.isisapplib;
+package org.apache.isis.viewer.wicket.ui.components.scalars.blobclob;
 
 import org.apache.wicket.Component;
 
diff --git a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/ResourceLinkVolatile.java b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/blobclob/ResourceLinkVolatile.java
similarity index 97%
rename from viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/ResourceLinkVolatile.java
rename to viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/blobclob/ResourceLinkVolatile.java
index 2bed74a..2570cb5 100644
--- a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/ResourceLinkVolatile.java
+++ b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/blobclob/ResourceLinkVolatile.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.viewer.wicket.ui.components.scalars.isisapplib;
+package org.apache.isis.viewer.wicket.ui.components.scalars.blobclob;
 
 import java.util.UUID;
 
diff --git a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisPasswordPanel.java b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/passwd/IsisPasswordPanel.java
similarity index 97%
rename from viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisPasswordPanel.java
rename to viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/passwd/IsisPasswordPanel.java
index 9f3ed50..5c38996 100644
--- a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisPasswordPanel.java
+++ b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/passwd/IsisPasswordPanel.java
@@ -17,7 +17,7 @@
  *  under the License.
  */
 
-package org.apache.isis.viewer.wicket.ui.components.scalars.isisapplib;
+package org.apache.isis.viewer.wicket.ui.components.scalars.passwd;
 
 import org.apache.wicket.markup.ComponentTag;
 import org.apache.wicket.markup.html.form.AbstractTextComponent;
diff --git a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisPasswordPanelFactory.java b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/passwd/IsisPasswordPanelFactory.java
similarity index 95%
rename from viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisPasswordPanelFactory.java
rename to viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/passwd/IsisPasswordPanelFactory.java
index e4b188d..a459d4f 100644
--- a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisPasswordPanelFactory.java
+++ b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/passwd/IsisPasswordPanelFactory.java
@@ -17,7 +17,7 @@
  *  under the License.
  */
 
-package org.apache.isis.viewer.wicket.ui.components.scalars.isisapplib;
+package org.apache.isis.viewer.wicket.ui.components.scalars.passwd;
 
 import org.apache.wicket.Component;
 
diff --git a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/FormExecutorDefault.java b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/FormExecutorDefault.java
index 7bc9872..c51f225 100644
--- a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/FormExecutorDefault.java
+++ b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/FormExecutorDefault.java
@@ -62,7 +62,7 @@ import org.apache.isis.viewer.wicket.model.models.EntityModel;
 import org.apache.isis.viewer.wicket.model.models.FormExecutor;
 import org.apache.isis.viewer.wicket.model.models.FormExecutorContext;
 import org.apache.isis.viewer.wicket.model.models.ScalarModel;
-import org.apache.isis.viewer.wicket.ui.components.scalars.isisapplib.IsisBlobOrClobPanelAbstract;
+import org.apache.isis.viewer.wicket.ui.components.scalars.blobclob.IsisBlobOrClobPanelAbstract;
 import org.apache.isis.viewer.wicket.ui.errors.JGrowlUtil;
 import org.apache.isis.viewer.wicket.ui.util.Components;
 
diff --git a/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/registries/components/ComponentFactoryRegistrarDefault.java b/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/registries/components/ComponentFactoryRegistrarDefault.java
index 8ef750d..ad80ce4 100644
--- a/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/registries/components/ComponentFactoryRegistrarDefault.java
+++ b/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/registries/components/ComponentFactoryRegistrarDefault.java
@@ -54,11 +54,10 @@ import org.apache.isis.viewer.wicket.ui.components.footer.FooterPanelFactory;
 import org.apache.isis.viewer.wicket.ui.components.header.HeaderPanelFactory;
 import org.apache.isis.viewer.wicket.ui.components.property.PropertyEditFormPanelFactory;
 import org.apache.isis.viewer.wicket.ui.components.property.PropertyEditPanelFactory;
+import org.apache.isis.viewer.wicket.ui.components.scalars.blobclob.IsisBlobPanelFactory;
+import org.apache.isis.viewer.wicket.ui.components.scalars.blobclob.IsisClobPanelFactory;
 import org.apache.isis.viewer.wicket.ui.components.scalars.bookmark.BookmarkPanelFactory;
 import org.apache.isis.viewer.wicket.ui.components.scalars.image.JavaAwtImagePanelFactory;
-import org.apache.isis.viewer.wicket.ui.components.scalars.isisapplib.IsisBlobPanelFactory;
-import org.apache.isis.viewer.wicket.ui.components.scalars.isisapplib.IsisClobPanelFactory;
-import org.apache.isis.viewer.wicket.ui.components.scalars.isisapplib.IsisPasswordPanelFactory;
 import org.apache.isis.viewer.wicket.ui.components.scalars.jdk8time.Jdk8LocalDatePanelFactory;
 import org.apache.isis.viewer.wicket.ui.components.scalars.jdk8time.Jdk8LocalDateTimePanelFactory;
 import org.apache.isis.viewer.wicket.ui.components.scalars.jdk8time.Jdk8OffsetDateTimePanelFactory;
@@ -73,6 +72,7 @@ import org.apache.isis.viewer.wicket.ui.components.scalars.jodatime.JodaLocalDat
 import org.apache.isis.viewer.wicket.ui.components.scalars.jodatime.JodaLocalDateTimePanelFactory;
 import org.apache.isis.viewer.wicket.ui.components.scalars.markup.MarkupPanelFactories;
 import org.apache.isis.viewer.wicket.ui.components.scalars.oiddto.OidDtoPanelFactory;
+import org.apache.isis.viewer.wicket.ui.components.scalars.passwd.IsisPasswordPanelFactory;
 import org.apache.isis.viewer.wicket.ui.components.scalars.primitive.BooleanPanelFactory;
 import org.apache.isis.viewer.wicket.ui.components.scalars.primitive.BytePanelFactory;
 import org.apache.isis.viewer.wicket.ui.components.scalars.primitive.CharacterPanelFactory;


[isis] 03/03: ISIS-2412: mm: remove CloseableExtensions (use Java try with resources instead)

Posted by ah...@apache.org.
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 62cbcf1ed787eb9a6bfda645f1f49da3ffe4a579
Author: Andi Huber <ah...@apache.org>
AuthorDate: Thu Oct 22 07:43:17 2020 +0200

    ISIS-2412: mm: remove CloseableExtensions (use Java try with resources
    instead)
---
 .../metamodel/commons/CloseableExtensions.java     | 40 ----------------------
 .../wicket/ui/components/about/AboutPanel.java     |  5 +--
 .../ui/components/about/JarManifestModel.java      | 25 +++++++-------
 .../blobclob/IsisBlobOrClobPanelAbstract.java      | 11 ++----
 4 files changed, 18 insertions(+), 63 deletions(-)

diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/commons/CloseableExtensions.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/commons/CloseableExtensions.java
deleted file mode 100644
index d3d420c..0000000
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/commons/CloseableExtensions.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *        http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- */
-
-package org.apache.isis.core.metamodel.commons;
-
-import java.io.Closeable;
-
-public final class CloseableExtensions {
-
-    private CloseableExtensions() {
-    }
-
-    public static void closeSafely(final Closeable extendee) {
-        if (extendee != null) {
-            try {
-                extendee.close();
-            } catch (final Exception ignore) {
-                // ignore
-            }
-        }
-    }
-
-
-}
diff --git a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/about/AboutPanel.java b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/about/AboutPanel.java
index 298abfc..356644e 100644
--- a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/about/AboutPanel.java
+++ b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/about/AboutPanel.java
@@ -23,6 +23,7 @@ import java.io.InputStream;
 
 import javax.inject.Inject;
 import javax.inject.Named;
+import javax.inject.Provider;
 
 import org.apache.wicket.markup.html.basic.Label;
 
@@ -68,7 +69,7 @@ public class AboutPanel extends PanelAbstract<AboutModel> {
      */
     @Inject
     @Named("metaInfManifest")
-    private transient InputStream metaInfManifestIs;
+    private transient Provider<InputStream> metaInfManifestProvider;
 
     private JarManifestModel jarManifestModel;
 
@@ -80,7 +81,7 @@ public class AboutPanel extends PanelAbstract<AboutModel> {
         add(new LabelVisibleOnlyIfNonEmpty(ID_ABOUT_MESSAGE, getIsisConfiguration().getViewer().getWicket().getApplication().getAbout()));
 
         if(jarManifestModel == null) {
-            jarManifestModel = new JarManifestModel(super.getCommonContext(),  metaInfManifestIs);
+            jarManifestModel = new JarManifestModel(super.getCommonContext(), metaInfManifestProvider);
         }
 
         add(new JarManifestPanel(ID_MANIFEST_ATTRIBUTES, jarManifestModel));
diff --git a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/about/JarManifestModel.java b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/about/JarManifestModel.java
index 2245c34..5bdc914 100644
--- a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/about/JarManifestModel.java
+++ b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/about/JarManifestModel.java
@@ -31,13 +31,16 @@ import java.util.jar.JarFile;
 import java.util.jar.Manifest;
 import java.util.stream.Collectors;
 
+import javax.inject.Provider;
+
 import org.apache.isis.commons.internal.base._Strings;
 import org.apache.isis.commons.internal.collections._Lists;
 import org.apache.isis.commons.internal.context._Context;
-import org.apache.isis.core.metamodel.commons.CloseableExtensions;
 import org.apache.isis.core.runtime.context.IsisAppCommonContext;
 import org.apache.isis.viewer.wicket.model.models.ModelAbstract;
 
+import lombok.val;
+
 public class JarManifestModel extends ModelAbstract<JarManifestModel> {
 
     private static final long serialVersionUID = 1L;
@@ -51,22 +54,21 @@ public class JarManifestModel extends ModelAbstract<JarManifestModel> {
      * @param commonContext 
      * @param metaInfManifestIs provide using <tt>getServletContext().getResourceAsStream("/META-INF/MANIFEST.MF")</tt>
      */
-    public JarManifestModel(IsisAppCommonContext commonContext, InputStream metaInfManifestIs) {
+    public JarManifestModel(
+            IsisAppCommonContext commonContext, 
+            Provider<InputStream> metaInfManifestProvider) {
 
         super(commonContext);
         
         Manifest manifest;
-        try {
+        try(val metaInfManifestIs = metaInfManifestProvider.get()) {
             manifest = new Manifest(metaInfManifestIs);
             manifests.add(JarManifestAttributes.jarName("Web archive (war file)"));
             manifests.add(JarManifestAttributes.jarUrl(null));
             addAttributes(manifest, manifests);
-
         } catch (Exception ex) {
             // ignore
-        } finally {
-            CloseableExtensions.closeSafely(metaInfManifestIs);
-        }
+        } 
 
         Enumeration<?> resEnum;
         try {
@@ -80,18 +82,15 @@ public class JarManifestModel extends ModelAbstract<JarManifestModel> {
             JarManifest jarManifest = new JarManifest(url);
             jarManifests.add(jarManifest);
 
-            InputStream is = null;
-            try {
-                is = url.openStream();
+            
+            try(val is = url.openStream()) {
                 if (is != null) {
                     manifest = new Manifest(is);
                     jarManifest.addAttributesFrom(manifest);
                 }
             } catch(Exception e3) {
                 // ignore
-            } finally {
-                CloseableExtensions.closeSafely(is);
-            }
+            } 
         }
 
         Collections.sort(jarManifests);
diff --git a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/blobclob/IsisBlobOrClobPanelAbstract.java b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/blobclob/IsisBlobOrClobPanelAbstract.java
index 88fe929..faac699 100644
--- a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/blobclob/IsisBlobOrClobPanelAbstract.java
+++ b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/blobclob/IsisBlobOrClobPanelAbstract.java
@@ -20,7 +20,6 @@ package org.apache.isis.viewer.wicket.ui.components.scalars.blobclob;
 
 import java.awt.image.BufferedImage;
 import java.io.ByteArrayInputStream;
-import java.io.IOException;
 import java.util.List;
 import java.util.Optional;
 
@@ -46,7 +45,6 @@ import org.apache.wicket.request.resource.IResource;
 
 import org.apache.isis.applib.value.Blob;
 import org.apache.isis.applib.value.NamedWithMimeType;
-import org.apache.isis.core.metamodel.commons.CloseableExtensions;
 import org.apache.isis.viewer.wicket.model.models.ScalarModel;
 import org.apache.isis.viewer.wicket.ui.components.scalars.ScalarPanelAbstract;
 import org.apache.isis.viewer.wicket.ui.components.widgets.bootstrap.FormGroup;
@@ -178,14 +176,11 @@ extends ScalarPanelAbstract {
             return null;
         }
 
-        final ByteArrayInputStream bais = new ByteArrayInputStream(bytes);
-        try {
+        try(val bais = new ByteArrayInputStream(bytes)) {
             return ImageIO.read(bais);
-        } catch (IOException ex) {
+        } catch (Exception ex) {
             return null;
-        } finally {
-            CloseableExtensions.closeSafely(bais);
-        }
+        } 
     }