Skip to content

Commit 8abbbe2

Browse files
committed
Fix namespace property parser and update dependency
1 parent 7c8a6e1 commit 8abbbe2

File tree

3 files changed

+47
-25
lines changed

3 files changed

+47
-25
lines changed

pom.xml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,7 @@
6363
<maven.compiler.target>11</maven.compiler.target>
6464
<spring.version>5.2.16.RELEASE</spring.version>
6565
<postgresql.version>42.2.14</postgresql.version>
66+
<dependency-check-maven.version>6.3.1</dependency-check-maven.version>
6667
</properties>
6768

6869
<dependencies>
@@ -198,7 +199,7 @@
198199
<plugin>
199200
<groupId>org.owasp</groupId>
200201
<artifactId>dependency-check-maven</artifactId>
201-
<version>6.2.2</version>
202+
<version>${dependency-check-maven.version}</version>
202203
<executions>
203204
<execution>
204205
<goals>

src/main/java/org/zalando/sprocwrapper/globalvaluetransformer/GlobalValueTransformerLoader.java

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -48,11 +48,7 @@ public class GlobalValueTransformerLoader {
4848
myNameSpaceToScan = namespaceToScan;
4949
}
5050

51-
final Set<String> namespaces =
52-
Arrays.stream(myNameSpaceToScan.split(NAMESPACE_SEPARATOR))
53-
.map(String::trim)
54-
.filter(Strings::isNullOrEmpty)
55-
.collect(Collectors.toSet());
51+
final Set<String> namespaces = parseNamespaces(myNameSpaceToScan);
5652

5753
namespaces.add(namespaceToScan);
5854
LOG.debug("Scan the following packages for {}: {}", GlobalValueTransformer.class.getSimpleName(),
@@ -102,10 +98,18 @@ private static Set<Class<?>> loadAnnotatedTypes(Set<String> namespacesToScan) {
10298
/**
10399
* Use this static function to set the namespace to scan.
104100
*
105-
* @param newNamespace the new namespace to be searched for {@link org.zalando.sprocwrapper.globalvaluetransformer.annotation.GlobalValueTransformer}
101+
* @param newNamespace the new namespace to be searched for
102+
* {@link org.zalando.sprocwrapper.globalvaluetransformer.annotation.GlobalValueTransformer}
106103
*/
107104
public static void changeNamespaceToScan(final String newNamespace) {
108105
namespaceToScan = newNamespace;
109106
scannedClasspath = false;
110107
}
108+
109+
static Set<String> parseNamespaces(String inputString) {
110+
return Arrays.stream(inputString.split(NAMESPACE_SEPARATOR))
111+
.map(String::trim)
112+
.filter(ns -> !Strings.isNullOrEmpty(ns))
113+
.collect(Collectors.toSet());
114+
}
111115
}

src/test/java/org/zalando/sprocwrapper/globalvaluetransformer/ValueTransformerUtilsTest.java

Lines changed: 35 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,46 @@
11
package org.zalando.sprocwrapper.globalvaluetransformer;
22

3-
import static org.hamcrest.CoreMatchers.is;
4-
import static org.hamcrest.CoreMatchers.sameInstance;
5-
6-
import static org.hamcrest.MatcherAssert.assertThat;
7-
83
import org.junit.Test;
4+
import org.zalando.typemapper.core.ValueTransformer;
95

6+
import java.util.Set;
107

11-
import org.zalando.typemapper.core.ValueTransformer;
8+
import static org.hamcrest.CoreMatchers.*;
9+
import static org.hamcrest.MatcherAssert.*;
1210

1311
public class ValueTransformerUtilsTest {
1412

13+
@Test
14+
public void resolvesParametrizedUnmarshalReturnType() {
15+
assertThat(ValueTransformerUtils.getUnmarshalFromDbClass(ConcreteTransformer.class),
16+
is(sameInstance((Object) CustomBound.class)));
17+
}
18+
19+
@Test
20+
public void resolvesParametrizedMarshalReturnType() {
21+
assertThat(ValueTransformerUtils.getMarshalToDbClass(new ConcreteTransformer()),
22+
is(sameInstance((Object) CustomValue.class)));
23+
}
24+
25+
@Test
26+
public void parseNamespaces() {
27+
Set<String> namespaces = GlobalValueTransformerLoader.parseNamespaces("a.b.c;d;e ; f");
28+
assertThat(namespaces.size(), is(4));
29+
assertThat(namespaces, hasItems("a.b.c", "d", "e", "f"));
30+
}
31+
32+
@Test
33+
public void parseEmptyNamespace() {
34+
Set<String> namespaces = GlobalValueTransformerLoader.parseNamespaces("");
35+
assertThat(namespaces.isEmpty(), is(true));
36+
}
37+
38+
@Test
39+
public void parseBlankNamespace() {
40+
Set<String> namespaces = GlobalValueTransformerLoader.parseNamespaces(" ");
41+
assertThat(namespaces.isEmpty(), is(true));
42+
}
43+
1544
/**
1645
* A custom value that shall be transformed using a {@link ValueTransformer}.
1746
*/
@@ -63,16 +92,4 @@ protected CustomValue delegatedMarshalling(final CustomBound preprocessed) {
6392
return null; // doesn't do anything meaningful, just an example
6493
}
6594
}
66-
67-
@Test
68-
public void resolvesParamterizedUnmarshalReturnType() {
69-
assertThat(ValueTransformerUtils.getUnmarshalFromDbClass(ConcreteTransformer.class),
70-
is(sameInstance((Object) CustomBound.class)));
71-
}
72-
73-
@Test
74-
public void resolvesParamterizedMarshalReturnType() {
75-
assertThat(ValueTransformerUtils.getMarshalToDbClass(new ConcreteTransformer()),
76-
is(sameInstance((Object) CustomValue.class)));
77-
}
7895
}

0 commit comments

Comments
 (0)