diff --git a/akka-modules/akka-actors/README.md b/akka-modules/akka-actors/README.md
new file mode 100644
index 0000000000..20611aee6a
--- /dev/null
+++ b/akka-modules/akka-actors/README.md
@@ -0,0 +1,7 @@
+## Akka HTTP
+
+This module contains articles about Akka actors.
+
+### Relevant articles:
+
+- [Introduction to Akka Actors in Java](https://www.baeldung.com/akka-actors-java)
diff --git a/akka-modules/akka-actors/pom.xml b/akka-modules/akka-actors/pom.xml
new file mode 100644
index 0000000000..f354b13bd9
--- /dev/null
+++ b/akka-modules/akka-actors/pom.xml
@@ -0,0 +1,33 @@
+
+
+ 4.0.0
+ akka-actors
+ akka-actors
+
+
+ com.baeldung
+ akka-modules
+ 1.0.0-SNAPSHOT
+
+
+
+
+ com.typesafe.akka
+ akka-actor_${scala.version}
+ ${typesafe-akka.version}
+
+
+ com.typesafe.akka
+ akka-testkit_${scala.version}
+ ${typesafe-akka.version}
+ test
+
+
+
+
+ 2.5.11
+
+
+
\ No newline at end of file
diff --git a/libraries-5/src/main/java/com/baeldung/akka/FirstActor.java b/akka-modules/akka-actors/src/main/java/com/baeldung/akkaactors/FirstActor.java
similarity index 95%
rename from libraries-5/src/main/java/com/baeldung/akka/FirstActor.java
rename to akka-modules/akka-actors/src/main/java/com/baeldung/akkaactors/FirstActor.java
index 9680429fb1..1d166604ee 100644
--- a/libraries-5/src/main/java/com/baeldung/akka/FirstActor.java
+++ b/akka-modules/akka-actors/src/main/java/com/baeldung/akkaactors/FirstActor.java
@@ -1,4 +1,4 @@
-package com.baeldung.akka;
+package com.baeldung.akkaactors;
import akka.actor.AbstractActor;
import akka.actor.Props;
diff --git a/libraries-5/src/main/java/com/baeldung/akka/MyActor.java b/akka-modules/akka-actors/src/main/java/com/baeldung/akkaactors/MyActor.java
similarity index 95%
rename from libraries-5/src/main/java/com/baeldung/akka/MyActor.java
rename to akka-modules/akka-actors/src/main/java/com/baeldung/akkaactors/MyActor.java
index 99ee3158b6..2149242c19 100644
--- a/libraries-5/src/main/java/com/baeldung/akka/MyActor.java
+++ b/akka-modules/akka-actors/src/main/java/com/baeldung/akkaactors/MyActor.java
@@ -1,4 +1,4 @@
-package com.baeldung.akka;
+package com.baeldung.akkaactors;
import akka.actor.AbstractActor;
import akka.event.Logging;
diff --git a/libraries-5/src/main/java/com/baeldung/akka/PrinterActor.java b/akka-modules/akka-actors/src/main/java/com/baeldung/akkaactors/PrinterActor.java
similarity index 97%
rename from libraries-5/src/main/java/com/baeldung/akka/PrinterActor.java
rename to akka-modules/akka-actors/src/main/java/com/baeldung/akkaactors/PrinterActor.java
index 55b6e4e0f4..85a4fcc7ad 100644
--- a/libraries-5/src/main/java/com/baeldung/akka/PrinterActor.java
+++ b/akka-modules/akka-actors/src/main/java/com/baeldung/akkaactors/PrinterActor.java
@@ -1,4 +1,4 @@
-package com.baeldung.akka;
+package com.baeldung.akkaactors;
import akka.actor.AbstractActor;
import akka.actor.Props;
diff --git a/libraries-5/src/main/java/com/baeldung/akka/ReadingActor.java b/akka-modules/akka-actors/src/main/java/com/baeldung/akkaactors/ReadingActor.java
similarity index 98%
rename from libraries-5/src/main/java/com/baeldung/akka/ReadingActor.java
rename to akka-modules/akka-actors/src/main/java/com/baeldung/akkaactors/ReadingActor.java
index f1a21c8e28..bc68754364 100644
--- a/libraries-5/src/main/java/com/baeldung/akka/ReadingActor.java
+++ b/akka-modules/akka-actors/src/main/java/com/baeldung/akkaactors/ReadingActor.java
@@ -1,4 +1,4 @@
-package com.baeldung.akka;
+package com.baeldung.akkaactors;
import akka.actor.AbstractActor;
import akka.actor.ActorRef;
diff --git a/libraries-5/src/main/java/com/baeldung/akka/WordCounterActor.java b/akka-modules/akka-actors/src/main/java/com/baeldung/akkaactors/WordCounterActor.java
similarity index 97%
rename from libraries-5/src/main/java/com/baeldung/akka/WordCounterActor.java
rename to akka-modules/akka-actors/src/main/java/com/baeldung/akkaactors/WordCounterActor.java
index 3e23683971..07eb6f4aa2 100644
--- a/libraries-5/src/main/java/com/baeldung/akka/WordCounterActor.java
+++ b/akka-modules/akka-actors/src/main/java/com/baeldung/akkaactors/WordCounterActor.java
@@ -1,4 +1,4 @@
-package com.baeldung.akka;
+package com.baeldung.akkaactors;
import akka.actor.AbstractActor;
import akka.event.Logging;
diff --git a/libraries-5/src/test/java/com/baeldung/akka/AkkaActorsUnitTest.java b/akka-modules/akka-actors/src/test/java/com/baeldung/akkaactors/AkkaActorsUnitTest.java
similarity index 99%
rename from libraries-5/src/test/java/com/baeldung/akka/AkkaActorsUnitTest.java
rename to akka-modules/akka-actors/src/test/java/com/baeldung/akkaactors/AkkaActorsUnitTest.java
index adaff86565..362aef4600 100644
--- a/libraries-5/src/test/java/com/baeldung/akka/AkkaActorsUnitTest.java
+++ b/akka-modules/akka-actors/src/test/java/com/baeldung/akkaactors/AkkaActorsUnitTest.java
@@ -1,4 +1,4 @@
-package com.baeldung.akka;
+package com.baeldung.akkaactors;
import akka.actor.ActorRef;
import akka.actor.ActorSystem;
diff --git a/akka-modules/pom.xml b/akka-modules/pom.xml
index 3a9d5e41ff..60432c4eea 100644
--- a/akka-modules/pom.xml
+++ b/akka-modules/pom.xml
@@ -14,6 +14,7 @@
+ akka-actors
akka-http
akka-streams
spring-akka
diff --git a/jmh/README.md b/jmh/README.md
index 3cfe847a3c..2e249c779c 100644
--- a/jmh/README.md
+++ b/jmh/README.md
@@ -7,3 +7,4 @@ This module contains articles about the Java Microbenchmark Harness (JMH).
- [Microbenchmarking with Java](https://www.baeldung.com/java-microbenchmark-harness)
- [A Guide to False Sharing and @Contended](https://www.baeldung.com/java-false-sharing-contended)
- [Performance Comparison of boolean[] vs BitSet](https://www.baeldung.com/java-boolean-array-bitset-performance)
+- [How to Warm Up the JVM](https://www.baeldung.com/java-jvm-warmup)
diff --git a/libraries/src/main/java/com/baeldung/jmh/BenchMark.java b/jmh/src/main/java/com/baeldung/jmh/BenchMark.java
similarity index 100%
rename from libraries/src/main/java/com/baeldung/jmh/BenchMark.java
rename to jmh/src/main/java/com/baeldung/jmh/BenchMark.java
diff --git a/libraries/src/main/java/com/baeldung/jmh/JmhDemo.java b/jmh/src/main/java/com/baeldung/jmh/JmhDemo.java
similarity index 100%
rename from libraries/src/main/java/com/baeldung/jmh/JmhDemo.java
rename to jmh/src/main/java/com/baeldung/jmh/JmhDemo.java
diff --git a/libraries/src/main/java/com/baeldung/jmh/warmup/MainApplication.java b/jmh/src/main/java/com/baeldung/jmh/warmup/MainApplication.java
similarity index 100%
rename from libraries/src/main/java/com/baeldung/jmh/warmup/MainApplication.java
rename to jmh/src/main/java/com/baeldung/jmh/warmup/MainApplication.java
diff --git a/libraries/src/main/java/com/baeldung/jmh/warmup/ManualClassLoader.java b/jmh/src/main/java/com/baeldung/jmh/warmup/ManualClassLoader.java
similarity index 100%
rename from libraries/src/main/java/com/baeldung/jmh/warmup/ManualClassLoader.java
rename to jmh/src/main/java/com/baeldung/jmh/warmup/ManualClassLoader.java
diff --git a/libraries/src/main/java/com/baeldung/jmh/warmup/dummy/Dummy.java b/jmh/src/main/java/com/baeldung/jmh/warmup/dummy/Dummy.java
similarity index 100%
rename from libraries/src/main/java/com/baeldung/jmh/warmup/dummy/Dummy.java
rename to jmh/src/main/java/com/baeldung/jmh/warmup/dummy/Dummy.java
diff --git a/libraries-2/README.md b/libraries-2/README.md
index 3eb788a34a..16c04cb7ad 100644
--- a/libraries-2/README.md
+++ b/libraries-2/README.md
@@ -12,8 +12,7 @@ Remember, for advanced libraries like [Jackson](/jackson) and [JUnit](/testing-m
- [Guide to Classgraph Library](https://www.baeldung.com/classgraph)
- [Templating with Handlebars](https://www.baeldung.com/handlebars)
- [A Guide to Crawler4j](https://www.baeldung.com/crawler4j)
-- [Key Value Store with Chronicle Map](https://www.baeldung.com/java-chronicle-map)
-- [Guide to MapDB](https://www.baeldung.com/mapdb)
- [A Guide to Apache Mesos](https://www.baeldung.com/apache-mesos)
+- [Guide to MapDB](https://www.baeldung.com/mapdb)
- More articles [[<-- prev]](/libraries) [[next -->]](/libraries-3)
diff --git a/libraries-2/pom.xml b/libraries-2/pom.xml
index 9eff129a63..e472628c2b 100644
--- a/libraries-2/pom.xml
+++ b/libraries-2/pom.xml
@@ -13,11 +13,6 @@
-
- org.mapdb
- mapdb
- ${mapdb.version}
-
io.github.classgraph
classgraph
@@ -41,17 +36,6 @@
spring-boot-starter
${spring-boot-starter.version}
-
- net.openhft
- chronicle-map
- ${chronicle.map.version}
-
-
- com.sun.java
- tools
-
-
-
edu.uci.ics
crawler4j
@@ -93,6 +77,11 @@
je
18.3.12
+
+ org.mapdb
+ mapdb
+ ${mapdb.version}
+
@@ -100,10 +89,6 @@
org.apache.maven.plugins
maven-surefire-plugin
- ${maven-surefire-plugin.version}
-
- --add-exports=java.base/jdk.internal.ref=ALL-UNNAMED --add-exports=java.base/sun.nio.ch=ALL-UNNAMED --add-exports=jdk.unsupported/sun.misc=ALL-UNNAMED --add-exports=jdk.compiler/com.sun.tools.javac.file=ALL-UNNAMED --add-opens=jdk.compiler/com.sun.tools.javac=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.reflect=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED
-
@@ -112,7 +97,6 @@
3.0.8
4.8.153
7.20.0.Final
- 3.24ea1
4.4.0
2.7.8
1.11.0
diff --git a/libraries-2/src/test/java/com/baeldung/mapdb/CollectionsUnitTest.java b/libraries-2/src/test/java/com/baeldung/mapdb/CollectionsUnitTest.java
index 6f5141b054..a286ed7ea8 100644
--- a/libraries-2/src/test/java/com/baeldung/mapdb/CollectionsUnitTest.java
+++ b/libraries-2/src/test/java/com/baeldung/mapdb/CollectionsUnitTest.java
@@ -1,14 +1,14 @@
package com.baeldung.mapdb;
+import static junit.framework.Assert.assertEquals;
+
+import java.util.NavigableSet;
+
import org.junit.Test;
import org.mapdb.DB;
import org.mapdb.DBMaker;
import org.mapdb.Serializer;
-import java.util.NavigableSet;
-
-import static junit.framework.Assert.assertEquals;
-
public class CollectionsUnitTest {
@Test
diff --git a/libraries-2/src/test/java/com/baeldung/mapdb/HTreeMapUnitTest.java b/libraries-2/src/test/java/com/baeldung/mapdb/HTreeMapUnitTest.java
index 3b7cac04fb..80d5375445 100644
--- a/libraries-2/src/test/java/com/baeldung/mapdb/HTreeMapUnitTest.java
+++ b/libraries-2/src/test/java/com/baeldung/mapdb/HTreeMapUnitTest.java
@@ -1,12 +1,12 @@
package com.baeldung.mapdb;
-import org.jetbrains.annotations.NotNull;
-import org.junit.Test;
-import org.mapdb.*;
+import static org.junit.jupiter.api.Assertions.assertEquals;
-import java.io.IOException;
-
-import static junit.framework.Assert.assertEquals;
+import org.junit.jupiter.api.Test;
+import org.mapdb.DB;
+import org.mapdb.DBMaker;
+import org.mapdb.HTreeMap;
+import org.mapdb.Serializer;
public class HTreeMapUnitTest {
diff --git a/libraries-2/src/test/java/com/baeldung/mapdb/HelloBaeldungUnitTest.java b/libraries-2/src/test/java/com/baeldung/mapdb/HelloBaeldungUnitTest.java
index 952efd0639..89c40fe625 100644
--- a/libraries-2/src/test/java/com/baeldung/mapdb/HelloBaeldungUnitTest.java
+++ b/libraries-2/src/test/java/com/baeldung/mapdb/HelloBaeldungUnitTest.java
@@ -1,25 +1,25 @@
package com.baeldung.mapdb;
-import org.junit.Test;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+
+import org.junit.jupiter.api.Test;
import org.mapdb.DB;
import org.mapdb.DBMaker;
import org.mapdb.HTreeMap;
-import java.util.concurrent.ConcurrentMap;
-
-import static junit.framework.Assert.assertEquals;
-
public class HelloBaeldungUnitTest {
@Test
public void givenInMemoryDBInstantiateCorrectly_whenDataSavedAndRetrieved_checkRetrievalCorrect() {
- DB db = DBMaker.memoryDB().make();
+ DB db = DBMaker.memoryDB()
+ .make();
String welcomeMessageKey = "Welcome Message";
String welcomeMessageString = "Hello Baeldung!";
- HTreeMap myMap = db.hashMap("myMap").createOrOpen();
+ HTreeMap myMap = db.hashMap("myMap")
+ .createOrOpen();
myMap.put(welcomeMessageKey, welcomeMessageString);
String welcomeMessageFromDB = (String) myMap.get(welcomeMessageKey);
@@ -32,12 +32,14 @@ public class HelloBaeldungUnitTest {
@Test
public void givenInFileDBInstantiateCorrectly_whenDataSavedAndRetrieved_checkRetrievalCorrect() {
- DB db = DBMaker.fileDB("file.db").make();
+ DB db = DBMaker.fileDB("file.db")
+ .make();
String welcomeMessageKey = "Welcome Message";
String welcomeMessageString = "Hello Baeldung!";
- HTreeMap myMap = db.hashMap("myMap").createOrOpen();
+ HTreeMap myMap = db.hashMap("myMap")
+ .createOrOpen();
myMap.put(welcomeMessageKey, welcomeMessageString);
String welcomeMessageFromDB = (String) myMap.get(welcomeMessageKey);
diff --git a/libraries-2/src/test/java/com/baeldung/mapdb/InMemoryModesUnitTest.java b/libraries-2/src/test/java/com/baeldung/mapdb/InMemoryModesUnitTest.java
index 9c53f9c792..c761f877ab 100644
--- a/libraries-2/src/test/java/com/baeldung/mapdb/InMemoryModesUnitTest.java
+++ b/libraries-2/src/test/java/com/baeldung/mapdb/InMemoryModesUnitTest.java
@@ -1,13 +1,13 @@
package com.baeldung.mapdb;
-import org.junit.Test;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+
+import org.junit.jupiter.api.Test;
import org.mapdb.DB;
import org.mapdb.DBMaker;
import org.mapdb.HTreeMap;
import org.mapdb.Serializer;
-import static junit.framework.Assert.assertEquals;
-
public class InMemoryModesUnitTest {
@Test
diff --git a/libraries-2/src/test/java/com/baeldung/mapdb/SortedTableMapUnitTest.java b/libraries-2/src/test/java/com/baeldung/mapdb/SortedTableMapUnitTest.java
index 83ba917393..6b6b3942d2 100644
--- a/libraries-2/src/test/java/com/baeldung/mapdb/SortedTableMapUnitTest.java
+++ b/libraries-2/src/test/java/com/baeldung/mapdb/SortedTableMapUnitTest.java
@@ -1,13 +1,13 @@
package com.baeldung.mapdb;
-import org.junit.Test;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+
+import org.junit.jupiter.api.Test;
import org.mapdb.Serializer;
import org.mapdb.SortedTableMap;
import org.mapdb.volume.MappedFileVol;
import org.mapdb.volume.Volume;
-import static junit.framework.Assert.assertEquals;
-
public class SortedTableMapUnitTest {
private static final String VOLUME_LOCATION = "sortedTableMapVol.db";
diff --git a/libraries-2/src/test/java/com/baeldung/mapdb/TransactionsUnitTest.java b/libraries-2/src/test/java/com/baeldung/mapdb/TransactionsUnitTest.java
index 4de9db10e8..5a053b4422 100644
--- a/libraries-2/src/test/java/com/baeldung/mapdb/TransactionsUnitTest.java
+++ b/libraries-2/src/test/java/com/baeldung/mapdb/TransactionsUnitTest.java
@@ -1,13 +1,13 @@
package com.baeldung.mapdb;
-import org.junit.Test;
-import org.mapdb.DB;
-import org.mapdb.DBMaker;
-import org.mapdb.Serializer;
+import static org.junit.jupiter.api.Assertions.assertEquals;
import java.util.NavigableSet;
-import static junit.framework.Assert.assertEquals;
+import org.junit.jupiter.api.Test;
+import org.mapdb.DB;
+import org.mapdb.DBMaker;
+import org.mapdb.Serializer;
public class TransactionsUnitTest {
diff --git a/libraries-3/README.md b/libraries-3/README.md
index faef721a22..3416805ad1 100644
--- a/libraries-3/README.md
+++ b/libraries-3/README.md
@@ -8,10 +8,7 @@ The code examples related to different libraries are each in their own module.
Remember, for advanced libraries like [Jackson](/jackson) and [JUnit](/testing-modules) we already have separate modules. Please make sure to have a look at the existing modules in such cases.
### Relevant Articles:
-- [Guide to the Cactoos Library](https://www.baeldung.com/java-cactoos)
-- [Introduction to cache2k](https://www.baeldung.com/java-cache2k)
- [Introduction to the jcabi-aspects AOP Annotations Library](https://www.baeldung.com/java-jcabi-aspects)
-- [Introduction to Takes](https://www.baeldung.com/java-takes)
- [Using NullAway to Avoid NullPointerExceptions](https://www.baeldung.com/java-nullaway)
- [Introduction to Alibaba Arthas](https://www.baeldung.com/java-alibaba-arthas-intro)
- [Intro to Structurizr](https://www.baeldung.com/structurizr)
diff --git a/libraries-3/pom.xml b/libraries-3/pom.xml
index bff0a654c6..ae8ebb43f3 100644
--- a/libraries-3/pom.xml
+++ b/libraries-3/pom.xml
@@ -18,17 +18,6 @@
lombok
${lombok.version}
-
- org.cactoos
- cactoos
- ${cactoos.version}
-
-
- org.cache2k
- cache2k-base-bom
- ${cache2k.version}
- pom
-
com.jcabi
jcabi-aspects
@@ -40,21 +29,6 @@
${aspectjrt.version}
runtime
-
- org.takes
- takes
- ${takes.version}
-
-
- org.apache.httpcomponents
- httpcore
- ${httpcore.version}
-
-
- org.apache.httpcomponents
- httpclient
- ${httpclient.version}
-
org.apache.velocity
velocity-engine-core
@@ -159,57 +133,13 @@
-
-
- reload
-
-
-
- src/main/resources
- true
-
-
- src/main/webapp
- true
-
-
-
-
- org.codehaus.mojo
- exec-maven-plugin
-
-
- start-server
- pre-integration-test
-
- java
-
-
-
-
- com.baeldung.takes.TakesApp
- false
-
- --port=${port}
-
-
-
-
-
-
-
- 0.43
- 1.2.3.Final
0.22.6
1.9.20.1
0.14.1
1.9.20.1
1.9.20.1
- 1.19
- 4.4.13
- 4.5.12
2.2
0.3.0
2.8
diff --git a/libraries-4/README.md b/libraries-4/README.md
index 102f17acdb..03ea3d7a77 100644
--- a/libraries-4/README.md
+++ b/libraries-4/README.md
@@ -8,11 +8,7 @@ The code examples related to different libraries are each in their own module.
Remember, for advanced libraries like [Jackson](/jackson) and [JUnit](/testing-modules) we already have separate modules. Please make sure to have a look at the existing modules in such cases.
### Relevant articles
-- [Quick Guide to RSS with Rome](https://www.baeldung.com/rome-rss)
-- [Introduction to PCollections](https://www.baeldung.com/java-pcollections)
-- [Introduction to Eclipse Collections](https://www.baeldung.com/eclipse-collections)
- [Introduction to NoException](https://www.baeldung.com/no-exception)
-- [Delete a Directory Recursively in Java](https://www.baeldung.com/java-delete-directory)
- [Guide to JDeferred](https://www.baeldung.com/jdeferred)
- [Introduction to MBassador](https://www.baeldung.com/mbassador)
- [Using Pairs in Java](https://www.baeldung.com/java-pairs)
diff --git a/libraries-4/pom.xml b/libraries-4/pom.xml
index 6b818be9c2..165f017d89 100644
--- a/libraries-4/pom.xml
+++ b/libraries-4/pom.xml
@@ -17,11 +17,6 @@
jdeferred-core
${jdeferred.version}
-
- org.eclipse.collections
- eclipse-collections
- ${eclipse-collections.version}
-
org.olap4j
olap4j
@@ -37,11 +32,6 @@
noexception
${noexception.version}
-
- rome
- rome
- ${rome.version}
-
org.springframework
spring-web
@@ -57,11 +47,6 @@
servlet-api
${javax.servlet.version}
-
- org.pcollections
- pcollections
- ${pcollections.version}
-
org.awaitility
awaitility
@@ -113,11 +98,6 @@
commons-lang3
${commons-lang3.version}
-
- commons-io
- commons-io
- ${commons-io.version}
-
@@ -126,11 +106,9 @@
1.2.6
1.1.0
1.3.1
- 1.0
4.3.8.RELEASE
2.5
3.2.0-m7
- 2.1.2
3.0.0
0.6.5
3.0.0
@@ -138,7 +116,6 @@
1.2.0
19
10.3.0
- 8.2.0
0.9.0
diff --git a/libraries-5/README.md b/libraries-5/README.md
index 50fb70bd05..6b61a7a43c 100644
--- a/libraries-5/README.md
+++ b/libraries-5/README.md
@@ -8,12 +8,8 @@ The code examples related to different libraries are each in their own module.
Remember, for advanced libraries like [Jackson](/jackson) and [JUnit](/testing-modules) we already have separate modules. Please make sure to have a look at the existing modules in such cases.
### Relevant articles
-- [Introduction to Caffeine](https://www.baeldung.com/java-caching-caffeine)
- [A Docker Guide for Java](https://www.baeldung.com/docker-java-api)
-- [Introduction to Akka Actors in Java](https://www.baeldung.com/akka-actors-java)
- [Introduction to jOOL](https://www.baeldung.com/jool)
-- [Consumer Driven Contracts with Pact](https://www.baeldung.com/pact-junit-consumer-driven-contracts)
- [Introduction to Atlassian Fugue](https://www.baeldung.com/java-fugue)
- [Publish and Receive Messages with Nats Java Client](https://www.baeldung.com/nats-java-client)
-- [Java Concurrency Utility with JCTools](https://www.baeldung.com/java-concurrency-jc-tools)
- More articles [[<-- prev]](/libraries-4) [[next -->]](/libraries-6)
diff --git a/libraries-5/pom.xml b/libraries-5/pom.xml
index 85f8896890..a15679502d 100644
--- a/libraries-5/pom.xml
+++ b/libraries-5/pom.xml
@@ -6,49 +6,17 @@
libraries-5
+ parent-modules
com.baeldung
- parent-boot-2
- 0.0.1-SNAPSHOT
- ../parent-boot-2
+ 1.0.0-SNAPSHOT
-
- org.springframework
- spring-web
-
org.jooq
jool
${jool.version}
-
- au.com.dius
- pact-jvm-provider-junit5_2.12
- ${pact.version}
-
-
- au.com.dius
- pact-jvm-consumer-junit5_2.12
- ${pact.version}
- test
-
-
- org.springframework.boot
- spring-boot-starter-web
-
-
-
- com.typesafe.akka
- akka-actor_${scala.version}
- ${typesafe-akka.version}
-
-
- com.typesafe.akka
- akka-testkit_${scala.version}
- ${typesafe-akka.version}
- test
-
com.github.docker-java
@@ -69,18 +37,6 @@
-
-
- com.github.ben-manes.caffeine
- caffeine
- ${caffeine.version}
-
-
- com.google.code.findbugs
- jsr305
- ${findbugs.version}
- test
-
io.atlassian.fugue
@@ -92,44 +48,14 @@
jnats
${jnats.version}
-
- org.jctools
- jctools-core
- ${jctools.version}
-
-
- org.openjdk.jmh
- jmh-core
- ${jmh-core.version}
-
-
-
-
- org.apache.maven.plugins
- maven-surefire-plugin
-
-
- target/mypacts
-
-
-
-
-
-
- 3.6.3
0.9.12
- 4.3.8.RELEASE
2.12
- 2.5.11
3.0.14
- 3.1.8
- 3.0.2
4.5.1
1.0
- 2.1.2
\ No newline at end of file
diff --git a/libraries-6/README.md b/libraries-6/README.md
index 5f8a608010..4be655f850 100644
--- a/libraries-6/README.md
+++ b/libraries-6/README.md
@@ -10,11 +10,9 @@ Remember, for advanced libraries like [Jackson](/jackson) and [JUnit](/testing-m
### Relevant articles
- [Introduction to JavaPoet](https://www.baeldung.com/java-poet)
- [Guide to Resilience4j](https://www.baeldung.com/resilience4j)
-- [Implementing a FTP-Client in Java](https://www.baeldung.com/java-ftp-client)
- [Introduction to Functional Java](https://www.baeldung.com/java-functional-library)
- [Guide to Simple Binary Encoding](https://www.baeldung.com/java-sbe)
- [Java-R Integration](https://www.baeldung.com/java-r-integration)
- [Using libphonenumber to Validate Phone Numbers](https://www.baeldung.com/java-libphonenumber)
- [Apache Commons Collections vs Google Guava](https://www.baeldung.com/apache-commons-collections-vs-guava)
-- [Guide to Using ModelMapper](https://www.baeldung.com/java-modelmapper)
- More articles [[<-- prev]](/libraries-5) [[next -->]](/libraries-7)
diff --git a/libraries-6/pom.xml b/libraries-6/pom.xml
index 372c5b1cc7..e9b90fa597 100644
--- a/libraries-6/pom.xml
+++ b/libraries-6/pom.xml
@@ -42,12 +42,6 @@
javapoet
${javapoet.version}
-
- org.mockftpserver
- MockFtpServer
- ${mockftpserver.version}
- test
-
org.apache.commons
commons-lang3
@@ -63,11 +57,6 @@
guava
${guava.version}
-
- commons-net
- commons-net
- ${commons-net.version}
-
commons-io
commons-io
@@ -95,11 +84,6 @@
libphonenumber
${libphonenumber.version}
-
- org.modelmapper
- modelmapper
- ${org.modelmapper.version}
-
org.agrona
agrona
@@ -190,15 +174,12 @@
1.10.0
- 2.7.1
4.8.1
2.1.0
- 3.6
3.5-beta72
3.0
1.8.1
8.12.9
- 3.2.0
1.17.1
1.6.0
1.27.0
diff --git a/libraries-ai/README.md b/libraries-ai/README.md
index 01ec9b1d68..8c211ea1a2 100644
--- a/libraries-ai/README.md
+++ b/libraries-ai/README.md
@@ -1,2 +1,3 @@
## Relevant Articles
- [Overview of NLP Libraries in Java](https://www.baeldung.com/java-nlp-libraries)
+- [Introduction to Neuroph](https://www.baeldung.com/neuroph)
diff --git a/libraries-ai/pom.xml b/libraries-ai/pom.xml
index 48b26e5a31..aa2ef19b45 100644
--- a/libraries-ai/pom.xml
+++ b/libraries-ai/pom.xml
@@ -23,11 +23,17 @@
opennlp-tools
${opennlp-tools.version}
+
+ org.beykery
+ neuroph
+ ${neuroph.version}
+
4.5.3
2.1.1
+ 2.92
\ No newline at end of file
diff --git a/libraries/src/main/java/com/baeldung/neuroph/NeurophXOR.java b/libraries-ai/src/main/java/neuroph/NeurophXOR.java
similarity index 98%
rename from libraries/src/main/java/com/baeldung/neuroph/NeurophXOR.java
rename to libraries-ai/src/main/java/neuroph/NeurophXOR.java
index 4cb11c3c05..63ce1c6e16 100644
--- a/libraries/src/main/java/com/baeldung/neuroph/NeurophXOR.java
+++ b/libraries-ai/src/main/java/neuroph/NeurophXOR.java
@@ -1,4 +1,4 @@
-package com.baeldung.neuroph;
+package neuroph;
import org.neuroph.core.Layer;
import org.neuroph.core.NeuralNetwork;
diff --git a/libraries/src/test/java/com/baeldung/neuroph/XORIntegrationTest.java b/libraries-ai/src/test/java/com/baeldung/neuroph/XORIntegrationTest.java
similarity index 94%
rename from libraries/src/test/java/com/baeldung/neuroph/XORIntegrationTest.java
rename to libraries-ai/src/test/java/com/baeldung/neuroph/XORIntegrationTest.java
index ea5c09a4d8..6e6bad8142 100644
--- a/libraries/src/test/java/com/baeldung/neuroph/XORIntegrationTest.java
+++ b/libraries-ai/src/test/java/com/baeldung/neuroph/XORIntegrationTest.java
@@ -1,11 +1,13 @@
package com.baeldung.neuroph;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.neuroph.core.NeuralNetwork;
-import static org.junit.Assert.*;
+import neuroph.NeurophXOR;
public class XORIntegrationTest {
private NeuralNetwork ann = null;
diff --git a/libraries-apache-commons-2/README.md b/libraries-apache-commons-2/README.md
index 180c84b31c..70a872dea4 100644
--- a/libraries-apache-commons-2/README.md
+++ b/libraries-apache-commons-2/README.md
@@ -5,4 +5,5 @@ This module contains articles about Apache Commons libraries.
### Relevant articles
- [Extracting a Tar File in Java](https://www.baeldung.com/java-extract-tar-file)
- [Convert a String with Unicode Encoding to a String of Letters](https://www.baeldung.com/java-convert-string-unicode-encoding)
+-
- More articles: [[<--prev]](../libraries-apache-commons)
diff --git a/libraries-apache-commons-2/pom.xml b/libraries-apache-commons-2/pom.xml
index ee9b51e6cc..c555b83273 100644
--- a/libraries-apache-commons-2/pom.xml
+++ b/libraries-apache-commons-2/pom.xml
@@ -33,6 +33,17 @@
commons-text
${apache-commons-text.version}
+
+ commons-net
+ commons-net
+ ${commons-net.version}
+
+
+ org.mockftpserver
+ MockFtpServer
+ ${mockftpserver.version}
+ test
+
@@ -40,6 +51,8 @@
1.10.13
2.9.0
1.10.0
+ 3.6
+ 2.7.1
\ No newline at end of file
diff --git a/libraries-6/src/main/java/com/baeldung/ftp/FtpClient.java b/libraries-apache-commons-2/src/main/java/com/baeldung/commons/ftp/FtpClient.java
similarity index 90%
rename from libraries-6/src/main/java/com/baeldung/ftp/FtpClient.java
rename to libraries-apache-commons-2/src/main/java/com/baeldung/commons/ftp/FtpClient.java
index f885ff13b3..412f0726a7 100644
--- a/libraries-6/src/main/java/com/baeldung/ftp/FtpClient.java
+++ b/libraries-apache-commons-2/src/main/java/com/baeldung/commons/ftp/FtpClient.java
@@ -1,15 +1,19 @@
-package com.baeldung.ftp;
+package com.baeldung.commons.ftp;
+
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.PrintWriter;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.stream.Collectors;
import org.apache.commons.net.PrintCommandListener;
import org.apache.commons.net.ftp.FTPClient;
import org.apache.commons.net.ftp.FTPFile;
import org.apache.commons.net.ftp.FTPReply;
-import java.io.*;
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.stream.Collectors;
-
class FtpClient {
private final String server;
diff --git a/libraries-6/src/test/java/com/baeldung/ftp/FtpClientIntegrationTest.java b/libraries-apache-commons-2/src/test/java/com/baeldung/commons/ftp/FtpClientIntegrationTest.java
similarity index 98%
rename from libraries-6/src/test/java/com/baeldung/ftp/FtpClientIntegrationTest.java
rename to libraries-apache-commons-2/src/test/java/com/baeldung/commons/ftp/FtpClientIntegrationTest.java
index 43da69f96d..4bbebc0ea1 100644
--- a/libraries-6/src/test/java/com/baeldung/ftp/FtpClientIntegrationTest.java
+++ b/libraries-apache-commons-2/src/test/java/com/baeldung/commons/ftp/FtpClientIntegrationTest.java
@@ -1,4 +1,11 @@
-package com.baeldung.ftp;
+package com.baeldung.commons.ftp;
+
+import static org.assertj.core.api.Assertions.assertThat;
+
+import java.io.File;
+import java.io.IOException;
+import java.net.URISyntaxException;
+import java.util.Collection;
import org.junit.After;
import org.junit.Before;
@@ -10,13 +17,6 @@ import org.mockftpserver.fake.filesystem.FileEntry;
import org.mockftpserver.fake.filesystem.FileSystem;
import org.mockftpserver.fake.filesystem.UnixFakeFileSystem;
-import java.io.File;
-import java.io.IOException;
-import java.net.URISyntaxException;
-import java.util.Collection;
-
-import static org.assertj.core.api.Assertions.assertThat;
-
public class FtpClientIntegrationTest {
private FakeFtpServer fakeFtpServer;
diff --git a/libraries-6/src/test/java/com/baeldung/ftp/JdkFtpClientIntegrationTest.java b/libraries-apache-commons-2/src/test/java/com/baeldung/commons/ftp/JdkFtpClientIntegrationTest.java
similarity index 93%
rename from libraries-6/src/test/java/com/baeldung/ftp/JdkFtpClientIntegrationTest.java
rename to libraries-apache-commons-2/src/test/java/com/baeldung/commons/ftp/JdkFtpClientIntegrationTest.java
index ef6809b02d..905bc4906a 100644
--- a/libraries-6/src/test/java/com/baeldung/ftp/JdkFtpClientIntegrationTest.java
+++ b/libraries-apache-commons-2/src/test/java/com/baeldung/commons/ftp/JdkFtpClientIntegrationTest.java
@@ -1,4 +1,13 @@
-package com.baeldung.ftp;
+package com.baeldung.commons.ftp;
+
+import static org.assertj.core.api.Assertions.assertThat;
+
+import java.io.File;
+import java.io.IOException;
+import java.io.InputStream;
+import java.net.URL;
+import java.net.URLConnection;
+import java.nio.file.Files;
import org.junit.After;
import org.junit.Before;
@@ -10,18 +19,6 @@ import org.mockftpserver.fake.filesystem.FileEntry;
import org.mockftpserver.fake.filesystem.FileSystem;
import org.mockftpserver.fake.filesystem.UnixFakeFileSystem;
-import java.io.File;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.net.URISyntaxException;
-import java.net.URL;
-import java.net.URLConnection;
-import java.nio.file.Files;
-import java.util.Collection;
-
-import static org.assertj.core.api.Assertions.assertThat;
-
public class JdkFtpClientIntegrationTest {
private FakeFtpServer fakeFtpServer;
diff --git a/libraries-6/src/test/resources/ftp/baz.txt b/libraries-apache-commons-2/src/test/resources/ftp/baz.txt
similarity index 100%
rename from libraries-6/src/test/resources/ftp/baz.txt
rename to libraries-apache-commons-2/src/test/resources/ftp/baz.txt
diff --git a/libraries-concurrency/README.md b/libraries-concurrency/README.md
index d1ffe81fa8..8808335a5b 100644
--- a/libraries-concurrency/README.md
+++ b/libraries-concurrency/README.md
@@ -1,3 +1,4 @@
### Relevant Articles:
- [Intro to Coroutines with Quasar](https://www.baeldung.com/java-quasar-coroutines)
+- [Java Concurrency Utility with JCTools](https://www.baeldung.com/java-concurrency-jc-tools)
diff --git a/libraries-concurrency/pom.xml b/libraries-concurrency/pom.xml
index 8b0ccdd5ec..31bce1a982 100644
--- a/libraries-concurrency/pom.xml
+++ b/libraries-concurrency/pom.xml
@@ -28,6 +28,16 @@
quasar-reactive-streams
${quasar.version}
+
+ org.jctools
+ jctools-core
+ ${jctools.version}
+
+
+ org.openjdk.jmh
+ jmh-core
+ ${jmh-core.version}
+
@@ -77,6 +87,7 @@
0.8.0
+ 2.1.2
\ No newline at end of file
diff --git a/libraries-5/src/main/java/com/baeldung/jctools/MpmcBenchmark.java b/libraries-concurrency/src/main/java/com/baeldung/jctools/MpmcBenchmark.java
similarity index 77%
rename from libraries-5/src/main/java/com/baeldung/jctools/MpmcBenchmark.java
rename to libraries-concurrency/src/main/java/com/baeldung/jctools/MpmcBenchmark.java
index 7b754bf709..d448bb74b6 100644
--- a/libraries-5/src/main/java/com/baeldung/jctools/MpmcBenchmark.java
+++ b/libraries-concurrency/src/main/java/com/baeldung/jctools/MpmcBenchmark.java
@@ -1,14 +1,27 @@
package com.baeldung.jctools;
-import org.jctools.queues.MpmcArrayQueue;
-import org.jctools.queues.atomic.MpmcAtomicArrayQueue;
-import org.openjdk.jmh.annotations.*;
-import org.openjdk.jmh.infra.Control;
-
import java.util.Queue;
import java.util.concurrent.ArrayBlockingQueue;
import java.util.concurrent.TimeUnit;
+import org.jctools.queues.MpmcArrayQueue;
+import org.jctools.queues.atomic.MpmcAtomicArrayQueue;
+import org.openjdk.jmh.annotations.Benchmark;
+import org.openjdk.jmh.annotations.BenchmarkMode;
+import org.openjdk.jmh.annotations.Fork;
+import org.openjdk.jmh.annotations.Group;
+import org.openjdk.jmh.annotations.GroupThreads;
+import org.openjdk.jmh.annotations.Level;
+import org.openjdk.jmh.annotations.Measurement;
+import org.openjdk.jmh.annotations.Mode;
+import org.openjdk.jmh.annotations.OutputTimeUnit;
+import org.openjdk.jmh.annotations.Param;
+import org.openjdk.jmh.annotations.Scope;
+import org.openjdk.jmh.annotations.Setup;
+import org.openjdk.jmh.annotations.State;
+import org.openjdk.jmh.annotations.Warmup;
+import org.openjdk.jmh.infra.Control;
+
@BenchmarkMode(Mode.SampleTime)
@OutputTimeUnit(TimeUnit.NANOSECONDS)
@Fork(1)
diff --git a/libraries-5/src/main/java/com/baeldung/jctools/README.md b/libraries-concurrency/src/main/java/com/baeldung/jctools/README.md
similarity index 100%
rename from libraries-5/src/main/java/com/baeldung/jctools/README.md
rename to libraries-concurrency/src/main/java/com/baeldung/jctools/README.md
diff --git a/libraries-5/src/test/java/com/baeldung/jctools/JCToolsUnitTest.java b/libraries-concurrency/src/test/java/com/baeldung/jctools/JCToolsUnitTest.java
similarity index 98%
rename from libraries-5/src/test/java/com/baeldung/jctools/JCToolsUnitTest.java
rename to libraries-concurrency/src/test/java/com/baeldung/jctools/JCToolsUnitTest.java
index a5dacdbdac..28f42650e9 100644
--- a/libraries-5/src/test/java/com/baeldung/jctools/JCToolsUnitTest.java
+++ b/libraries-concurrency/src/test/java/com/baeldung/jctools/JCToolsUnitTest.java
@@ -1,20 +1,19 @@
package com.baeldung.jctools;
-import org.assertj.core.api.Assertions;
-import org.jctools.queues.SpscArrayQueue;
-import org.jctools.queues.SpscChunkedArrayQueue;
-import org.junit.Test;
+import static org.assertj.core.api.Assertions.assertThat;
+import static org.assertj.core.api.Assertions.fail;
import java.util.HashSet;
import java.util.Set;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.atomic.AtomicReference;
-import java.util.function.IntConsumer;
import java.util.stream.Collectors;
import java.util.stream.IntStream;
-import static org.assertj.core.api.Assertions.assertThat;
-import static org.assertj.core.api.Assertions.fail;
+import org.assertj.core.api.Assertions;
+import org.jctools.queues.SpscArrayQueue;
+import org.jctools.queues.SpscChunkedArrayQueue;
+import org.junit.Test;
public class JCToolsUnitTest {
diff --git a/libraries-data-3/README.md b/libraries-data-3/README.md
new file mode 100644
index 0000000000..e6f02bf2aa
--- /dev/null
+++ b/libraries-data-3/README.md
@@ -0,0 +1,15 @@
+## Data Libraries
+
+This module contains articles about libraries for data processing in Java.
+
+### Relevant articles
+- [Introduction to Javatuples](https://www.baeldung.com/java-tuples)
+- [Software Transactional Memory in Java Using Multiverse](https://www.baeldung.com/java-multiverse-stm)
+- [Key Value Store with Chronicle Map](https://www.baeldung.com/java-chronicle-map)
+- [Guide to the Cactoos Library](https://www.baeldung.com/java-cactoos)
+- [Introduction to cache2k](https://www.baeldung.com/java-cache2k)
+- [Introduction to PCollections](https://www.baeldung.com/java-pcollections)
+- [Introduction to Eclipse Collections](https://www.baeldung.com/eclipse-collections)
+- [Introduction to Caffeine](https://www.baeldung.com/java-caching-caffeine)
+- [Guide to Using ModelMapper](https://www.baeldung.com/java-modelmapper)
+- More articles: [[<-- prev]](/../libraries-data-2)
diff --git a/libraries-data-3/pom.xml b/libraries-data-3/pom.xml
new file mode 100644
index 0000000000..536939d435
--- /dev/null
+++ b/libraries-data-3/pom.xml
@@ -0,0 +1,101 @@
+
+
+ 4.0.0
+ libraries-data-3
+ libraries-data-3
+
+
+ com.baeldung
+ parent-modules
+ 1.0.0-SNAPSHOT
+
+
+
+
+ org.javatuples
+ javatuples
+ ${javatuples.version}
+
+
+ org.multiverse
+ multiverse-core
+ ${multiverse.version}
+
+
+ net.openhft
+ chronicle-map
+ ${chronicle.map.version}
+
+
+ com.sun.java
+ tools
+
+
+
+
+ org.cactoos
+ cactoos
+ ${cactoos.version}
+
+
+ org.cache2k
+ cache2k-base-bom
+ ${cache2k.version}
+ pom
+
+
+ org.pcollections
+ pcollections
+ ${pcollections.version}
+
+
+ org.eclipse.collections
+ eclipse-collections
+ ${eclipse-collections.version}
+
+
+ com.github.ben-manes.caffeine
+ caffeine
+ ${caffeine.version}
+
+
+ com.google.code.findbugs
+ jsr305
+ ${findbugs.version}
+ test
+
+
+ org.modelmapper
+ modelmapper
+ ${org.modelmapper.version}
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+
+ --add-exports=java.base/jdk.internal.ref=ALL-UNNAMED --add-exports=java.base/sun.nio.ch=ALL-UNNAMED --add-exports=jdk.unsupported/sun.misc=ALL-UNNAMED --add-exports=jdk.compiler/com.sun.tools.javac.file=ALL-UNNAMED --add-opens=jdk.compiler/com.sun.tools.javac=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.reflect=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED
+
+
+
+
+
+
+ 1.2
+ 0.7.0
+ 3.24ea1
+ 0.43
+ 1.2.3.Final
+ 2.1.2
+ 8.2.0
+ 3.1.8
+ 3.0.2
+ 3.2.0
+
+
+
diff --git a/libraries-3/src/main/java/com/baeldung/cache2k/ProductHelper.java b/libraries-data-3/src/main/java/com/baeldung/cache2k/ProductHelper.java
similarity index 100%
rename from libraries-3/src/main/java/com/baeldung/cache2k/ProductHelper.java
rename to libraries-data-3/src/main/java/com/baeldung/cache2k/ProductHelper.java
diff --git a/libraries-3/src/main/java/com/baeldung/cache2k/ProductHelperUsingLoader.java b/libraries-data-3/src/main/java/com/baeldung/cache2k/ProductHelperUsingLoader.java
similarity index 100%
rename from libraries-3/src/main/java/com/baeldung/cache2k/ProductHelperUsingLoader.java
rename to libraries-data-3/src/main/java/com/baeldung/cache2k/ProductHelperUsingLoader.java
diff --git a/libraries-3/src/main/java/com/baeldung/cache2k/ProductHelperWithEventListener.java b/libraries-data-3/src/main/java/com/baeldung/cache2k/ProductHelperWithEventListener.java
similarity index 100%
rename from libraries-3/src/main/java/com/baeldung/cache2k/ProductHelperWithEventListener.java
rename to libraries-data-3/src/main/java/com/baeldung/cache2k/ProductHelperWithEventListener.java
diff --git a/libraries-3/src/main/java/com/baeldung/cache2k/ProductHelperWithExpiry.java b/libraries-data-3/src/main/java/com/baeldung/cache2k/ProductHelperWithExpiry.java
similarity index 100%
rename from libraries-3/src/main/java/com/baeldung/cache2k/ProductHelperWithExpiry.java
rename to libraries-data-3/src/main/java/com/baeldung/cache2k/ProductHelperWithExpiry.java
diff --git a/libraries-3/src/main/java/com/baeldung/cactoos/CactoosCollectionUtils.java b/libraries-data-3/src/main/java/com/baeldung/cactoos/CactoosCollectionUtils.java
similarity index 100%
rename from libraries-3/src/main/java/com/baeldung/cactoos/CactoosCollectionUtils.java
rename to libraries-data-3/src/main/java/com/baeldung/cactoos/CactoosCollectionUtils.java
diff --git a/libraries-3/src/main/java/com/baeldung/cactoos/CactoosStringUtils.java b/libraries-data-3/src/main/java/com/baeldung/cactoos/CactoosStringUtils.java
similarity index 100%
rename from libraries-3/src/main/java/com/baeldung/cactoos/CactoosStringUtils.java
rename to libraries-data-3/src/main/java/com/baeldung/cactoos/CactoosStringUtils.java
diff --git a/libraries-5/src/main/java/com/baeldung/caffeine/DataObject.java b/libraries-data-3/src/main/java/com/baeldung/caffeine/DataObject.java
similarity index 100%
rename from libraries-5/src/main/java/com/baeldung/caffeine/DataObject.java
rename to libraries-data-3/src/main/java/com/baeldung/caffeine/DataObject.java
diff --git a/libraries-4/src/main/java/com/baeldung/eclipsecollections/ConvertContainerToAnother.java b/libraries-data-3/src/main/java/com/baeldung/eclipsecollections/ConvertContainerToAnother.java
similarity index 100%
rename from libraries-4/src/main/java/com/baeldung/eclipsecollections/ConvertContainerToAnother.java
rename to libraries-data-3/src/main/java/com/baeldung/eclipsecollections/ConvertContainerToAnother.java
diff --git a/libraries-4/src/main/java/com/baeldung/eclipsecollections/Student.java b/libraries-data-3/src/main/java/com/baeldung/eclipsecollections/Student.java
similarity index 100%
rename from libraries-4/src/main/java/com/baeldung/eclipsecollections/Student.java
rename to libraries-data-3/src/main/java/com/baeldung/eclipsecollections/Student.java
diff --git a/libraries-6/src/main/java/com/baeldung/modelmapper/domain/Game.java b/libraries-data-3/src/main/java/com/baeldung/modelmapper/domain/Game.java
similarity index 100%
rename from libraries-6/src/main/java/com/baeldung/modelmapper/domain/Game.java
rename to libraries-data-3/src/main/java/com/baeldung/modelmapper/domain/Game.java
diff --git a/libraries-6/src/main/java/com/baeldung/modelmapper/domain/GameMode.java b/libraries-data-3/src/main/java/com/baeldung/modelmapper/domain/GameMode.java
similarity index 100%
rename from libraries-6/src/main/java/com/baeldung/modelmapper/domain/GameMode.java
rename to libraries-data-3/src/main/java/com/baeldung/modelmapper/domain/GameMode.java
diff --git a/libraries-6/src/main/java/com/baeldung/modelmapper/domain/GameSettings.java b/libraries-data-3/src/main/java/com/baeldung/modelmapper/domain/GameSettings.java
similarity index 100%
rename from libraries-6/src/main/java/com/baeldung/modelmapper/domain/GameSettings.java
rename to libraries-data-3/src/main/java/com/baeldung/modelmapper/domain/GameSettings.java
diff --git a/libraries-6/src/main/java/com/baeldung/modelmapper/domain/Player.java b/libraries-data-3/src/main/java/com/baeldung/modelmapper/domain/Player.java
similarity index 100%
rename from libraries-6/src/main/java/com/baeldung/modelmapper/domain/Player.java
rename to libraries-data-3/src/main/java/com/baeldung/modelmapper/domain/Player.java
diff --git a/libraries-6/src/main/java/com/baeldung/modelmapper/dto/GameDTO.java b/libraries-data-3/src/main/java/com/baeldung/modelmapper/dto/GameDTO.java
similarity index 99%
rename from libraries-6/src/main/java/com/baeldung/modelmapper/dto/GameDTO.java
rename to libraries-data-3/src/main/java/com/baeldung/modelmapper/dto/GameDTO.java
index 1c8111809c..07e3ba4903 100644
--- a/libraries-6/src/main/java/com/baeldung/modelmapper/dto/GameDTO.java
+++ b/libraries-data-3/src/main/java/com/baeldung/modelmapper/dto/GameDTO.java
@@ -1,8 +1,9 @@
package com.baeldung.modelmapper.dto;
-import com.baeldung.modelmapper.domain.GameMode;
import java.util.List;
+import com.baeldung.modelmapper.domain.GameMode;
+
public class GameDTO {
private Long id;
diff --git a/libraries-6/src/main/java/com/baeldung/modelmapper/dto/PlayerDTO.java b/libraries-data-3/src/main/java/com/baeldung/modelmapper/dto/PlayerDTO.java
similarity index 100%
rename from libraries-6/src/main/java/com/baeldung/modelmapper/dto/PlayerDTO.java
rename to libraries-data-3/src/main/java/com/baeldung/modelmapper/dto/PlayerDTO.java
diff --git a/libraries-6/src/main/java/com/baeldung/modelmapper/repository/GameRepository.java b/libraries-data-3/src/main/java/com/baeldung/modelmapper/repository/GameRepository.java
similarity index 99%
rename from libraries-6/src/main/java/com/baeldung/modelmapper/repository/GameRepository.java
rename to libraries-data-3/src/main/java/com/baeldung/modelmapper/repository/GameRepository.java
index 80b861c981..2b33e8fba6 100644
--- a/libraries-6/src/main/java/com/baeldung/modelmapper/repository/GameRepository.java
+++ b/libraries-data-3/src/main/java/com/baeldung/modelmapper/repository/GameRepository.java
@@ -1,9 +1,10 @@
package com.baeldung.modelmapper.repository;
-import com.baeldung.modelmapper.domain.Game;
import java.util.ArrayList;
import java.util.List;
+import com.baeldung.modelmapper.domain.Game;
+
/**
* Sample in-memory Game Repository
*/
diff --git a/libraries/src/main/java/com/baeldung/stm/Account.java b/libraries-data-3/src/main/java/com/baeldung/stm/Account.java
similarity index 100%
rename from libraries/src/main/java/com/baeldung/stm/Account.java
rename to libraries-data-3/src/main/java/com/baeldung/stm/Account.java
diff --git a/libraries-3/src/test/java/com/baeldung/cache2k/ProductHelperUnitTest.java b/libraries-data-3/src/test/java/com/baeldung/cache2k/ProductHelperUnitTest.java
similarity index 100%
rename from libraries-3/src/test/java/com/baeldung/cache2k/ProductHelperUnitTest.java
rename to libraries-data-3/src/test/java/com/baeldung/cache2k/ProductHelperUnitTest.java
diff --git a/libraries-3/src/test/java/com/baeldung/cache2k/ProductHelperUsingLoaderUnitTest.java b/libraries-data-3/src/test/java/com/baeldung/cache2k/ProductHelperUsingLoaderUnitTest.java
similarity index 100%
rename from libraries-3/src/test/java/com/baeldung/cache2k/ProductHelperUsingLoaderUnitTest.java
rename to libraries-data-3/src/test/java/com/baeldung/cache2k/ProductHelperUsingLoaderUnitTest.java
diff --git a/libraries-3/src/test/java/com/baeldung/cache2k/ProductHelperWithEventListenerUnitTest.java b/libraries-data-3/src/test/java/com/baeldung/cache2k/ProductHelperWithEventListenerUnitTest.java
similarity index 100%
rename from libraries-3/src/test/java/com/baeldung/cache2k/ProductHelperWithEventListenerUnitTest.java
rename to libraries-data-3/src/test/java/com/baeldung/cache2k/ProductHelperWithEventListenerUnitTest.java
diff --git a/libraries-3/src/test/java/com/baeldung/cache2k/ProductHelperWithExpiryUnitTest.java b/libraries-data-3/src/test/java/com/baeldung/cache2k/ProductHelperWithExpiryUnitTest.java
similarity index 100%
rename from libraries-3/src/test/java/com/baeldung/cache2k/ProductHelperWithExpiryUnitTest.java
rename to libraries-data-3/src/test/java/com/baeldung/cache2k/ProductHelperWithExpiryUnitTest.java
diff --git a/libraries-3/src/test/java/com/baeldung/cactoos/CactoosCollectionUtilsUnitTest.java b/libraries-data-3/src/test/java/com/baeldung/cactoos/CactoosCollectionUtilsUnitTest.java
similarity index 100%
rename from libraries-3/src/test/java/com/baeldung/cactoos/CactoosCollectionUtilsUnitTest.java
rename to libraries-data-3/src/test/java/com/baeldung/cactoos/CactoosCollectionUtilsUnitTest.java
index c6bcbd7df7..a57c5def6e 100644
--- a/libraries-3/src/test/java/com/baeldung/cactoos/CactoosCollectionUtilsUnitTest.java
+++ b/libraries-data-3/src/test/java/com/baeldung/cactoos/CactoosCollectionUtilsUnitTest.java
@@ -3,8 +3,8 @@ package com.baeldung.cactoos;
import static org.junit.jupiter.api.Assertions.assertEquals;
import java.io.IOException;
-import java.util.List;
import java.util.ArrayList;
+import java.util.List;
import org.junit.Test;
diff --git a/libraries-3/src/test/java/com/baeldung/cactoos/CactoosStringUtilsUnitTest.java b/libraries-data-3/src/test/java/com/baeldung/cactoos/CactoosStringUtilsUnitTest.java
similarity index 100%
rename from libraries-3/src/test/java/com/baeldung/cactoos/CactoosStringUtilsUnitTest.java
rename to libraries-data-3/src/test/java/com/baeldung/cactoos/CactoosStringUtilsUnitTest.java
diff --git a/libraries-5/src/test/java/com/baeldung/caffeine/CaffeineUnitTest.java b/libraries-data-3/src/test/java/com/baeldung/caffeine/CaffeineUnitTest.java
similarity index 92%
rename from libraries-5/src/test/java/com/baeldung/caffeine/CaffeineUnitTest.java
rename to libraries-data-3/src/test/java/com/baeldung/caffeine/CaffeineUnitTest.java
index 65c441c50d..db7e12d78c 100644
--- a/libraries-5/src/test/java/com/baeldung/caffeine/CaffeineUnitTest.java
+++ b/libraries-data-3/src/test/java/com/baeldung/caffeine/CaffeineUnitTest.java
@@ -1,6 +1,8 @@
package com.baeldung.caffeine;
-import static org.junit.Assert.*;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertNull;
import java.util.Arrays;
import java.util.Map;
@@ -11,7 +13,11 @@ import javax.annotation.Nonnull;
import org.junit.Assert;
import org.junit.Test;
-import com.github.benmanes.caffeine.cache.*;
+import com.github.benmanes.caffeine.cache.AsyncLoadingCache;
+import com.github.benmanes.caffeine.cache.Cache;
+import com.github.benmanes.caffeine.cache.Caffeine;
+import com.github.benmanes.caffeine.cache.Expiry;
+import com.github.benmanes.caffeine.cache.LoadingCache;
public class CaffeineUnitTest {
diff --git a/libraries-2/src/test/java/com/baeldung/chroniclemap/ChronicleMapUnitTest.java b/libraries-data-3/src/test/java/com/baeldung/chroniclemap/ChronicleMapUnitTest.java
similarity index 97%
rename from libraries-2/src/test/java/com/baeldung/chroniclemap/ChronicleMapUnitTest.java
rename to libraries-data-3/src/test/java/com/baeldung/chroniclemap/ChronicleMapUnitTest.java
index 7f36a9abdb..6b3898419a 100644
--- a/libraries-2/src/test/java/com/baeldung/chroniclemap/ChronicleMapUnitTest.java
+++ b/libraries-data-3/src/test/java/com/baeldung/chroniclemap/ChronicleMapUnitTest.java
@@ -1,132 +1,132 @@
-package com.baeldung.chroniclemap;
-
-import static org.hamcrest.CoreMatchers.equalTo;
-import static org.hamcrest.CoreMatchers.is;
-import static org.junit.Assert.assertThat;
-
-import java.io.File;
-import java.util.HashSet;
-import java.util.Set;
-import java.util.stream.Collectors;
-import java.util.stream.IntStream;
-
-import org.junit.AfterClass;
-import org.junit.BeforeClass;
-import org.junit.Test;
-
-import net.openhft.chronicle.core.values.LongValue;
-import net.openhft.chronicle.map.ChronicleMap;
-import net.openhft.chronicle.map.ExternalMapQueryContext;
-import net.openhft.chronicle.map.MapEntry;
-import net.openhft.chronicle.values.Values;
-
-public class ChronicleMapUnitTest {
-
- static ChronicleMap persistedCountryMap = null;
-
- static ChronicleMap inMemoryCountryMap = null;
-
- static ChronicleMap> multiMap = null;
-
- @SuppressWarnings({ "unchecked", "rawtypes" })
- @BeforeClass
- public static void init() {
- try {
- inMemoryCountryMap = ChronicleMap.of(LongValue.class, CharSequence.class)
- .name("country-map")
- .entries(50)
- .averageValue("America")
- .create();
-
- persistedCountryMap = ChronicleMap.of(LongValue.class, CharSequence.class)
- .name("country-map")
- .entries(50)
- .averageValue("America")
- .createPersistedTo(new File(System.getProperty("user.home") + "/country-details.dat"));
-
- Set averageValue = IntStream.of(1, 2)
- .boxed()
- .collect(Collectors.toSet());
- multiMap = ChronicleMap.of(Integer.class, (Class>) (Class) Set.class)
- .name("multi-map")
- .entries(50)
- .averageValue(averageValue)
- .create();
-
- LongValue qatarKey = Values.newHeapInstance(LongValue.class);
- qatarKey.setValue(1);
- inMemoryCountryMap.put(qatarKey, "Qatar");
-
- LongValue key = Values.newHeapInstance(LongValue.class);
- key.setValue(1);
- persistedCountryMap.put(key, "Romania");
- key.setValue(2);
- persistedCountryMap.put(key, "India");
-
- Set set1 = new HashSet<>();
- set1.add(1);
- set1.add(2);
- multiMap.put(1, set1);
-
- Set set2 = new HashSet<>();
- set2.add(3);
- multiMap.put(2, set2);
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
-
- @Test
- public void givenGetQuery_whenCalled_shouldReturnResult() {
- LongValue key = Values.newHeapInstance(LongValue.class);
- key.setValue(1);
- CharSequence country = inMemoryCountryMap.get(key);
- assertThat(country.toString(), is(equalTo("Qatar")));
- }
-
- @Test
- public void givenGetUsingQuery_whenCalled_shouldReturnResult() {
- LongValue key = Values.newHeapInstance(LongValue.class);
- StringBuilder country = new StringBuilder();
- key.setValue(1);
- persistedCountryMap.getUsing(key, country);
- assertThat(country.toString(), is(equalTo("Romania")));
- key.setValue(2);
- persistedCountryMap.getUsing(key, country);
- assertThat(country.toString(), is(equalTo("India")));
- }
-
- @Test
- public void givenMultipleKeyQuery_whenProcessed_shouldChangeTheValue() {
- try (ExternalMapQueryContext, ?> fistContext = multiMap.queryContext(1)) {
- try (ExternalMapQueryContext, ?> secondContext = multiMap.queryContext(2)) {
- fistContext.updateLock()
- .lock();
- secondContext.updateLock()
- .lock();
- MapEntry> firstEntry = fistContext.entry();
- Set firstSet = firstEntry.value()
- .get();
- firstSet.remove(2);
- MapEntry> secondEntry = secondContext.entry();
- Set secondSet = secondEntry.value()
- .get();
- secondSet.add(4);
- firstEntry.doReplaceValue(fistContext.wrapValueAsData(firstSet));
- secondEntry.doReplaceValue(secondContext.wrapValueAsData(secondSet));
- }
- } finally {
- assertThat(multiMap.get(1)
- .size(), is(equalTo(1)));
- assertThat(multiMap.get(2)
- .size(), is(equalTo(2)));
- }
- }
-
- @AfterClass
- public static void finish() {
- persistedCountryMap.close();
- inMemoryCountryMap.close();
- multiMap.close();
- }
-}
+package com.baeldung.chroniclemap;
+
+import static org.hamcrest.CoreMatchers.equalTo;
+import static org.hamcrest.CoreMatchers.is;
+import static org.junit.Assert.assertThat;
+
+import java.io.File;
+import java.util.HashSet;
+import java.util.Set;
+import java.util.stream.Collectors;
+import java.util.stream.IntStream;
+
+import org.junit.AfterClass;
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+import net.openhft.chronicle.core.values.LongValue;
+import net.openhft.chronicle.map.ChronicleMap;
+import net.openhft.chronicle.map.ExternalMapQueryContext;
+import net.openhft.chronicle.map.MapEntry;
+import net.openhft.chronicle.values.Values;
+
+public class ChronicleMapUnitTest {
+
+ static ChronicleMap persistedCountryMap = null;
+
+ static ChronicleMap inMemoryCountryMap = null;
+
+ static ChronicleMap> multiMap = null;
+
+ @SuppressWarnings({ "unchecked", "rawtypes" })
+ @BeforeClass
+ public static void init() {
+ try {
+ inMemoryCountryMap = ChronicleMap.of(LongValue.class, CharSequence.class)
+ .name("country-map")
+ .entries(50)
+ .averageValue("America")
+ .create();
+
+ persistedCountryMap = ChronicleMap.of(LongValue.class, CharSequence.class)
+ .name("country-map")
+ .entries(50)
+ .averageValue("America")
+ .createPersistedTo(new File(System.getProperty("user.home") + "/country-details.dat"));
+
+ Set averageValue = IntStream.of(1, 2)
+ .boxed()
+ .collect(Collectors.toSet());
+ multiMap = ChronicleMap.of(Integer.class, (Class>) (Class) Set.class)
+ .name("multi-map")
+ .entries(50)
+ .averageValue(averageValue)
+ .create();
+
+ LongValue qatarKey = Values.newHeapInstance(LongValue.class);
+ qatarKey.setValue(1);
+ inMemoryCountryMap.put(qatarKey, "Qatar");
+
+ LongValue key = Values.newHeapInstance(LongValue.class);
+ key.setValue(1);
+ persistedCountryMap.put(key, "Romania");
+ key.setValue(2);
+ persistedCountryMap.put(key, "India");
+
+ Set set1 = new HashSet<>();
+ set1.add(1);
+ set1.add(2);
+ multiMap.put(1, set1);
+
+ Set set2 = new HashSet<>();
+ set2.add(3);
+ multiMap.put(2, set2);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+
+ @Test
+ public void givenGetQuery_whenCalled_shouldReturnResult() {
+ LongValue key = Values.newHeapInstance(LongValue.class);
+ key.setValue(1);
+ CharSequence country = inMemoryCountryMap.get(key);
+ assertThat(country.toString(), is(equalTo("Qatar")));
+ }
+
+ @Test
+ public void givenGetUsingQuery_whenCalled_shouldReturnResult() {
+ LongValue key = Values.newHeapInstance(LongValue.class);
+ StringBuilder country = new StringBuilder();
+ key.setValue(1);
+ persistedCountryMap.getUsing(key, country);
+ assertThat(country.toString(), is(equalTo("Romania")));
+ key.setValue(2);
+ persistedCountryMap.getUsing(key, country);
+ assertThat(country.toString(), is(equalTo("India")));
+ }
+
+ @Test
+ public void givenMultipleKeyQuery_whenProcessed_shouldChangeTheValue() {
+ try (ExternalMapQueryContext, ?> fistContext = multiMap.queryContext(1)) {
+ try (ExternalMapQueryContext, ?> secondContext = multiMap.queryContext(2)) {
+ fistContext.updateLock()
+ .lock();
+ secondContext.updateLock()
+ .lock();
+ MapEntry> firstEntry = fistContext.entry();
+ Set firstSet = firstEntry.value()
+ .get();
+ firstSet.remove(2);
+ MapEntry> secondEntry = secondContext.entry();
+ Set secondSet = secondEntry.value()
+ .get();
+ secondSet.add(4);
+ firstEntry.doReplaceValue(fistContext.wrapValueAsData(firstSet));
+ secondEntry.doReplaceValue(secondContext.wrapValueAsData(secondSet));
+ }
+ } finally {
+ assertThat(multiMap.get(1)
+ .size(), is(equalTo(1)));
+ assertThat(multiMap.get(2)
+ .size(), is(equalTo(2)));
+ }
+ }
+
+ @AfterClass
+ public static void finish() {
+ persistedCountryMap.close();
+ inMemoryCountryMap.close();
+ multiMap.close();
+ }
+}
diff --git a/libraries-4/src/test/java/com/baeldung/eclipsecollections/AllSatisfyPatternUnitTest.java b/libraries-data-3/src/test/java/com/baeldung/eclipsecollections/AllSatisfyPatternUnitTest.java
similarity index 100%
rename from libraries-4/src/test/java/com/baeldung/eclipsecollections/AllSatisfyPatternUnitTest.java
rename to libraries-data-3/src/test/java/com/baeldung/eclipsecollections/AllSatisfyPatternUnitTest.java
diff --git a/libraries-4/src/test/java/com/baeldung/eclipsecollections/AnySatisfyPatternUnitTest.java b/libraries-data-3/src/test/java/com/baeldung/eclipsecollections/AnySatisfyPatternUnitTest.java
similarity index 100%
rename from libraries-4/src/test/java/com/baeldung/eclipsecollections/AnySatisfyPatternUnitTest.java
rename to libraries-data-3/src/test/java/com/baeldung/eclipsecollections/AnySatisfyPatternUnitTest.java
diff --git a/libraries-4/src/test/java/com/baeldung/eclipsecollections/CollectPatternUnitTest.java b/libraries-data-3/src/test/java/com/baeldung/eclipsecollections/CollectPatternUnitTest.java
similarity index 99%
rename from libraries-4/src/test/java/com/baeldung/eclipsecollections/CollectPatternUnitTest.java
rename to libraries-data-3/src/test/java/com/baeldung/eclipsecollections/CollectPatternUnitTest.java
index ff111a6d72..878964a25f 100644
--- a/libraries-4/src/test/java/com/baeldung/eclipsecollections/CollectPatternUnitTest.java
+++ b/libraries-data-3/src/test/java/com/baeldung/eclipsecollections/CollectPatternUnitTest.java
@@ -1,9 +1,8 @@
package com.baeldung.eclipsecollections;
+import org.assertj.core.api.Assertions;
import org.eclipse.collections.api.list.MutableList;
import org.eclipse.collections.impl.list.mutable.FastList;
-
-import org.assertj.core.api.Assertions;
import org.junit.Test;
public class CollectPatternUnitTest {
diff --git a/libraries-4/src/test/java/com/baeldung/eclipsecollections/ConvertContainerToAnotherUnitTest.java b/libraries-data-3/src/test/java/com/baeldung/eclipsecollections/ConvertContainerToAnotherUnitTest.java
similarity index 100%
rename from libraries-4/src/test/java/com/baeldung/eclipsecollections/ConvertContainerToAnotherUnitTest.java
rename to libraries-data-3/src/test/java/com/baeldung/eclipsecollections/ConvertContainerToAnotherUnitTest.java
diff --git a/libraries-4/src/test/java/com/baeldung/eclipsecollections/DetectPatternUnitTest.java b/libraries-data-3/src/test/java/com/baeldung/eclipsecollections/DetectPatternUnitTest.java
similarity index 100%
rename from libraries-4/src/test/java/com/baeldung/eclipsecollections/DetectPatternUnitTest.java
rename to libraries-data-3/src/test/java/com/baeldung/eclipsecollections/DetectPatternUnitTest.java
diff --git a/libraries-4/src/test/java/com/baeldung/eclipsecollections/FlatCollectUnitTest.java b/libraries-data-3/src/test/java/com/baeldung/eclipsecollections/FlatCollectUnitTest.java
similarity index 99%
rename from libraries-4/src/test/java/com/baeldung/eclipsecollections/FlatCollectUnitTest.java
rename to libraries-data-3/src/test/java/com/baeldung/eclipsecollections/FlatCollectUnitTest.java
index b0735267ae..3f57576e5d 100644
--- a/libraries-4/src/test/java/com/baeldung/eclipsecollections/FlatCollectUnitTest.java
+++ b/libraries-data-3/src/test/java/com/baeldung/eclipsecollections/FlatCollectUnitTest.java
@@ -1,12 +1,11 @@
package com.baeldung.eclipsecollections;
-import org.assertj.core.api.Assertions;
-import org.eclipse.collections.api.list.MutableList;
-import org.eclipse.collections.impl.list.mutable.FastList;
-
import java.util.ArrayList;
import java.util.List;
+import org.assertj.core.api.Assertions;
+import org.eclipse.collections.api.list.MutableList;
+import org.eclipse.collections.impl.list.mutable.FastList;
import org.junit.Before;
import org.junit.Test;
diff --git a/libraries-4/src/test/java/com/baeldung/eclipsecollections/ForEachPatternUnitTest.java b/libraries-data-3/src/test/java/com/baeldung/eclipsecollections/ForEachPatternUnitTest.java
similarity index 95%
rename from libraries-4/src/test/java/com/baeldung/eclipsecollections/ForEachPatternUnitTest.java
rename to libraries-data-3/src/test/java/com/baeldung/eclipsecollections/ForEachPatternUnitTest.java
index a1bd280658..3f395324c2 100644
--- a/libraries-4/src/test/java/com/baeldung/eclipsecollections/ForEachPatternUnitTest.java
+++ b/libraries-data-3/src/test/java/com/baeldung/eclipsecollections/ForEachPatternUnitTest.java
@@ -1,7 +1,5 @@
package com.baeldung.eclipsecollections;
-import static org.junit.Assert.assertEquals;
-
import org.eclipse.collections.api.tuple.Pair;
import org.eclipse.collections.impl.map.mutable.UnifiedMap;
import org.eclipse.collections.impl.tuple.Tuples;
diff --git a/libraries-4/src/test/java/com/baeldung/eclipsecollections/InjectIntoPatternUnitTest.java b/libraries-data-3/src/test/java/com/baeldung/eclipsecollections/InjectIntoPatternUnitTest.java
similarity index 100%
rename from libraries-4/src/test/java/com/baeldung/eclipsecollections/InjectIntoPatternUnitTest.java
rename to libraries-data-3/src/test/java/com/baeldung/eclipsecollections/InjectIntoPatternUnitTest.java
diff --git a/libraries-4/src/test/java/com/baeldung/eclipsecollections/LazyIterationUnitTest.java b/libraries-data-3/src/test/java/com/baeldung/eclipsecollections/LazyIterationUnitTest.java
similarity index 100%
rename from libraries-4/src/test/java/com/baeldung/eclipsecollections/LazyIterationUnitTest.java
rename to libraries-data-3/src/test/java/com/baeldung/eclipsecollections/LazyIterationUnitTest.java
diff --git a/libraries-4/src/test/java/com/baeldung/eclipsecollections/PartitionPatternUnitTest.java b/libraries-data-3/src/test/java/com/baeldung/eclipsecollections/PartitionPatternUnitTest.java
similarity index 100%
rename from libraries-4/src/test/java/com/baeldung/eclipsecollections/PartitionPatternUnitTest.java
rename to libraries-data-3/src/test/java/com/baeldung/eclipsecollections/PartitionPatternUnitTest.java
diff --git a/libraries-4/src/test/java/com/baeldung/eclipsecollections/RejectPatternUnitTest.java b/libraries-data-3/src/test/java/com/baeldung/eclipsecollections/RejectPatternUnitTest.java
similarity index 100%
rename from libraries-4/src/test/java/com/baeldung/eclipsecollections/RejectPatternUnitTest.java
rename to libraries-data-3/src/test/java/com/baeldung/eclipsecollections/RejectPatternUnitTest.java
diff --git a/libraries-4/src/test/java/com/baeldung/eclipsecollections/SelectPatternUnitTest.java b/libraries-data-3/src/test/java/com/baeldung/eclipsecollections/SelectPatternUnitTest.java
similarity index 100%
rename from libraries-4/src/test/java/com/baeldung/eclipsecollections/SelectPatternUnitTest.java
rename to libraries-data-3/src/test/java/com/baeldung/eclipsecollections/SelectPatternUnitTest.java
diff --git a/libraries-4/src/test/java/com/baeldung/eclipsecollections/ZipUnitTest.java b/libraries-data-3/src/test/java/com/baeldung/eclipsecollections/ZipUnitTest.java
similarity index 99%
rename from libraries-4/src/test/java/com/baeldung/eclipsecollections/ZipUnitTest.java
rename to libraries-data-3/src/test/java/com/baeldung/eclipsecollections/ZipUnitTest.java
index 942cdf4595..31b91c663e 100644
--- a/libraries-4/src/test/java/com/baeldung/eclipsecollections/ZipUnitTest.java
+++ b/libraries-data-3/src/test/java/com/baeldung/eclipsecollections/ZipUnitTest.java
@@ -1,11 +1,10 @@
package com.baeldung.eclipsecollections;
+import org.assertj.core.api.Assertions;
import org.eclipse.collections.api.list.MutableList;
import org.eclipse.collections.api.tuple.Pair;
import org.eclipse.collections.impl.factory.Lists;
import org.eclipse.collections.impl.tuple.Tuples;
-
-import org.assertj.core.api.Assertions;
import org.junit.Before;
import org.junit.Test;
diff --git a/libraries-4/src/test/java/com/baeldung/eclipsecollections/ZipWithIndexUnitTest.java b/libraries-data-3/src/test/java/com/baeldung/eclipsecollections/ZipWithIndexUnitTest.java
similarity index 100%
rename from libraries-4/src/test/java/com/baeldung/eclipsecollections/ZipWithIndexUnitTest.java
rename to libraries-data-3/src/test/java/com/baeldung/eclipsecollections/ZipWithIndexUnitTest.java
diff --git a/libraries/src/test/java/com/baeldung/javatuples/JavaTuplesUnitTest.java b/libraries-data-3/src/test/java/com/baeldung/javatuples/JavaTuplesUnitTest.java
similarity index 100%
rename from libraries/src/test/java/com/baeldung/javatuples/JavaTuplesUnitTest.java
rename to libraries-data-3/src/test/java/com/baeldung/javatuples/JavaTuplesUnitTest.java
diff --git a/libraries-6/src/test/java/com/baeldung/modelmapper/ModelMapperUnitTest.java b/libraries-data-3/src/test/java/com/baeldung/modelmapper/ModelMapperUnitTest.java
similarity index 99%
rename from libraries-6/src/test/java/com/baeldung/modelmapper/ModelMapperUnitTest.java
rename to libraries-data-3/src/test/java/com/baeldung/modelmapper/ModelMapperUnitTest.java
index 69bc4059b0..c24e3c1f96 100644
--- a/libraries-6/src/test/java/com/baeldung/modelmapper/ModelMapperUnitTest.java
+++ b/libraries-data-3/src/test/java/com/baeldung/modelmapper/ModelMapperUnitTest.java
@@ -5,15 +5,9 @@ import static org.junit.jupiter.api.Assertions.assertNotEquals;
import static org.junit.jupiter.api.Assertions.assertNotNull;
import static org.junit.jupiter.api.Assertions.assertNull;
-import com.baeldung.modelmapper.domain.Game;
-import com.baeldung.modelmapper.domain.GameMode;
-import com.baeldung.modelmapper.domain.GameSettings;
-import com.baeldung.modelmapper.domain.Player;
-import com.baeldung.modelmapper.dto.GameDTO;
-import com.baeldung.modelmapper.dto.PlayerDTO;
-import com.baeldung.modelmapper.repository.GameRepository;
import java.time.Instant;
import java.util.Collection;
+
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.modelmapper.Condition;
@@ -24,6 +18,14 @@ import org.modelmapper.Provider;
import org.modelmapper.TypeMap;
import org.modelmapper.convention.MatchingStrategies;
+import com.baeldung.modelmapper.domain.Game;
+import com.baeldung.modelmapper.domain.GameMode;
+import com.baeldung.modelmapper.domain.GameSettings;
+import com.baeldung.modelmapper.domain.Player;
+import com.baeldung.modelmapper.dto.GameDTO;
+import com.baeldung.modelmapper.dto.PlayerDTO;
+import com.baeldung.modelmapper.repository.GameRepository;
+
public class ModelMapperUnitTest {
ModelMapper mapper;
diff --git a/libraries-4/src/test/java/com/baeldung/pcollections/PCollectionsUnitTest.java b/libraries-data-3/src/test/java/com/baeldung/pcollections/PCollectionsUnitTest.java
similarity index 96%
rename from libraries-4/src/test/java/com/baeldung/pcollections/PCollectionsUnitTest.java
rename to libraries-data-3/src/test/java/com/baeldung/pcollections/PCollectionsUnitTest.java
index 1a75624439..48bf232294 100644
--- a/libraries-4/src/test/java/com/baeldung/pcollections/PCollectionsUnitTest.java
+++ b/libraries-data-3/src/test/java/com/baeldung/pcollections/PCollectionsUnitTest.java
@@ -1,6 +1,14 @@
package com.baeldung.pcollections;
-import org.junit.Test;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.Map;
+
+import org.junit.jupiter.api.Test;
import org.pcollections.HashPMap;
import org.pcollections.HashTreePMap;
import org.pcollections.HashTreePSet;
@@ -8,14 +16,6 @@ import org.pcollections.MapPSet;
import org.pcollections.PVector;
import org.pcollections.TreePVector;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.Map;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertTrue;
-
public class PCollectionsUnitTest {
@Test
diff --git a/libraries/src/test/java/com/baeldung/stm/AccountUnitTest.java b/libraries-data-3/src/test/java/com/baeldung/stm/AccountUnitTest.java
similarity index 99%
rename from libraries/src/test/java/com/baeldung/stm/AccountUnitTest.java
rename to libraries-data-3/src/test/java/com/baeldung/stm/AccountUnitTest.java
index aa872ab622..c5c78f7af3 100644
--- a/libraries/src/test/java/com/baeldung/stm/AccountUnitTest.java
+++ b/libraries-data-3/src/test/java/com/baeldung/stm/AccountUnitTest.java
@@ -1,6 +1,7 @@
package com.baeldung.stm;
-import org.junit.Test;
+import static org.assertj.core.api.Java6Assertions.assertThat;
+import static org.junit.Assert.assertTrue;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.ExecutorService;
@@ -8,8 +9,7 @@ import java.util.concurrent.Executors;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicBoolean;
-import static org.assertj.core.api.Java6Assertions.assertThat;
-import static org.junit.Assert.assertTrue;
+import org.junit.Test;
public class AccountUnitTest {
diff --git a/libraries-data-db/pom.xml b/libraries-data-db/pom.xml
index 6ee8daa2a5..7f77d40667 100644
--- a/libraries-data-db/pom.xml
+++ b/libraries-data-db/pom.xml
@@ -305,6 +305,7 @@
2.1.3.Final
2.2.3
1.17.6
+ 3.0.8
\ No newline at end of file
diff --git a/libraries-io/README.md b/libraries-io/README.md
index a9ca5df3d6..1f439b954b 100644
--- a/libraries-io/README.md
+++ b/libraries-io/README.md
@@ -4,3 +4,4 @@
- [Transferring a File Through SFTP in Java](https://www.baeldung.com/java-file-sftp)
- [How to Create Password-Protected Zip Files and Unzip Them in Java](https://www.baeldung.com/java-password-protected-zip-unzip)
- [How to Create CSV File from POJO with Custom Column Headers and Positions](https://www.baeldung.com/java-create-csv-pojo-customize-columns)
+- [Delete a Directory Recursively in Java](https://www.baeldung.com/java-delete-directory)
diff --git a/libraries-io/pom.xml b/libraries-io/pom.xml
index 7464b9a507..eb8b8a24c6 100644
--- a/libraries-io/pom.xml
+++ b/libraries-io/pom.xml
@@ -5,18 +5,6 @@
4.0.0
libraries-io
libraries-io
-
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
-
- 17
- 17
-
-
-
-
com.baeldung
@@ -51,8 +39,31 @@
opencsv
${opencsv.version}
+
+ commons-io
+ commons-io
+ ${commons-io.version}
+
+
+ org.springframework
+ spring-web
+ ${spring.version}
+
+
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+ 17
+ 17
+
+
+
+
+
0.1.55
@@ -60,9 +71,7 @@
2.4
2.9.0
5.8
- 17
- 17
- UTF-8
+ 4.3.8.RELEASE
\ No newline at end of file
diff --git a/libraries-4/src/test/java/com/baeldung/io/JavaDirectoryDeleteUnitTest.java b/libraries-io/src/test/java/com/baeldung/java/io/JavaDirectoryDeleteUnitTest.java
similarity index 99%
rename from libraries-4/src/test/java/com/baeldung/io/JavaDirectoryDeleteUnitTest.java
rename to libraries-io/src/test/java/com/baeldung/java/io/JavaDirectoryDeleteUnitTest.java
index c9c8242cd5..bf6c4d9e40 100644
--- a/libraries-4/src/test/java/com/baeldung/io/JavaDirectoryDeleteUnitTest.java
+++ b/libraries-io/src/test/java/com/baeldung/java/io/JavaDirectoryDeleteUnitTest.java
@@ -1,4 +1,4 @@
-package com.baeldung.io;
+package com.baeldung.java.io;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
diff --git a/libraries-testing-2/README.md b/libraries-testing-2/README.md
new file mode 100644
index 0000000000..e8fc854a13
--- /dev/null
+++ b/libraries-testing-2/README.md
@@ -0,0 +1,8 @@
+## Testing
+
+This module contains articles about test libraries.
+
+### Relevant articles
+
+- [Consumer Driven Contracts with Pact](https://www.baeldung.com/pact-junit-consumer-driven-contracts)
+- - More articles: [[<-- prev]](../libraries-testing)
diff --git a/libraries-testing-2/pom.xml b/libraries-testing-2/pom.xml
new file mode 100644
index 0000000000..6e75df172f
--- /dev/null
+++ b/libraries-testing-2/pom.xml
@@ -0,0 +1,56 @@
+
+
+ 4.0.0
+ libraries-testing-2
+ libraries-testing-2
+
+
+ com.baeldung
+ parent-boot-2
+ 0.0.1-SNAPSHOT
+ ../parent-boot-2
+
+
+
+
+ au.com.dius
+ pact-jvm-provider-junit5_2.12
+ ${pact.version}
+
+
+ au.com.dius
+ pact-jvm-consumer-junit5_2.12
+ ${pact.version}
+ test
+
+
+ org.springframework
+ spring-web
+
+
+ org.springframework.boot
+ spring-boot-starter-web
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+
+
+ target/mypacts
+
+
+
+
+
+
+
+ 3.6.3
+
+
+
\ No newline at end of file
diff --git a/libraries-5/src/main/java/com/baeldung/pact/config/MainApplication.java b/libraries-testing-2/src/main/java/com/baeldung/pact/config/MainApplication.java
similarity index 100%
rename from libraries-5/src/main/java/com/baeldung/pact/config/MainApplication.java
rename to libraries-testing-2/src/main/java/com/baeldung/pact/config/MainApplication.java
diff --git a/libraries-5/src/main/java/com/baeldung/pact/web/controller/PactController.java b/libraries-testing-2/src/main/java/com/baeldung/pact/web/controller/PactController.java
similarity index 100%
rename from libraries-5/src/main/java/com/baeldung/pact/web/controller/PactController.java
rename to libraries-testing-2/src/main/java/com/baeldung/pact/web/controller/PactController.java
diff --git a/libraries-5/src/main/java/com/baeldung/pact/web/dto/PactDto.java b/libraries-testing-2/src/main/java/com/baeldung/pact/web/dto/PactDto.java
similarity index 100%
rename from libraries-5/src/main/java/com/baeldung/pact/web/dto/PactDto.java
rename to libraries-testing-2/src/main/java/com/baeldung/pact/web/dto/PactDto.java
diff --git a/libraries-5/src/test/java/com/baeldung/pact/PactConsumerDrivenContractUnitTest.java b/libraries-testing-2/src/test/java/com/baeldung/pact/PactConsumerDrivenContractUnitTest.java
similarity index 100%
rename from libraries-5/src/test/java/com/baeldung/pact/PactConsumerDrivenContractUnitTest.java
rename to libraries-testing-2/src/test/java/com/baeldung/pact/PactConsumerDrivenContractUnitTest.java
diff --git a/libraries-5/src/test/java/com/baeldung/pact/PactProviderLiveTest.java b/libraries-testing-2/src/test/java/com/baeldung/pact/PactProviderLiveTest.java
similarity index 100%
rename from libraries-5/src/test/java/com/baeldung/pact/PactProviderLiveTest.java
rename to libraries-testing-2/src/test/java/com/baeldung/pact/PactProviderLiveTest.java
diff --git a/libraries-testing/README.md b/libraries-testing/README.md
index 2c473e8aa6..d3f6bc7ea0 100644
--- a/libraries-testing/README.md
+++ b/libraries-testing/README.md
@@ -14,3 +14,4 @@ This module contains articles about test libraries.
- [Introduction to DBUnit](https://www.baeldung.com/java-dbunit)
- [Introduction to ArchUnit](https://www.baeldung.com/java-archunit-intro)
- [Guide to the ModelAssert Library for JSON](https://www.baeldung.com/json-modelassert)
+- More articles: [[more -->]](../libraries-testing-2)
diff --git a/libraries/README.md b/libraries/README.md
index a8aa34973b..7e72292f45 100644
--- a/libraries/README.md
+++ b/libraries/README.md
@@ -8,12 +8,7 @@ The code examples related to different libraries are each in their own module.
Remember, for advanced libraries like [Jackson](/jackson) and [JUnit](/testing-modules) we already have separate modules. Please make sure to have a look at the existing modules in such cases.
### Relevant articles
-
-- [Introduction to Javatuples](https://www.baeldung.com/java-tuples)
- [Intro to JaVers](https://www.baeldung.com/javers)
- [Introduction to Quartz](https://www.baeldung.com/quartz)
-- [How to Warm Up the JVM](https://www.baeldung.com/java-jvm-warmup)
-- [Software Transactional Memory in Java Using Multiverse](https://www.baeldung.com/java-multiverse-stm)
- [Locality-Sensitive Hashing in Java Using Java-LSH](https://www.baeldung.com/locality-sensitive-hashing)
-- [Introduction to Neuroph](https://www.baeldung.com/neuroph)
- More articles [[next -->]](/libraries-2)
diff --git a/libraries/pom.xml b/libraries/pom.xml
index 756f455f4b..3ff912cae3 100644
--- a/libraries/pom.xml
+++ b/libraries/pom.xml
@@ -13,12 +13,6 @@
-
-
- org.beykery
- neuroph
- ${neuroph.version}
-
cglib
@@ -35,11 +29,6 @@
commons-net
${commons-net.version}
-
- org.javatuples
- javatuples
- ${javatuples.version}
-
org.javers
javers-core
@@ -99,11 +88,6 @@
${spring-mock-mvc.version}
test
-
- org.multiverse
- multiverse-core
- ${multiverse.version}
-
pl.pragmatists
JUnitParams
@@ -115,11 +99,6 @@
quartz
${quartz.version}
-
- org.openjdk.jmh
- jmh-core
- ${jmh-core.version}
-
info.debatty
java-lsh
@@ -254,11 +233,8 @@
2.2
- 0.7.0
3.2.7
- 1.2
3.1.0
- 2.92
1.9.26
1.41.0
1.9.0
diff --git a/pom.xml b/pom.xml
index 29c7816b87..4d0b9c0bc8 100644
--- a/pom.xml
+++ b/pom.xml
@@ -781,6 +781,7 @@
libraries-cli
libraries-concurrency
libraries-data-2
+ libraries-data-3
libraries-data-db
libraries-data-io
libraries-data
@@ -797,6 +798,7 @@
libraries-server
libraries-stream
libraries-testing
+ libraries-testing-2
libraries-transform
libraries
lightrun
@@ -1032,6 +1034,7 @@
libraries-cli
libraries-concurrency
libraries-data-2
+ libraries-data-3
libraries-data-db
libraries-data-io
libraries-data
@@ -1048,6 +1051,7 @@
libraries-server
libraries-stream
libraries-testing
+ libraries-testing-2
libraries-transform
libraries
lightrun
diff --git a/web-modules/java-takes/README.md b/web-modules/java-takes/README.md
new file mode 100644
index 0000000000..0db4361d6f
--- /dev/null
+++ b/web-modules/java-takes/README.md
@@ -0,0 +1,7 @@
+## Java takes
+
+This module contains articles about Takes.
+
+### Relevant Articles:
+- [Introduction to Takes](https://www.baeldung.com/java-takes)
+
diff --git a/web-modules/java-takes/pom.xml b/web-modules/java-takes/pom.xml
new file mode 100644
index 0000000000..e28f75b536
--- /dev/null
+++ b/web-modules/java-takes/pom.xml
@@ -0,0 +1,81 @@
+
+
+ 4.0.0
+ com.baeldung.spring-boot-modules
+ java-takes
+
+
+ com.baeldung
+ web-modules
+ 1.0.0-SNAPSHOT
+
+
+
+
+
+
+ org.takes
+ takes
+ ${takes.version}
+
+
+ org.apache.httpcomponents
+ httpcore
+ ${httpcore.version}
+
+
+ org.apache.httpcomponents
+ httpclient
+ ${httpclient.version}
+
+
+
+
+
+ reload
+
+
+
+ src/main/resources
+ true
+
+
+ src/main/webapp
+ true
+
+
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+
+
+ start-server
+ pre-integration-test
+
+ java
+
+
+
+
+ com.baeldung.com.baeldung.takes.TakesApp
+ false
+
+ --port=${port}
+
+
+
+
+
+
+
+
+
+ 1.19
+ 4.4.13
+ 4.5.12
+
+
+
\ No newline at end of file
diff --git a/libraries-3/src/main/java/com/baeldung/takes/TakesApp.java b/web-modules/java-takes/src/main/java/com/baeldung/takes/TakesApp.java
similarity index 100%
rename from libraries-3/src/main/java/com/baeldung/takes/TakesApp.java
rename to web-modules/java-takes/src/main/java/com/baeldung/takes/TakesApp.java
diff --git a/libraries-3/src/main/java/com/baeldung/takes/TakesContact.java b/web-modules/java-takes/src/main/java/com/baeldung/takes/TakesContact.java
similarity index 100%
rename from libraries-3/src/main/java/com/baeldung/takes/TakesContact.java
rename to web-modules/java-takes/src/main/java/com/baeldung/takes/TakesContact.java
diff --git a/libraries-3/src/main/java/com/baeldung/takes/TakesHelloWorld.java b/web-modules/java-takes/src/main/java/com/baeldung/takes/TakesHelloWorld.java
similarity index 100%
rename from libraries-3/src/main/java/com/baeldung/takes/TakesHelloWorld.java
rename to web-modules/java-takes/src/main/java/com/baeldung/takes/TakesHelloWorld.java
diff --git a/libraries-3/src/main/java/com/baeldung/takes/TakesIndex.java b/web-modules/java-takes/src/main/java/com/baeldung/takes/TakesIndex.java
similarity index 100%
rename from libraries-3/src/main/java/com/baeldung/takes/TakesIndex.java
rename to web-modules/java-takes/src/main/java/com/baeldung/takes/TakesIndex.java
diff --git a/web-modules/java-takes/src/main/resources/logback.xml b/web-modules/java-takes/src/main/resources/logback.xml
new file mode 100644
index 0000000000..7d900d8ea8
--- /dev/null
+++ b/web-modules/java-takes/src/main/resources/logback.xml
@@ -0,0 +1,13 @@
+
+
+
+
+ %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libraries-3/src/main/webapp/templates/index.vm b/web-modules/java-takes/src/main/webapp/templates/index.vm
similarity index 100%
rename from libraries-3/src/main/webapp/templates/index.vm
rename to web-modules/java-takes/src/main/webapp/templates/index.vm
diff --git a/libraries-3/src/test/java/com/baeldung/takes/TakesAppIntegrationTest.java b/web-modules/java-takes/src/test/java/com/baeldung/takes/TakesAppIntegrationTest.java
similarity index 100%
rename from libraries-3/src/test/java/com/baeldung/takes/TakesAppIntegrationTest.java
rename to web-modules/java-takes/src/test/java/com/baeldung/takes/TakesAppIntegrationTest.java
diff --git a/libraries-3/src/test/java/com/baeldung/takes/TakesContactUnitTest.java b/web-modules/java-takes/src/test/java/com/baeldung/takes/TakesContactUnitTest.java
similarity index 100%
rename from libraries-3/src/test/java/com/baeldung/takes/TakesContactUnitTest.java
rename to web-modules/java-takes/src/test/java/com/baeldung/takes/TakesContactUnitTest.java
diff --git a/web-modules/pom.xml b/web-modules/pom.xml
index 57810f90de..b0792b3653 100644
--- a/web-modules/pom.xml
+++ b/web-modules/pom.xml
@@ -22,6 +22,7 @@
jakarta-ee
+ java-takes
javax-servlets
javax-servlets-2
jee-7
@@ -33,10 +34,12 @@
ratpack
resteasy
restx
+ rome
spark-java
struts-2
vraptor
wicket
+
diff --git a/web-modules/rome/README.md b/web-modules/rome/README.md
new file mode 100644
index 0000000000..e5cbbbb373
--- /dev/null
+++ b/web-modules/rome/README.md
@@ -0,0 +1,8 @@
+## RSS ROME
+
+This module contains articles about Rss with Rome.
+
+### Relevant Articles
+
+- [Quick Guide to RSS with Rome](https://www.baeldung.com/rome-rss)
+
diff --git a/web-modules/rome/pom.xml b/web-modules/rome/pom.xml
new file mode 100644
index 0000000000..cfcdf4721c
--- /dev/null
+++ b/web-modules/rome/pom.xml
@@ -0,0 +1,31 @@
+
+
+ 4.0.0
+ rome
+ 0.1-SNAPSHOT
+ rome
+
+
+ com.baeldung
+ web-modules
+ 1.0.0-SNAPSHOT
+
+
+
+
+
+
+ rome
+ rome
+ ${rome.version}
+
+
+
+
+
+ 1.0
+
+
+
\ No newline at end of file
diff --git a/libraries-4/src/main/java/com/baeldung/rome/RSSRomeExample.java b/web-modules/rome/src/main/java/com/baeldung/rome/RSSRomeExample.java
similarity index 85%
rename from libraries-4/src/main/java/com/baeldung/rome/RSSRomeExample.java
rename to web-modules/rome/src/main/java/com/baeldung/rome/RSSRomeExample.java
index 66a9e0ebce..b5e4569270 100644
--- a/libraries-4/src/main/java/com/baeldung/rome/RSSRomeExample.java
+++ b/web-modules/rome/src/main/java/com/baeldung/rome/RSSRomeExample.java
@@ -1,11 +1,5 @@
package com.baeldung.rome;
-import com.sun.syndication.feed.synd.*;
-import com.sun.syndication.io.FeedException;
-import com.sun.syndication.io.SyndFeedInput;
-import com.sun.syndication.io.SyndFeedOutput;
-import com.sun.syndication.io.XmlReader;
-
import java.io.FileWriter;
import java.io.IOException;
import java.io.Writer;
@@ -14,6 +8,19 @@ import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
+import com.sun.syndication.feed.synd.SyndCategory;
+import com.sun.syndication.feed.synd.SyndCategoryImpl;
+import com.sun.syndication.feed.synd.SyndContent;
+import com.sun.syndication.feed.synd.SyndContentImpl;
+import com.sun.syndication.feed.synd.SyndEntry;
+import com.sun.syndication.feed.synd.SyndEntryImpl;
+import com.sun.syndication.feed.synd.SyndFeed;
+import com.sun.syndication.feed.synd.SyndFeedImpl;
+import com.sun.syndication.io.FeedException;
+import com.sun.syndication.io.SyndFeedInput;
+import com.sun.syndication.io.SyndFeedOutput;
+import com.sun.syndication.io.XmlReader;
+
public class RSSRomeExample {
public static void main(String[] args) throws IOException, FeedException {
diff --git a/web-modules/rome/src/main/resources/logback.xml b/web-modules/rome/src/main/resources/logback.xml
new file mode 100644
index 0000000000..7d900d8ea8
--- /dev/null
+++ b/web-modules/rome/src/main/resources/logback.xml
@@ -0,0 +1,13 @@
+
+
+
+
+ %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n
+
+
+
+
+
+
+
+
\ No newline at end of file