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/09/23 12:57:54 UTC
[isis] branch master updated: ISIS-2437: Tooling/Commons: house
keeping
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 14a6bfc ISIS-2437: Tooling/Commons: house keeping
14a6bfc is described below
commit 14a6bfc45dbaa67db68993b5f226767e8aba8a31
Author: Andi Huber <ah...@apache.org>
AuthorDate: Wed Sep 23 14:57:24 2020 +0200
ISIS-2437: Tooling/Commons: house keeping
---
.../isis/commons/internal/base/_Strings.java | 31 ++++++-----------
.../apache/isis/commons/internal/base/_Text.java | 23 +++++++++++--
.../java/org/apache/isis/tooling/c4/test/Util.java | 40 ----------------------
.../tooling/adocmodel/test/AsciiDocWriterTest.java | 30 ++++++++--------
.../apache/isis/tooling/adocmodel/test/Util.java | 34 ------------------
.../projectmodel/test/GradleSettingsTest.java | 8 ++---
.../services/TranslationsResolverWicket.java | 6 ++--
7 files changed, 53 insertions(+), 119 deletions(-)
diff --git a/commons/src/main/java/org/apache/isis/commons/internal/base/_Strings.java b/commons/src/main/java/org/apache/isis/commons/internal/base/_Strings.java
index 77db933..3489574 100644
--- a/commons/src/main/java/org/apache/isis/commons/internal/base/_Strings.java
+++ b/commons/src/main/java/org/apache/isis/commons/internal/base/_Strings.java
@@ -19,16 +19,10 @@
package org.apache.isis.commons.internal.base;
-import java.io.BufferedReader;
-import java.io.IOException;
import java.io.InputStream;
-import java.io.InputStreamReader;
import java.nio.charset.Charset;
import java.nio.charset.StandardCharsets;
-import java.util.ArrayList;
import java.util.Arrays;
-import java.util.Collections;
-import java.util.List;
import java.util.Map;
import java.util.Optional;
import java.util.Scanner;
@@ -56,6 +50,8 @@ import static org.apache.isis.commons.internal.base._With.requiresNotEmpty;
import static org.apache.isis.commons.internal.functions._Predicates.not;
import lombok.NonNull;
+import lombok.SneakyThrows;
+import lombok.val;
/**
* <h1>- internal use only -</h1>
@@ -520,21 +516,14 @@ public final class _Strings {
}
}
- public static List<String> readAllLines(@Nullable final InputStream input, Charset charset) throws IOException {
- requires(charset, "charset");
- if(input==null) {
- return Collections.emptyList();
- }
- try (BufferedReader reader = new BufferedReader(new InputStreamReader(input, charset))) {
- List<String> result = new ArrayList<>();
- for (;;) {
- String line = reader.readLine();
- if (line == null)
- break;
- result.add(line);
- }
- return result;
- }
+ @SneakyThrows
+ public static String readFromResource(
+ final @NonNull Class<?> resourceLocation,
+ final @NonNull String resourceName,
+ final @NonNull Charset charset) {
+ try(val input = resourceLocation.getResourceAsStream(resourceName)){
+ return read(input, charset);
+ }
}
// -- BYTE ARRAY CONVERSION
diff --git a/commons/src/main/java/org/apache/isis/commons/internal/base/_Text.java b/commons/src/main/java/org/apache/isis/commons/internal/base/_Text.java
index 956fba7..b15bd69 100644
--- a/commons/src/main/java/org/apache/isis/commons/internal/base/_Text.java
+++ b/commons/src/main/java/org/apache/isis/commons/internal/base/_Text.java
@@ -19,7 +19,10 @@
package org.apache.isis.commons.internal.base;
+import java.io.File;
+import java.io.FileInputStream;
import java.io.InputStream;
+import java.net.URL;
import java.nio.charset.Charset;
import java.util.ArrayList;
import java.util.Scanner;
@@ -106,6 +109,24 @@ public final class _Text {
return readLines(input, charset);
}
}
+
+ @SneakyThrows
+ public static Can<String> readLinesFromUrl(
+ final @NonNull URL url,
+ final @NonNull Charset charset) {
+ try(val input = url.openStream()){
+ return readLines(input, charset);
+ }
+ }
+
+ @SneakyThrows
+ public static Can<String> readLinesFromFile(
+ final @NonNull File file,
+ final @NonNull Charset charset) {
+ try(val input = new FileInputStream(file)){
+ return readLines(input, charset);
+ }
+ }
// -- NORMALIZING
@@ -290,7 +311,5 @@ public final class _Text {
return line->mapper.apply(indexRef[0]++, line);
}
-
-
}
diff --git a/tooling/c4modeling/src/test/java/org/apache/isis/tooling/c4/test/Util.java b/tooling/c4modeling/src/test/java/org/apache/isis/tooling/c4/test/Util.java
deleted file mode 100644
index 3fb4320..0000000
--- a/tooling/c4modeling/src/test/java/org/apache/isis/tooling/c4/test/Util.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.tooling.c4.test;
-
-import java.nio.charset.StandardCharsets;
-
-import org.apache.isis.commons.collections.Can;
-import org.apache.isis.commons.internal.base._Text;
-
-final class Util {
-
- // -- RESOURCE LOADING
-
- public static Can<String> readResource(Class<?> resourceLocation, String resourceName) {
- return _Text.readLinesFromResource(resourceLocation, resourceName, StandardCharsets.UTF_8);
- }
-
- public static Can<String> readResource(Object resourceLocation, String resourceName) {
- return readResource(resourceLocation.getClass(), resourceName);
- }
-
-
-
-}
diff --git a/tooling/model4adoc/src/test/java/org/apache/isis/tooling/adocmodel/test/AsciiDocWriterTest.java b/tooling/model4adoc/src/test/java/org/apache/isis/tooling/adocmodel/test/AsciiDocWriterTest.java
index 5bb04f6..466094b 100644
--- a/tooling/model4adoc/src/test/java/org/apache/isis/tooling/adocmodel/test/AsciiDocWriterTest.java
+++ b/tooling/model4adoc/src/test/java/org/apache/isis/tooling/adocmodel/test/AsciiDocWriterTest.java
@@ -19,6 +19,7 @@
package org.apache.isis.tooling.adocmodel.test;
import java.io.IOException;
+import java.nio.charset.StandardCharsets;
import java.util.HashMap;
import org.asciidoctor.Asciidoctor;
@@ -31,6 +32,8 @@ import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertEquals;
+import org.apache.isis.commons.internal.base._Strings;
+import org.apache.isis.commons.internal.base._Text;
import org.apache.isis.tooling.model4adoc.AsciiDocWriter;
import static org.apache.isis.tooling.model4adoc.AsciiDocFactory.cell;
@@ -69,8 +72,6 @@ class AsciiDocWriterTest {
@Test
void testSimpleTable() throws IOException {
- val adocRef = Util.readResource(this, "simple-table.adoc");
-
val table = table(doc);
table.setTitle("Table");
@@ -90,15 +91,14 @@ class AsciiDocWriterTest {
//System.out.println(actualAdoc); debug
- assertEquals(adocRef, actualAdoc);
-
+ _Text.assertTextEquals(
+ _Text.readLinesFromResource(this.getClass(), "simple-table.adoc", StandardCharsets.UTF_8),
+ actualAdoc);
}
@Test
void testAttributedTable() throws IOException {
- val adocRef = Util.readResource(this, "attributed-table.adoc");
-
val table = table(doc);
table.setTitle("Some table");
table.setAttribute("cols", "3m,2a", true);
@@ -114,31 +114,32 @@ class AsciiDocWriterTest {
//System.out.println(actualAdoc); // debug
- assertEquals(adocRef, actualAdoc);
+ _Text.assertTextEquals(
+ _Text.readLinesFromResource(this.getClass(), "attributed-table.adoc", StandardCharsets.UTF_8),
+ actualAdoc);
}
@Test @Disabled
void testSimpleTableModel() throws IOException {
- val adocRef = Util.readResource(this, "simple-table.adoc");
+ val adocRef = _Strings.readFromResource(this.getClass(), "simple-table.adoc", StandardCharsets.UTF_8);
val asciidoctor = Asciidoctor.Factory.create();
val refDoc = asciidoctor.load(adocRef, new HashMap<String, Object>());
String actualAdoc = AsciiDocWriter.toString(refDoc);
- debug(refDoc);
+ //debug(refDoc);
- System.out.println(actualAdoc);
+ //System.out.println(actualAdoc); //debug
- assertEquals(adocRef, actualAdoc);
+ _Text.assertTextEquals(adocRef, actualAdoc);
}
-
@Test
void testAttributedTableModel() throws IOException {
- val adocRef = Util.readResource(this, "attributed-table.adoc");
+ val adocRef = _Strings.readFromResource(this.getClass(), "attributed-table.adoc", StandardCharsets.UTF_8);
val asciidoctor = Asciidoctor.Factory.create();
val refDoc = asciidoctor.load(adocRef, new HashMap<String, Object>());
@@ -148,9 +149,10 @@ class AsciiDocWriterTest {
//System.out.println(actualAdoc); // debug
- assertEquals(adocRef, actualAdoc);
+ _Text.assertTextEquals(adocRef, actualAdoc);
}
+ @SuppressWarnings("unused")
private static void debug(Document doc) {
val refTable = (Table)doc.getBlocks().get(0);
val refCol = refTable.getColumns().get(0);
diff --git a/tooling/model4adoc/src/test/java/org/apache/isis/tooling/adocmodel/test/Util.java b/tooling/model4adoc/src/test/java/org/apache/isis/tooling/adocmodel/test/Util.java
deleted file mode 100644
index 2f89f7f..0000000
--- a/tooling/model4adoc/src/test/java/org/apache/isis/tooling/adocmodel/test/Util.java
+++ /dev/null
@@ -1,34 +0,0 @@
-package org.apache.isis.tooling.adocmodel.test;
-
-import java.io.InputStream;
-import java.nio.charset.StandardCharsets;
-import java.util.Scanner;
-
-import javax.annotation.Nullable;
-
-final class Util {
-
- // -- RESOURCE LOADING
-
- public static String read(final @Nullable InputStream input) {
- if(input==null) {
- return "";
- }
- // see https://stackoverflow.com/questions/309424/how-to-read-convert-an-inputstream-into-a-string-in-java
- try(Scanner scanner = new Scanner(input, StandardCharsets.UTF_8.name())){
- scanner.useDelimiter("\\A");
- return scanner.hasNext() ? scanner.next().replace("\r", "") : "";
- }
- }
-
- public static String readResource(Class<?> location, String name) {
- return read(location.getResourceAsStream(name));
- }
-
- public static String readResource(Object location, String name) {
- return readResource(location.getClass(), name);
- }
-
-
-
-}
diff --git a/tooling/projectmodel/src/test/java/org/apache/isis/tooling/projectmodel/test/GradleSettingsTest.java b/tooling/projectmodel/src/test/java/org/apache/isis/tooling/projectmodel/test/GradleSettingsTest.java
index 6ff7df1..353a135 100644
--- a/tooling/projectmodel/src/test/java/org/apache/isis/tooling/projectmodel/test/GradleSettingsTest.java
+++ b/tooling/projectmodel/src/test/java/org/apache/isis/tooling/projectmodel/test/GradleSettingsTest.java
@@ -19,7 +19,6 @@
package org.apache.isis.tooling.projectmodel.test;
import java.io.File;
-import java.io.FileInputStream;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.time.LocalDate;
@@ -33,7 +32,7 @@ import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertNotNull;
-import org.apache.isis.commons.internal.base._Strings;
+import org.apache.isis.commons.internal.base._Text;
import org.apache.isis.tooling.projectmodel.gradle.GradleSettings;
import org.apache.isis.tooling.projectmodel.gradle.GradleSettingsFactory;
import org.apache.isis.tooling.projectmodel.gradle.GradleSettingsWriter;
@@ -98,12 +97,11 @@ class GradleSettingsTest extends ProjectModelTestAbstract {
private void checkBuildFile(File buildFile, Set<String> knownBuildArtifactNames) {
//System.out.println(String.format("checking %s", buildFile.getAbsolutePath()));
- val lines = _Strings.readAllLines(new FileInputStream(buildFile), StandardCharsets.UTF_8);
-
+ val lines = _Text.readLinesFromFile(buildFile, StandardCharsets.UTF_8);
for(val line : lines) {
checkBuildFileLine(buildFile, line, knownBuildArtifactNames);
}
-
+
}
private void checkBuildFileLine(File buildFile, String line, Set<String> knownBuildArtifactNames) {
diff --git a/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/services/TranslationsResolverWicket.java b/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/services/TranslationsResolverWicket.java
index 1777e33..695fbfe 100644
--- a/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/services/TranslationsResolverWicket.java
+++ b/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/services/TranslationsResolverWicket.java
@@ -38,7 +38,7 @@ import org.springframework.stereotype.Service;
import org.apache.isis.applib.annotation.OrderPrecedence;
import org.apache.isis.applib.services.i18n.TranslationsResolver;
-import org.apache.isis.commons.internal.base._Strings;
+import org.apache.isis.commons.internal.base._Text;
import org.apache.isis.viewer.wicket.viewer.wicketapp.IsisWicketApplication;
import lombok.val;
@@ -96,8 +96,8 @@ public class TranslationsResolverWicket implements TranslationsResolver {
return null;
}
- val lines = _Strings.readAllLines(url.openStream(), StandardCharsets.UTF_8);
- val acceptedLines = lines.stream()
+ val acceptedLines = _Text.readLinesFromUrl(url, StandardCharsets.UTF_8)
+ .stream()
.filter(input->input != null && nonEmpty.matcher(input).matches())
.collect(Collectors.toList());