Skip to content

Commit cd97ee4

Browse files
committed
Merge #670 from branch 'consolidateDependencyVersions' of github.com:metafacture/metafacture-core
2 parents 60f8e4e + a2f7d18 commit cd97ee4

File tree

109 files changed

+3177
-178
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

109 files changed

+3177
-178
lines changed

build.gradle

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,25 +28,35 @@ subprojects {
2828
ext {
2929
versions = [
3030
'ace': '1.3.3',
31-
'antlr': '3.2',
32-
'assertj_core': '3.11.1',
31+
'antlr': '3.5.2',
32+
'assertj': '3.11.1',
3333
'commons_compress': '1.21',
34+
'commons_io': '2.7',
35+
'dbcp': '1.4',
36+
'dspace': '1.0.0',
3437
'equalsverifier': '3.8.2',
38+
'everit': '1.14.2',
3539
'guava': '32.0.1-jre',
36-
'jackson': '2.13.3',
37-
'jackson_databind': '2.15.1',
40+
'jackson': '2.15.1',
3841
'jdk': '11',
42+
'jdom': '2.0.6.1',
3943
'jena': '3.17.0',
4044
'jetty': '9.4.14.v20181114',
45+
'jndi': '0.11.4.1',
4146
'jquery': '3.3.1-1',
47+
'jsonpath': '2.7.0',
48+
'jsoup': '1.15.4',
4249
'junit': '4.12',
4350
'junit_jupiter': '5.8.2',
4451
'junit_platform': '1.4.2',
4552
'mockito': '2.27.0',
53+
'opencsv': '5.9',
4654
'requirejs': '2.3.6',
4755
'slf4j': '1.7.36',
4856
'slf4j_mock': '2.3.0',
57+
'tukaani': '1.6',
4958
'wiremock': '2.35.0',
59+
'xalan': '2.7.0',
5060
'xtext': '2.26.0'
5161
]
5262
}

config/checkstyle/checkstyle.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
<property name="files" value="xtext-gen"/>
1414
</module>
1515
<module name="SuppressionSingleFilter">
16-
<property name="checks" value="MultipleStringLiterals|ExecutableStatementCount|MagicNumber"/>
16+
<property name="checks" value="ExecutableStatementCount|MagicNumber|MissingJavadocMethod|MultipleStringLiterals"/>
1717
<property name="files" value="test"/>
1818
</module>
1919
<module name="TreeWalker">
@@ -93,7 +93,7 @@
9393
<module name="MethodTypeParameterName"/>
9494
<module name="MissingCtor"/>
9595
<module name="MissingDeprecated"/>
96-
<!--<module name="MissingJavadocMethod"/>-->
96+
<module name="MissingJavadocMethod"/>
9797
<module name="MissingOverride"/>
9898
<module name="MissingSwitchDefault"/>
9999
<module name="ModifiedControlVariable"/>

metafacture-biblio/build.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,8 @@ dependencies {
2121
api project(':metafacture-framework')
2222
implementation project(':metafacture-commons')
2323
implementation project(':metafacture-flowcontrol')
24-
implementation 'org.dspace:oclc-harvester2:1.0.0'
25-
implementation ('xalan:xalan:2.7.0') {
24+
implementation "org.dspace:oclc-harvester2:${versions.dspace}"
25+
implementation ("xalan:xalan:${versions.xalan}") {
2626
exclude group: 'xalan', module: 'serializer'
2727
exclude group: 'xercesImpl', module: 'xercesImpl'
2828
exclude group: 'xml-apis', module: 'xml-apis'

metafacture-commons/src/main/java/org/metafacture/commons/tries/WildcardTrie.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,10 @@ public List<P> get(final String key) {
9797
Node<P> temp = node.getNext(key.charAt(i));
9898
if (temp != null) {
9999
nextNodes.add(temp);
100+
temp = temp.getNext(STAR_WILDCARD);
101+
if (temp != null) {
102+
nextNodes.add(temp);
103+
}
100104
}
101105
temp = node.getNext(Q_WILDCARD);
102106
if (temp != null) {

metafacture-commons/src/test/java/org/metafacture/commons/tries/WildcardTrieTest.java

Lines changed: 76 additions & 88 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,11 @@
2121
import org.junit.Before;
2222
import org.junit.Test;
2323

24+
import java.util.ArrayList;
25+
import java.util.Arrays;
26+
import java.util.Collections;
27+
import java.util.List;
28+
2429
/**
2530
* Tests for class {@link WildcardTrie}
2631
*
@@ -29,17 +34,26 @@
2934
*/
3035
public final class WildcardTrieTest {
3136

37+
private static final String A = "a";
38+
private static final String AABB = "aabb";
39+
private static final String AACBB = "aacbb";
40+
private static final String AB = "ab";
41+
private static final String ABBC = "abbc";
3242
private static final String ABC = "abc";
43+
private static final String ACB = "acb";
44+
private static final String B = "b";
3345
private static final String CCB = "ccb";
46+
private static final String EMPTY = "";
47+
private static final String X = "x";
48+
private static final List<String> ALL = List.of(A, AABB, AACBB, AB, ABBC, ABC, ACB, B, CCB, EMPTY, X);
49+
3450
private static final String AAQBB = "aa?bb";
51+
private static final String AA_STAR_BB = "aa*bb";
52+
private static final String A_STAR = "a*";
3553
private static final String A_STAR_B = "a*b";
3654
private static final String A_STAR_BC = "a*bc";
37-
private static final String AA_STAR_BB = "aa*bb";
3855
private static final String STAR_B = "*b";
39-
private static final String A_STAR = "a*";
40-
private static final String AACBB = "aacbb";
41-
private static final String AABB = "aabb";
42-
private static final String AB = "ab";
56+
4357
private static final String NOT_FOUND_BY = " not found by ";
4458
private static final String FOUND_BY = " found by ";
4559

@@ -54,121 +68,95 @@ public void createSystemUnderTest() {
5468
}
5569

5670
@Test
57-
public void testWithQWildcard() {
58-
Assert.assertTrue(trie.get("").isEmpty());
59-
Assert.assertTrue(trie.get("x").isEmpty());
60-
61-
trie.put(ABC, ABC);
62-
Assert.assertTrue(trie.get(ABC).contains(ABC));
63-
64-
trie.put(AAQBB, AAQBB);
65-
Assert.assertTrue(trie.get(AACBB).contains(AAQBB));
66-
Assert.assertTrue(trie.get(AABB).isEmpty());
67-
68-
trie.put(AABB, AABB);
69-
Assert.assertTrue(trie.get(AABB).contains(AABB));
70-
Assert.assertTrue(trie.get(AABB).size() == 1);
71+
public void testEmptyTrie() {
72+
assertTrie(null);
73+
}
7174

72-
trie.put(AACBB, AACBB);
73-
Assert.assertTrue(trie.get(AACBB).contains(AACBB));
74-
Assert.assertTrue(trie.get(AACBB).contains(AAQBB));
75+
@Test
76+
public void testWithQWildcard() {
77+
assertList(ABC, ABC);
78+
assertTrie(AAQBB, AACBB);
79+
assertList(AABB, AABB);
80+
assertList(AACBB, AAQBB, AACBB);
7581
}
7682

7783
@Test
7884
public void testWithStarWildcard() {
79-
trie.put(A_STAR_B, A_STAR_B);
80-
Assert.assertTrue(AACBB + NOT_FOUND_BY + A_STAR_B, trie.get(AACBB).contains(A_STAR_B));
81-
Assert.assertTrue(AABB + NOT_FOUND_BY + A_STAR_B, trie.get(AABB).contains(A_STAR_B));
82-
Assert.assertTrue(AB + NOT_FOUND_BY + A_STAR_B, trie.get(AB).contains(A_STAR_B));
83-
Assert.assertTrue(ABC + FOUND_BY + A_STAR_B, trie.get(ABC).isEmpty());
84-
Assert.assertTrue(CCB + FOUND_BY + A_STAR_B, trie.get(CCB).isEmpty());
85-
86-
trie.put(AABB, AABB);
87-
Assert.assertTrue(trie.get(AABB).contains(AABB));
88-
Assert.assertEquals(2, trie.get(AABB).size());
89-
90-
trie.put(AACBB, AACBB);
91-
Assert.assertTrue(trie.get(AACBB).contains(AACBB));
92-
Assert.assertTrue(trie.get(AACBB).contains(A_STAR_B));
85+
assertTrie(A_STAR_B, AABB, AACBB, AB, ACB);
86+
assertList(AABB, A_STAR_B, AABB);
87+
assertList(AACBB, A_STAR_B, AACBB);
9388
}
9489

9590
@Test
9691
public void testWithTrailingStarWildcard() {
97-
trie.put(A_STAR, A_STAR);
98-
Assert.assertTrue(AACBB + NOT_FOUND_BY + A_STAR, trie.get(AACBB).contains(A_STAR));
99-
Assert.assertTrue(AABB + NOT_FOUND_BY + A_STAR, trie.get(AABB).contains(A_STAR));
100-
Assert.assertTrue(AB + NOT_FOUND_BY + A_STAR, trie.get(AB).contains(A_STAR));
101-
Assert.assertTrue(ABC + NOT_FOUND_BY + A_STAR_B, trie.get(ABC).contains(A_STAR));
102-
Assert.assertTrue(CCB + FOUND_BY + A_STAR_B, trie.get(CCB).isEmpty());
103-
104-
trie.put(AABB, AABB);
105-
Assert.assertTrue(trie.get(AABB).contains(AABB));
106-
Assert.assertEquals(2, trie.get(AABB).size());
107-
108-
trie.put(AACBB, AACBB);
109-
Assert.assertTrue(trie.get(AACBB).contains(AACBB));
110-
Assert.assertTrue(trie.get(AACBB).contains(A_STAR));
92+
assertTrie(A_STAR, A, AABB, AACBB, AB, ABBC, ABC, ACB);
93+
assertList(AABB, A_STAR, AABB);
94+
assertList(AACBB, A_STAR, AACBB);
11195
}
11296

11397
@Test
11498
public void testWithInitialStarWildcard() {
115-
trie.put(STAR_B, STAR_B);
116-
Assert.assertTrue(AACBB + NOT_FOUND_BY + STAR_B, trie.get(AACBB).contains(STAR_B));
117-
Assert.assertTrue(AABB + NOT_FOUND_BY + STAR_B, trie.get(AABB).contains(STAR_B));
118-
119-
Assert.assertTrue(ABC + FOUND_BY + A_STAR_B, trie.get(ABC).isEmpty());
120-
Assert.assertTrue(CCB + NOT_FOUND_BY + A_STAR_B, trie.get(CCB).contains(STAR_B));
121-
122-
trie.put(AABB, AABB);
123-
Assert.assertTrue(trie.get(AABB).contains(AABB));
124-
Assert.assertEquals(2, trie.get(AABB).size());
125-
126-
trie.put(AACBB, AACBB);
127-
Assert.assertTrue(trie.get(AACBB).contains(AACBB));
128-
Assert.assertTrue(trie.get(AACBB).contains(STAR_B));
99+
assertTrie(STAR_B, AABB, AACBB, AB, ACB, B, CCB);
100+
assertList(AABB, STAR_B, AABB);
101+
assertList(AACBB, STAR_B, AACBB);
129102
}
130103

131104
@Test
132105
public void testWithMultipleStarWildcards() {
133-
trie.put(STAR_B, STAR_B);
134-
trie.put(A_STAR, A_STAR);
135-
trie.put(A_STAR_B, A_STAR_B);
136-
137-
Assert.assertEquals(3, trie.get(AACBB).size());
106+
assertTrie(STAR_B, AABB, AACBB, AB, ACB, B, CCB);
107+
assertTrie(A_STAR, A, AABB, AACBB, AB, ABC, ABBC, ACB);
108+
assertTrie(A_STAR_B, AABB, AACBB, AB, ACB);
109+
assertList(AACBB, STAR_B, A_STAR, A_STAR_B, AACBB);
138110

139-
trie.put(AA_STAR_BB, AA_STAR_BB);
140-
Assert.assertEquals(4, trie.get(AACBB).size());
111+
assertTrie(AA_STAR_BB, AABB, AACBB);
112+
assertList(AACBB, STAR_B, A_STAR, A_STAR_B, AA_STAR_BB, AACBB);
141113

142-
Assert.assertEquals(3, trie.get(AB).size());
143-
Assert.assertEquals(1, trie.get(CCB).size());
144-
145-
Assert.assertEquals(3, trie.get("acb").size());
114+
assertList(AB, STAR_B, A_STAR, A_STAR_B, AB);
115+
assertList(ACB, STAR_B, A_STAR, A_STAR_B, ACB);
116+
assertList(CCB, STAR_B, CCB);
146117
}
147118

148119
@Test
149120
public void testOverlapWithWildcard() {
150-
trie.put(ABC, ABC);
151-
trie.put(A_STAR_BC, A_STAR_BC);
152-
153-
Assert.assertEquals(2, trie.get(ABC).size());
154-
Assert.assertEquals(1, trie.get("abbc").size());
121+
assertTrie(A_STAR_BC, ABBC, ABC);
122+
assertList(ABC, A_STAR_BC, ABC);
123+
assertList(ABBC, A_STAR_BC, ABBC);
155124
}
156125

157126
@Test
158127
public void testEmptyKey() {
159-
trie.put("", ABC);
160-
Assert.assertEquals(1, trie.get("").size());
128+
assertList(EMPTY, EMPTY);
161129
}
162130

163131
@Test
164132
public void testWithOrAndWildcard() {
165-
final String key = ABC + WildcardTrie.OR_STRING + CCB;
166-
trie.put(key, "");
167-
Assert.assertTrue(ABC + NOT_FOUND_BY + key, trie.get(ABC).contains(""));
168-
Assert.assertTrue(CCB + NOT_FOUND_BY + key, trie.get(CCB).contains(""));
133+
assertTrie(ABC + WildcardTrie.OR_STRING + CCB, ABC, CCB);
134+
}
135+
136+
private void assertTrie(final String key, final String... positive) {
137+
final List<String> negative = new ArrayList<>(ALL);
138+
139+
if (key != null) {
140+
trie.put(key, key);
141+
}
142+
143+
Arrays.stream(positive).forEach(k -> {
144+
negative.remove(k);
145+
Assert.assertTrue(k + NOT_FOUND_BY + key, trie.get(k).contains(key));
146+
});
147+
148+
negative.forEach(k -> {
149+
Assert.assertFalse(k + FOUND_BY + key, trie.get(k).contains(key));
150+
});
151+
}
152+
153+
private void assertList(final String key, final String... expected) {
154+
assertTrie(key, key);
155+
156+
final List<String> actual = trie.get(key);
157+
Collections.sort(actual);
169158

170-
Assert.assertTrue(AABB + FOUND_BY + key, trie.get(AABB).isEmpty());
171-
Assert.assertTrue(AB + FOUND_BY + key, trie.get(AB).isEmpty());
159+
Assert.assertEquals(Arrays.asList(expected), actual);
172160
}
173161

174162
}

metafacture-csv/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ description = 'Modules for processing comma-separated values'
1919

2020
dependencies {
2121
api project(':metafacture-framework')
22-
implementation 'com.opencsv:opencsv:5.9'
22+
implementation "com.opencsv:opencsv:${versions.opencsv}"
2323
testImplementation "junit:junit:${versions.junit}"
2424
testImplementation "org.mockito:mockito-core:${versions.mockito}"
2525
}

metafacture-elasticsearch/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ description = 'Modules for sending data to an Elasticsearch instance'
1919

2020
dependencies {
2121
api project(':metafacture-framework')
22-
implementation "com.fasterxml.jackson.core:jackson-databind:${versions.jackson_databind}"
22+
implementation "com.fasterxml.jackson.core:jackson-databind:${versions.jackson}"
2323
testImplementation "junit:junit:${versions.junit}"
2424
testImplementation "org.mockito:mockito-core:${versions.mockito}"
2525
}

metafacture-flowcontrol/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,6 @@ dependencies {
2222
implementation "org.slf4j:slf4j-api:${versions.slf4j}"
2323
testImplementation "junit:junit:${versions.junit}"
2424
testImplementation "org.mockito:mockito-core:${versions.mockito}"
25-
testImplementation "org.assertj:assertj-core:${versions.assertj_core}"
25+
testImplementation "org.assertj:assertj-core:${versions.assertj}"
2626
testRuntimeOnly "org.slf4j:slf4j-simple:${versions.slf4j}"
2727
}

metafacture-flux/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,6 @@ dependencies {
2424
implementation project(':metafacture-commons')
2525
implementation project(':metafacture-io')
2626
testRuntimeOnly project(':metafacture-plumbing')
27-
antlr 'org.antlr:antlr:3.5.2'
27+
antlr "org.antlr:antlr:${versions.antlr}"
2828
testImplementation "junit:junit:${versions.junit}"
2929
}

metafacture-html/build.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,8 @@ dependencies {
2222
implementation project(':metafacture-commons')
2323
implementation "org.slf4j:slf4j-api:${versions.slf4j}"
2424
implementation "org.apache.commons:commons-compress:${versions.commons_compress}"
25-
implementation 'commons-io:commons-io:2.7'
26-
implementation 'org.jsoup:jsoup:1.15.4'
25+
implementation "commons-io:commons-io:${versions.commons_io}"
26+
implementation "org.jsoup:jsoup:${versions.jsoup}"
2727
testImplementation "junit:junit:${versions.junit}"
2828
testImplementation "org.mockito:mockito-core:${versions.mockito}"
2929
testRuntimeOnly "org.slf4j:slf4j-simple:${versions.slf4j}"

metafacture-io/build.gradle

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,12 +20,12 @@ description = 'Modules for reading and writing data streams'
2020
dependencies {
2121
api project(':metafacture-framework')
2222
implementation project(':metafacture-commons')
23-
implementation 'commons-io:commons-io:2.5'
23+
implementation "commons-io:commons-io:${versions.commons_io}"
2424
implementation "org.apache.commons:commons-compress:${versions.commons_compress}"
25-
runtimeOnly 'org.tukaani:xz:1.6'
26-
testImplementation 'com.github.tomakehurst:wiremock-jre8:2.33.2'
25+
runtimeOnly "org.tukaani:xz:${versions.tukaani}"
26+
testImplementation "com.github.tomakehurst:wiremock-jre8:${versions.wiremock}"
2727
testImplementation "junit:junit:${versions.junit}"
2828
testImplementation "org.mockito:mockito-core:${versions.mockito}"
29-
testImplementation "org.assertj:assertj-core:${versions.assertj_core}"
29+
testImplementation "org.assertj:assertj-core:${versions.assertj}"
3030
testRuntimeOnly "org.slf4j:slf4j-simple:${versions.slf4j}"
3131
}

metafacture-jdom/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,6 @@ description = 'Modules for converting JDOM documents to Metafacture streams and
1919

2020
dependencies {
2121
api project(':metafacture-framework')
22-
api 'org.jdom:jdom2:2.0.6.1'
22+
api "org.jdom:jdom2:${versions.jdom}"
2323
implementation project(':metafacture-commons')
2424
}

metafacture-json/build.gradle

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,10 @@ description = 'Modules for processing JSON data in Metafacture'
1919

2020
dependencies {
2121
api project(':metafacture-framework')
22-
implementation 'com.fasterxml.jackson.core:jackson-core:2.14.2'
23-
implementation "com.fasterxml.jackson.core:jackson-databind:${versions.jackson_databind}"
24-
implementation 'com.jayway.jsonpath:json-path:2.7.0'
25-
implementation 'com.github.erosb:everit-json-schema:1.14.2'
22+
implementation "com.fasterxml.jackson.core:jackson-core:${versions.jackson}"
23+
implementation "com.fasterxml.jackson.core:jackson-databind:${versions.jackson}"
24+
implementation "com.jayway.jsonpath:json-path:${versions.jsonpath}"
25+
implementation "com.github.erosb:everit-json-schema:${versions.everit}"
2626
testImplementation "junit:junit:${versions.junit}"
2727
testImplementation "org.mockito:mockito-core:${versions.mockito}"
2828
testImplementation "com.github.tomakehurst:wiremock-jre8:${versions.wiremock}"

0 commit comments

Comments
 (0)