From ae2b60ff8080769fc76bba439345e37c7c7604dd Mon Sep 17 00:00:00 2001 From: caroline Date: Wed, 14 Aug 2019 09:35:46 +0200 Subject: [PATCH 01/59] Example added for BAEL-3083 --- .../findastring/FindAStringInGivenList.java | 79 ++++++++++++++++ .../FindAStringInListUnitTest.java | 93 +++++++++++++++++++ 2 files changed, 172 insertions(+) create mode 100644 core-java-modules/core-java-collections-list-2/src/main/java/com/baeldung/findastring/FindAStringInGivenList.java create mode 100644 core-java-modules/core-java-collections-list-2/src/test/java/com/baeldung/findastring/FindAStringInListUnitTest.java diff --git a/core-java-modules/core-java-collections-list-2/src/main/java/com/baeldung/findastring/FindAStringInGivenList.java b/core-java-modules/core-java-collections-list-2/src/main/java/com/baeldung/findastring/FindAStringInGivenList.java new file mode 100644 index 0000000000..c63a50e084 --- /dev/null +++ b/core-java-modules/core-java-collections-list-2/src/main/java/com/baeldung/findastring/FindAStringInGivenList.java @@ -0,0 +1,79 @@ +package com.baeldung.findastring; + +import com.google.common.base.Predicates; +import com.google.common.collect.Iterables; +import com.google.common.collect.Lists; +import org.apache.commons.collections4.CollectionUtils; +import org.apache.commons.collections4.IterableUtils; +import org.apache.commons.collections4.IteratorUtils; +import org.apache.commons.collections4.PredicateUtils; +import org.apache.commons.lang3.StringUtils; +import java.util.ArrayList; +import java.util.List; +import java.util.regex.Pattern; +import java.util.stream.Collectors; + +public class FindAStringInGivenList { + + + public List findUsingLoopWithRegex(String search, List list) { + + List matches = new ArrayList(); + + String pattern = ".*\\b"+search+"\\b.*"; + Pattern p = Pattern.compile(pattern); + + for(String str: list) { + if (p.matcher(str).matches()) { + matches.add(str); + } + } + + return matches; + } + + + public List findUsingLoop(String search, List list) { + + List matches = new ArrayList(); + + for(String str: list) { + if (search != null && str.contains(search)) { + matches.add(str); + } + } + + return matches; + } + + public List findUsingStream(String search, List list) { + + List matchingElements = + list.stream() + .filter(str -> search != null) + .filter(str -> str.trim().contains(search)) + .collect(Collectors.toList()); + + return matchingElements; + } + + public List findUsingGuava(String search, List list) { + if (search == null) return Lists.newArrayList(); + + Iterable result = Iterables.filter(Iterables.filter(list,Predicates.notNull()), Predicates.containsPattern(search)); + + return Lists.newArrayList(result.iterator()); + } + + public List findUsingApacheCommon(String search, List list) { + CollectionUtils.filter(list, PredicateUtils.notNullPredicate()); + Iterable result = IterableUtils.filteredIterable(list, new org.apache.commons.collections4.Predicate() { + public boolean evaluate(String listElement) { + return search != null && StringUtils.isNotEmpty(listElement) ? listElement.contains(search) : false; + } + }); + + return IteratorUtils.toList(result.iterator()); + } + +} \ No newline at end of file diff --git a/core-java-modules/core-java-collections-list-2/src/test/java/com/baeldung/findastring/FindAStringInListUnitTest.java b/core-java-modules/core-java-collections-list-2/src/test/java/com/baeldung/findastring/FindAStringInListUnitTest.java new file mode 100644 index 0000000000..bc2fbb0000 --- /dev/null +++ b/core-java-modules/core-java-collections-list-2/src/test/java/com/baeldung/findastring/FindAStringInListUnitTest.java @@ -0,0 +1,93 @@ +package com.baeldung.findastring; + +import java.util.ArrayList; +import java.util.List; +import static org.junit.jupiter.api.Assertions.assertEquals; +import org.junit.Test; +public class FindAStringInListUnitTest { + + private static List list = new ArrayList<>(); + + static { + list.add("Jack and Jill"); + list.add("James and Sarah"); + list.add("Sam and Louise"); + list.add("Jack"); + list.add(null); + list.add(""); + } + + private static FindAStringInGivenList findAStringInGivenList = new FindAStringInGivenList(); + + @Test + public void givenAString_whenFoundUsingLoopWithRegex_thenReturnList() { + List matchingElements = findAStringInGivenList.findUsingLoopWithRegex("Jack", list); + assertEquals(2, matchingElements.size()); + assertEquals("Jack and Jill", matchingElements.get(0)); + assertEquals("Jack", matchingElements.get(1)); + } + + @Test + public void givenAString_whenNullFoundUsingLoopWithRegex_thenReturnEmptyList(){ + List matchingElements = findAStringInGivenList.findUsingLoopWithRegex(null, list); + assertEquals(0, matchingElements.size()); + } + + @Test + public void givenAString_whenFoundUsingLoop_thenReturnList() { + List matchingElements = findAStringInGivenList.findUsingLoop("Jack", list); + assertEquals(2, matchingElements.size()); + assertEquals("Jack and Jill", matchingElements.get(0)); + assertEquals("Jack", matchingElements.get(1)); + } + + @Test + public void givenAString_whenNullFoundUsingLoop_thenReturnEmptyList(){ + List matchingElements = findAStringInGivenList.findUsingLoop(null, list); + assertEquals(0, matchingElements.size()); + } + + + @Test + public void givenAString_whenFoundUsingStream_thenReturnList(){ + List matchingElements = findAStringInGivenList.findUsingStream("Jack", list); + assertEquals(2, matchingElements.size()); + assertEquals("Jack and Jill", matchingElements.get(0)); + assertEquals("Jack", matchingElements.get(1)); + } + + @Test + public void givenAString_whenNullFoundUsingStream_thenReturnEmptyList(){ + List matchingElements = findAStringInGivenList.findUsingStream(null, list); + assertEquals(0, matchingElements.size()); + } + + @Test + public void givenAString_whenFoundUsingApacheCommons_thenReturnList(){ + List matchingElements = findAStringInGivenList.findUsingApacheCommon("Jack", list); + assertEquals(2, matchingElements.size()); + assertEquals("Jack and Jill", matchingElements.get(0)); + assertEquals("Jack", matchingElements.get(1)); + } + + @Test + public void givenAString_whenNullFoundUsingApacheCommons_thenReturnEmptyList(){ + List matchingElements = findAStringInGivenList.findUsingApacheCommon(null, list); + assertEquals(0, matchingElements.size()); + } + + @Test + public void givenAString_whenFoundUsingGuava_thenReturnList(){ + List matchingElements = findAStringInGivenList.findUsingGuava("Jack", list); + assertEquals(2, matchingElements.size()); + assertEquals("Jack and Jill", matchingElements.get(0)); + assertEquals("Jack", matchingElements.get(1)); + } + + @Test + public void givenAString_whenNullFoundUsingGuava_thenReturnEmptyList(){ + List matchingElements = findAStringInGivenList.findUsingGuava(null, list); + assertEquals(0, matchingElements.size()); + } + +} From 7a77f060bebbbe9f2e953d1d1f371866bff1246c Mon Sep 17 00:00:00 2001 From: caroline Date: Fri, 30 Aug 2019 16:07:18 +0200 Subject: [PATCH 02/59] Small change for BAEL-3083 --- .../java/com/baeldung/findastring/FindAStringInGivenList.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/core-java-modules/core-java-collections-list-2/src/main/java/com/baeldung/findastring/FindAStringInGivenList.java b/core-java-modules/core-java-collections-list-2/src/main/java/com/baeldung/findastring/FindAStringInGivenList.java index c63a50e084..2b7c9feb11 100644 --- a/core-java-modules/core-java-collections-list-2/src/main/java/com/baeldung/findastring/FindAStringInGivenList.java +++ b/core-java-modules/core-java-collections-list-2/src/main/java/com/baeldung/findastring/FindAStringInGivenList.java @@ -58,7 +58,9 @@ public class FindAStringInGivenList { } public List findUsingGuava(String search, List list) { - if (search == null) return Lists.newArrayList(); + if (search == null) { + return Lists.newArrayList(); + } Iterable result = Iterables.filter(Iterables.filter(list,Predicates.notNull()), Predicates.containsPattern(search)); From e479bea0b88012b4830f4206a6956cd137243ba6 Mon Sep 17 00:00:00 2001 From: caroline Date: Tue, 10 Sep 2019 14:40:07 +0200 Subject: [PATCH 03/59] Minor changes to class names and return type List for BAEL-3083 --- .../com/baeldung/findastring/FindAStringInGivenList.java | 8 ++++---- .../baeldung/findastring/FindAStringInListUnitTest.java | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/core-java-modules/core-java-collections-list-2/src/main/java/com/baeldung/findastring/FindAStringInGivenList.java b/core-java-modules/core-java-collections-list-2/src/main/java/com/baeldung/findastring/FindAStringInGivenList.java index 2b7c9feb11..bfc666b36d 100644 --- a/core-java-modules/core-java-collections-list-2/src/main/java/com/baeldung/findastring/FindAStringInGivenList.java +++ b/core-java-modules/core-java-collections-list-2/src/main/java/com/baeldung/findastring/FindAStringInGivenList.java @@ -16,7 +16,7 @@ import java.util.stream.Collectors; public class FindAStringInGivenList { - public List findUsingLoopWithRegex(String search, List list) { + public List findUsingLoopWithRegex(String search, List list) { List matches = new ArrayList(); @@ -33,7 +33,7 @@ public class FindAStringInGivenList { } - public List findUsingLoop(String search, List list) { + public List findUsingLoop(String search, List list) { List matches = new ArrayList(); @@ -46,7 +46,7 @@ public class FindAStringInGivenList { return matches; } - public List findUsingStream(String search, List list) { + public List findUsingStream(String search, List list) { List matchingElements = list.stream() @@ -67,7 +67,7 @@ public class FindAStringInGivenList { return Lists.newArrayList(result.iterator()); } - public List findUsingApacheCommon(String search, List list) { + public List findUsingCommonsCollection(String search, List list) { CollectionUtils.filter(list, PredicateUtils.notNullPredicate()); Iterable result = IterableUtils.filteredIterable(list, new org.apache.commons.collections4.Predicate() { public boolean evaluate(String listElement) { diff --git a/core-java-modules/core-java-collections-list-2/src/test/java/com/baeldung/findastring/FindAStringInListUnitTest.java b/core-java-modules/core-java-collections-list-2/src/test/java/com/baeldung/findastring/FindAStringInListUnitTest.java index bc2fbb0000..ee293034c9 100644 --- a/core-java-modules/core-java-collections-list-2/src/test/java/com/baeldung/findastring/FindAStringInListUnitTest.java +++ b/core-java-modules/core-java-collections-list-2/src/test/java/com/baeldung/findastring/FindAStringInListUnitTest.java @@ -63,16 +63,16 @@ public class FindAStringInListUnitTest { } @Test - public void givenAString_whenFoundUsingApacheCommons_thenReturnList(){ - List matchingElements = findAStringInGivenList.findUsingApacheCommon("Jack", list); + public void givenAString_whenFoundUsingCommonsCollection_thenReturnList(){ + List matchingElements = findAStringInGivenList.findUsingCommonsCollection("Jack", list); assertEquals(2, matchingElements.size()); assertEquals("Jack and Jill", matchingElements.get(0)); assertEquals("Jack", matchingElements.get(1)); } @Test - public void givenAString_whenNullFoundUsingApacheCommons_thenReturnEmptyList(){ - List matchingElements = findAStringInGivenList.findUsingApacheCommon(null, list); + public void givenAString_whenNullFoundUsingCommonsCollection_thenReturnEmptyList(){ + List matchingElements = findAStringInGivenList.findUsingCommonsCollection(null, list); assertEquals(0, matchingElements.size()); } From 48cc9a440938d81d26012c0244ee4beb8c3cab26 Mon Sep 17 00:00:00 2001 From: caroline Date: Mon, 23 Sep 2019 14:44:51 +0200 Subject: [PATCH 04/59] Removing null checks as suggested by editor for BAEL-3083 --- .../findastring/FindAStringInGivenList.java | 14 ++------- .../FindAStringInListUnitTest.java | 31 ------------------- 2 files changed, 3 insertions(+), 42 deletions(-) diff --git a/core-java-modules/core-java-collections-list-2/src/main/java/com/baeldung/findastring/FindAStringInGivenList.java b/core-java-modules/core-java-collections-list-2/src/main/java/com/baeldung/findastring/FindAStringInGivenList.java index bfc666b36d..7324ad0492 100644 --- a/core-java-modules/core-java-collections-list-2/src/main/java/com/baeldung/findastring/FindAStringInGivenList.java +++ b/core-java-modules/core-java-collections-list-2/src/main/java/com/baeldung/findastring/FindAStringInGivenList.java @@ -3,11 +3,8 @@ package com.baeldung.findastring; import com.google.common.base.Predicates; import com.google.common.collect.Iterables; import com.google.common.collect.Lists; -import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.collections4.IterableUtils; import org.apache.commons.collections4.IteratorUtils; -import org.apache.commons.collections4.PredicateUtils; -import org.apache.commons.lang3.StringUtils; import java.util.ArrayList; import java.util.List; import java.util.regex.Pattern; @@ -38,7 +35,7 @@ public class FindAStringInGivenList { List matches = new ArrayList(); for(String str: list) { - if (search != null && str.contains(search)) { + if (str.contains(search)) { matches.add(str); } } @@ -58,20 +55,15 @@ public class FindAStringInGivenList { } public List findUsingGuava(String search, List list) { - if (search == null) { - return Lists.newArrayList(); - } - - Iterable result = Iterables.filter(Iterables.filter(list,Predicates.notNull()), Predicates.containsPattern(search)); + Iterable result = Iterables.filter(list, Predicates.containsPattern(search)); return Lists.newArrayList(result.iterator()); } public List findUsingCommonsCollection(String search, List list) { - CollectionUtils.filter(list, PredicateUtils.notNullPredicate()); Iterable result = IterableUtils.filteredIterable(list, new org.apache.commons.collections4.Predicate() { public boolean evaluate(String listElement) { - return search != null && StringUtils.isNotEmpty(listElement) ? listElement.contains(search) : false; + return listElement.contains(search); } }); diff --git a/core-java-modules/core-java-collections-list-2/src/test/java/com/baeldung/findastring/FindAStringInListUnitTest.java b/core-java-modules/core-java-collections-list-2/src/test/java/com/baeldung/findastring/FindAStringInListUnitTest.java index ee293034c9..ff5ca21505 100644 --- a/core-java-modules/core-java-collections-list-2/src/test/java/com/baeldung/findastring/FindAStringInListUnitTest.java +++ b/core-java-modules/core-java-collections-list-2/src/test/java/com/baeldung/findastring/FindAStringInListUnitTest.java @@ -13,7 +13,6 @@ public class FindAStringInListUnitTest { list.add("James and Sarah"); list.add("Sam and Louise"); list.add("Jack"); - list.add(null); list.add(""); } @@ -27,12 +26,6 @@ public class FindAStringInListUnitTest { assertEquals("Jack", matchingElements.get(1)); } - @Test - public void givenAString_whenNullFoundUsingLoopWithRegex_thenReturnEmptyList(){ - List matchingElements = findAStringInGivenList.findUsingLoopWithRegex(null, list); - assertEquals(0, matchingElements.size()); - } - @Test public void givenAString_whenFoundUsingLoop_thenReturnList() { List matchingElements = findAStringInGivenList.findUsingLoop("Jack", list); @@ -41,12 +34,6 @@ public class FindAStringInListUnitTest { assertEquals("Jack", matchingElements.get(1)); } - @Test - public void givenAString_whenNullFoundUsingLoop_thenReturnEmptyList(){ - List matchingElements = findAStringInGivenList.findUsingLoop(null, list); - assertEquals(0, matchingElements.size()); - } - @Test public void givenAString_whenFoundUsingStream_thenReturnList(){ @@ -56,12 +43,6 @@ public class FindAStringInListUnitTest { assertEquals("Jack", matchingElements.get(1)); } - @Test - public void givenAString_whenNullFoundUsingStream_thenReturnEmptyList(){ - List matchingElements = findAStringInGivenList.findUsingStream(null, list); - assertEquals(0, matchingElements.size()); - } - @Test public void givenAString_whenFoundUsingCommonsCollection_thenReturnList(){ List matchingElements = findAStringInGivenList.findUsingCommonsCollection("Jack", list); @@ -70,12 +51,6 @@ public class FindAStringInListUnitTest { assertEquals("Jack", matchingElements.get(1)); } - @Test - public void givenAString_whenNullFoundUsingCommonsCollection_thenReturnEmptyList(){ - List matchingElements = findAStringInGivenList.findUsingCommonsCollection(null, list); - assertEquals(0, matchingElements.size()); - } - @Test public void givenAString_whenFoundUsingGuava_thenReturnList(){ List matchingElements = findAStringInGivenList.findUsingGuava("Jack", list); @@ -84,10 +59,4 @@ public class FindAStringInListUnitTest { assertEquals("Jack", matchingElements.get(1)); } - @Test - public void givenAString_whenNullFoundUsingGuava_thenReturnEmptyList(){ - List matchingElements = findAStringInGivenList.findUsingGuava(null, list); - assertEquals(0, matchingElements.size()); - } - } From b27a5ae4cdb6f2d136b6ed833d82313b145134a7 Mon Sep 17 00:00:00 2001 From: caroline Date: Tue, 24 Sep 2019 15:05:06 +0200 Subject: [PATCH 05/59] Removing null checks as suggested by editor for BAEL-3083 --- .../java/com/baeldung/findastring/FindAStringInGivenList.java | 1 - 1 file changed, 1 deletion(-) diff --git a/core-java-modules/core-java-collections-list-2/src/main/java/com/baeldung/findastring/FindAStringInGivenList.java b/core-java-modules/core-java-collections-list-2/src/main/java/com/baeldung/findastring/FindAStringInGivenList.java index 7324ad0492..816b87dc86 100644 --- a/core-java-modules/core-java-collections-list-2/src/main/java/com/baeldung/findastring/FindAStringInGivenList.java +++ b/core-java-modules/core-java-collections-list-2/src/main/java/com/baeldung/findastring/FindAStringInGivenList.java @@ -47,7 +47,6 @@ public class FindAStringInGivenList { List matchingElements = list.stream() - .filter(str -> search != null) .filter(str -> str.trim().contains(search)) .collect(Collectors.toList()); From ed92f5579de3caa6cf391262a95272d466d76f0d Mon Sep 17 00:00:00 2001 From: amit2103 Date: Fri, 27 Sep 2019 01:07:06 +0530 Subject: [PATCH 06/59] [BAEL-17473] - Initial commit --- spring-boot-artifacts/README.md | 7 + .../pom.xml | 4 +- .../baeldung/properties/ConfProperties.java | 0 .../ExternalPropertyConfigurer.java | 0 .../ExternalPropertyFileLoader.java | 0 .../com/baeldung/webjar/TestController.java | 0 .../webjar/WebjarsdemoApplication.java | 0 .../src/main/resources/application.properties | 1 + .../main/resources/external/conf.properties | 0 .../src/main/resources/logback.xml | 0 .../src/main/resources/templates/index.html | 0 ...rnalPropertyFileLoaderIntegrationTest.java | 0 ...WebjarsdemoApplicationIntegrationTest.java | 0 spring-boot-deployment/README.md | 5 + spring-boot-deployment/pom.xml | 203 ++++++++++++++++++ .../SpringBootConfigurationApplication.java | 0 .../controller/GreetingsController.java | 0 .../SpringBootConsoleApplication.java | 0 .../SpringBootTomcatApplication.java | 0 .../springbootsimple/TomcatController.java | 0 .../resources/application-tomcat.properties | 0 .../src/main/resources/application.properties | 1 + .../src/main/resources/logback.xml | 10 +- .../SpringContextIntegrationTest.java | 0 .../SpringContextTest.java | 0 ...gBootTomcatApplicationIntegrationTest.java | 0 spring-boot-environment/README.md | 2 + spring-boot-environment/pom.xml | 148 +++++++++++++ .../PriceCalculationApplication.java | 0 ...ceCalculationEnvironmentPostProcessor.java | 0 .../PriceCalculationAutoConfig.java | 0 .../calculator/GrossPriceCalculator.java | 0 .../calculator/NetPriceCalculator.java | 0 .../calculator/PriceCalculator.java | 0 .../service/PriceCalculationService.java | 0 .../main/resources/META-INF/spring.factories | 0 .../src/main/resources/application.properties | 0 .../src/main/resources/logback.xml | 13 ++ ...ationEnvironmentPostProcessorLiveTest.java | 0 spring-boot-management/pom.xml | 56 ----- spring-boot-ops-2/.gitignore | 29 --- spring-boot-ops-2/README.MD | 4 - spring-boot-ops-2/pom.xml | 40 ---- .../src/main/resources/application.properties | 1 - spring-boot-ops/README.md | 14 -- spring-boot-runtime/README.md | 5 + .../docker/Dockerfile | 0 .../docker/logback.xml | 0 .../docker/run.sh | 0 spring-boot-runtime/pom.xml | 159 ++++++++++++++ .../compare/ComparisonApplication.java | 0 .../baeldung/compare/StartupEventHandler.java | 0 .../com/baeldung/restart/Application.java | 0 .../baeldung/restart/RestartController.java | 0 .../com/baeldung/restart/RestartService.java | 0 .../com/baeldung/shutdown/Application.java | 0 .../com/baeldung/shutdown/ShutdownConfig.java | 0 .../com/baeldung/shutdown/TerminateBean.java | 0 .../shutdown/shutdown/ShutdownController.java | 0 .../logging/LoggingApplication.java | 2 + .../management/logging/LoggingController.java | 0 .../management/logging/SecurityConfig.java | 0 .../spring/boot/management/trace/App.java | 2 + .../trace/CustomTraceRepository.java | 0 .../boot/management/trace/EchoController.java | 0 .../management/trace/TraceRequestFilter.java | 0 .../resources/application-logging.properties | 0 .../src/main/resources/application.properties | 7 + .../src/main/resources/logback.xml | 13 ++ .../restart/RestartApplicationManualTest.java | 0 .../ShutdownApplicationIntegrationTest.java | 0 .../application-integrationtest.properties | 0 .../src/test/resources/application.properties | 0 spring-mvc-simple-2/README.md | 1 + spring-mvc-simple-2/pom.xml | 147 +++++++++++-- .../java/org/baeldung/boot/Application.java | 0 .../org/baeldung/boot/config/WebConfig.java | 0 .../controller/GenericEntityController.java | 0 .../converter/GenericBigDecimalConverter.java | 0 ...tringToAbstractEntityConverterFactory.java | 0 .../converter/StringToEmployeeConverter.java | 0 .../boot/converter/StringToEnumConverter.java | 0 .../StringToLocalDateTimeConverter.java | 0 .../controller/AbstractEntityController.java | 0 .../StringToEmployeeConverterController.java | 0 .../baeldung/boot/domain/AbstractEntity.java | 0 .../java/org/baeldung/boot/domain/Bar.java | 0 .../org/baeldung/boot/domain/Employee.java | 0 .../java/org/baeldung/boot/domain/Foo.java | 0 .../baeldung/boot/domain/GenericEntity.java | 0 .../java/org/baeldung/boot/domain/Modes.java | 0 .../repository/GenericEntityRepository.java | 0 .../HeaderVersionArgumentResolver.java | 0 .../baeldung/boot/web/resolver/Version.java | 0 .../SpringBootApplicationIntegrationTest.java | 2 +- .../SpringBootJPAIntegrationTest.java | 2 +- .../SpringBootMailIntegrationTest.java | 2 +- 97 files changed, 710 insertions(+), 170 deletions(-) create mode 100644 spring-boot-artifacts/README.md rename {spring-boot-ops => spring-boot-artifacts}/pom.xml (98%) rename {spring-boot-ops => spring-boot-artifacts}/src/main/java/com/baeldung/properties/ConfProperties.java (100%) rename {spring-boot-ops => spring-boot-artifacts}/src/main/java/com/baeldung/properties/ExternalPropertyConfigurer.java (100%) rename {spring-boot-ops => spring-boot-artifacts}/src/main/java/com/baeldung/properties/ExternalPropertyFileLoader.java (100%) rename {spring-boot-ops => spring-boot-artifacts}/src/main/java/com/baeldung/webjar/TestController.java (100%) rename {spring-boot-ops => spring-boot-artifacts}/src/main/java/com/baeldung/webjar/WebjarsdemoApplication.java (100%) create mode 100644 spring-boot-artifacts/src/main/resources/application.properties rename {spring-boot-ops => spring-boot-artifacts}/src/main/resources/external/conf.properties (100%) rename {spring-boot-ops => spring-boot-artifacts}/src/main/resources/logback.xml (100%) rename {spring-boot-ops => spring-boot-artifacts}/src/main/resources/templates/index.html (100%) rename {spring-boot-ops => spring-boot-artifacts}/src/test/java/com/baeldung/properties/ExternalPropertyFileLoaderIntegrationTest.java (100%) rename {spring-boot-ops => spring-boot-artifacts}/src/test/java/com/baeldung/webjar/WebjarsdemoApplicationIntegrationTest.java (100%) create mode 100644 spring-boot-deployment/README.md create mode 100644 spring-boot-deployment/pom.xml rename {spring-boot-ops-2 => spring-boot-deployment}/src/main/java/com/baeldung/springbootconfiguration/SpringBootConfigurationApplication.java (100%) rename {spring-boot-ops-2 => spring-boot-deployment}/src/main/java/com/baeldung/springbootconfiguration/controller/GreetingsController.java (100%) rename {spring-boot-ops => spring-boot-deployment}/src/main/java/com/baeldung/springbootnonwebapp/SpringBootConsoleApplication.java (100%) rename {spring-boot-ops => spring-boot-deployment}/src/main/java/com/baeldung/springbootsimple/SpringBootTomcatApplication.java (100%) rename {spring-boot-ops => spring-boot-deployment}/src/main/java/com/baeldung/springbootsimple/TomcatController.java (100%) rename {spring-boot-ops-2 => spring-boot-deployment}/src/main/resources/application-tomcat.properties (100%) create mode 100644 spring-boot-deployment/src/main/resources/application.properties rename {spring-boot-management => spring-boot-deployment}/src/main/resources/logback.xml (58%) rename {spring-boot-ops-2 => spring-boot-deployment}/src/test/java/com/baeldung/springbootconfiguration/SpringContextIntegrationTest.java (100%) rename {spring-boot-ops-2 => spring-boot-deployment}/src/test/java/com/baeldung/springbootconfiguration/SpringContextTest.java (100%) rename {spring-boot-ops => spring-boot-deployment}/src/test/java/com/baeldung/springbootsimple/SpringBootTomcatApplicationIntegrationTest.java (100%) create mode 100644 spring-boot-environment/README.md create mode 100644 spring-boot-environment/pom.xml rename {spring-boot-ops => spring-boot-environment}/src/main/java/com/baeldung/environmentpostprocessor/PriceCalculationApplication.java (100%) rename {spring-boot-ops => spring-boot-environment}/src/main/java/com/baeldung/environmentpostprocessor/PriceCalculationEnvironmentPostProcessor.java (100%) rename {spring-boot-ops => spring-boot-environment}/src/main/java/com/baeldung/environmentpostprocessor/autoconfig/PriceCalculationAutoConfig.java (100%) rename {spring-boot-ops => spring-boot-environment}/src/main/java/com/baeldung/environmentpostprocessor/calculator/GrossPriceCalculator.java (100%) rename {spring-boot-ops => spring-boot-environment}/src/main/java/com/baeldung/environmentpostprocessor/calculator/NetPriceCalculator.java (100%) rename {spring-boot-ops => spring-boot-environment}/src/main/java/com/baeldung/environmentpostprocessor/calculator/PriceCalculator.java (100%) rename {spring-boot-ops => spring-boot-environment}/src/main/java/com/baeldung/environmentpostprocessor/service/PriceCalculationService.java (100%) rename {spring-boot-ops => spring-boot-environment}/src/main/resources/META-INF/spring.factories (100%) rename {spring-boot-ops => spring-boot-environment}/src/main/resources/application.properties (100%) create mode 100644 spring-boot-environment/src/main/resources/logback.xml rename {spring-boot-ops => spring-boot-environment}/src/test/java/com/baeldung/environmentpostprocessor/PriceCalculationEnvironmentPostProcessorLiveTest.java (100%) delete mode 100644 spring-boot-management/pom.xml delete mode 100644 spring-boot-ops-2/.gitignore delete mode 100644 spring-boot-ops-2/README.MD delete mode 100644 spring-boot-ops-2/pom.xml delete mode 100644 spring-boot-ops-2/src/main/resources/application.properties delete mode 100644 spring-boot-ops/README.md create mode 100644 spring-boot-runtime/README.md rename {spring-boot-ops => spring-boot-runtime}/docker/Dockerfile (100%) rename {spring-boot-ops => spring-boot-runtime}/docker/logback.xml (100%) rename {spring-boot-ops => spring-boot-runtime}/docker/run.sh (100%) mode change 100755 => 100644 create mode 100644 spring-boot-runtime/pom.xml rename {spring-boot-ops => spring-boot-runtime}/src/main/java/com/baeldung/compare/ComparisonApplication.java (100%) rename {spring-boot-ops => spring-boot-runtime}/src/main/java/com/baeldung/compare/StartupEventHandler.java (100%) rename {spring-boot-ops => spring-boot-runtime}/src/main/java/com/baeldung/restart/Application.java (100%) rename {spring-boot-ops => spring-boot-runtime}/src/main/java/com/baeldung/restart/RestartController.java (100%) rename {spring-boot-ops => spring-boot-runtime}/src/main/java/com/baeldung/restart/RestartService.java (100%) rename {spring-boot-ops => spring-boot-runtime}/src/main/java/com/baeldung/shutdown/Application.java (100%) rename {spring-boot-ops => spring-boot-runtime}/src/main/java/com/baeldung/shutdown/ShutdownConfig.java (100%) rename {spring-boot-ops => spring-boot-runtime}/src/main/java/com/baeldung/shutdown/TerminateBean.java (100%) rename {spring-boot-ops => spring-boot-runtime}/src/main/java/com/baeldung/shutdown/shutdown/ShutdownController.java (100%) rename {spring-boot-management => spring-boot-runtime}/src/main/java/com/baeldung/spring/boot/management/logging/LoggingApplication.java (82%) rename {spring-boot-management => spring-boot-runtime}/src/main/java/com/baeldung/spring/boot/management/logging/LoggingController.java (100%) rename {spring-boot-management => spring-boot-runtime}/src/main/java/com/baeldung/spring/boot/management/logging/SecurityConfig.java (100%) rename {spring-boot-management => spring-boot-runtime}/src/main/java/com/baeldung/spring/boot/management/trace/App.java (80%) rename {spring-boot-management => spring-boot-runtime}/src/main/java/com/baeldung/spring/boot/management/trace/CustomTraceRepository.java (100%) rename {spring-boot-management => spring-boot-runtime}/src/main/java/com/baeldung/spring/boot/management/trace/EchoController.java (100%) rename {spring-boot-management => spring-boot-runtime}/src/main/java/com/baeldung/spring/boot/management/trace/TraceRequestFilter.java (100%) rename spring-boot-management/src/main/resources/application.properties => spring-boot-runtime/src/main/resources/application-logging.properties (100%) create mode 100644 spring-boot-runtime/src/main/resources/application.properties create mode 100644 spring-boot-runtime/src/main/resources/logback.xml rename {spring-boot-ops => spring-boot-runtime}/src/test/java/com/baeldung/restart/RestartApplicationManualTest.java (100%) rename {spring-boot-ops => spring-boot-runtime}/src/test/java/com/baeldung/shutdown/ShutdownApplicationIntegrationTest.java (100%) rename {spring-boot-ops => spring-boot-runtime}/src/test/resources/application-integrationtest.properties (100%) rename {spring-boot-ops => spring-boot-runtime}/src/test/resources/application.properties (100%) rename {spring-boot-ops => spring-mvc-simple-2}/src/main/java/org/baeldung/boot/Application.java (100%) rename {spring-boot-ops => spring-mvc-simple-2}/src/main/java/org/baeldung/boot/config/WebConfig.java (100%) rename {spring-boot-ops => spring-mvc-simple-2}/src/main/java/org/baeldung/boot/controller/GenericEntityController.java (100%) rename {spring-boot-ops => spring-mvc-simple-2}/src/main/java/org/baeldung/boot/converter/GenericBigDecimalConverter.java (100%) rename {spring-boot-ops => spring-mvc-simple-2}/src/main/java/org/baeldung/boot/converter/StringToAbstractEntityConverterFactory.java (100%) rename {spring-boot-ops => spring-mvc-simple-2}/src/main/java/org/baeldung/boot/converter/StringToEmployeeConverter.java (100%) rename {spring-boot-ops => spring-mvc-simple-2}/src/main/java/org/baeldung/boot/converter/StringToEnumConverter.java (100%) rename {spring-boot-ops => spring-mvc-simple-2}/src/main/java/org/baeldung/boot/converter/StringToLocalDateTimeConverter.java (100%) rename {spring-boot-ops => spring-mvc-simple-2}/src/main/java/org/baeldung/boot/converter/controller/AbstractEntityController.java (100%) rename {spring-boot-ops => spring-mvc-simple-2}/src/main/java/org/baeldung/boot/converter/controller/StringToEmployeeConverterController.java (100%) rename {spring-boot-ops => spring-mvc-simple-2}/src/main/java/org/baeldung/boot/domain/AbstractEntity.java (100%) rename {spring-boot-ops => spring-mvc-simple-2}/src/main/java/org/baeldung/boot/domain/Bar.java (100%) rename {spring-boot-ops => spring-mvc-simple-2}/src/main/java/org/baeldung/boot/domain/Employee.java (100%) rename {spring-boot-ops => spring-mvc-simple-2}/src/main/java/org/baeldung/boot/domain/Foo.java (100%) rename {spring-boot-ops => spring-mvc-simple-2}/src/main/java/org/baeldung/boot/domain/GenericEntity.java (100%) rename {spring-boot-ops => spring-mvc-simple-2}/src/main/java/org/baeldung/boot/domain/Modes.java (100%) rename {spring-boot-ops => spring-mvc-simple-2}/src/main/java/org/baeldung/boot/repository/GenericEntityRepository.java (100%) rename {spring-boot-ops => spring-mvc-simple-2}/src/main/java/org/baeldung/boot/web/resolver/HeaderVersionArgumentResolver.java (100%) rename {spring-boot-ops => spring-mvc-simple-2}/src/main/java/org/baeldung/boot/web/resolver/Version.java (100%) rename {spring-boot-ops/src/test/java/org => spring-mvc-simple-2/src/test/java/com}/baeldung/SpringBootApplicationIntegrationTest.java (99%) rename {spring-boot-ops/src/test/java/org => spring-mvc-simple-2/src/test/java/com}/baeldung/SpringBootJPAIntegrationTest.java (98%) rename {spring-boot-ops/src/test/java/org => spring-mvc-simple-2/src/test/java/com}/baeldung/SpringBootMailIntegrationTest.java (99%) diff --git a/spring-boot-artifacts/README.md b/spring-boot-artifacts/README.md new file mode 100644 index 0000000000..0a3f1b7e60 --- /dev/null +++ b/spring-boot-artifacts/README.md @@ -0,0 +1,7 @@ +### Relevant Articles: + - [Spring Boot Dependency Management with a Custom Parent](https://www.baeldung.com/spring-boot-dependency-management-custom-parent) + - [Create a Fat Jar App with Spring Boot](https://www.baeldung.com/deployable-fat-jar-spring-boot) + - [Intro to Spring Boot Starters](https://www.baeldung.com/spring-boot-starters) + - [Spring Properties File Outside jar](https://www.baeldung.com/spring-properties-file-outside-jar) + - [Introduction to WebJars](https://www.baeldung.com/maven-webjars) + - [A Quick Guide to Maven Wrapper](https://www.baeldung.com/maven-wrapper) \ No newline at end of file diff --git a/spring-boot-ops/pom.xml b/spring-boot-artifacts/pom.xml similarity index 98% rename from spring-boot-ops/pom.xml rename to spring-boot-artifacts/pom.xml index f578a24163..756864895d 100644 --- a/spring-boot-ops/pom.xml +++ b/spring-boot-artifacts/pom.xml @@ -2,8 +2,8 @@ 4.0.0 - spring-boot-ops - spring-boot-ops + spring-boot-artifacts + spring-boot-artifacts war Demo project for Spring Boot diff --git a/spring-boot-ops/src/main/java/com/baeldung/properties/ConfProperties.java b/spring-boot-artifacts/src/main/java/com/baeldung/properties/ConfProperties.java similarity index 100% rename from spring-boot-ops/src/main/java/com/baeldung/properties/ConfProperties.java rename to spring-boot-artifacts/src/main/java/com/baeldung/properties/ConfProperties.java diff --git a/spring-boot-ops/src/main/java/com/baeldung/properties/ExternalPropertyConfigurer.java b/spring-boot-artifacts/src/main/java/com/baeldung/properties/ExternalPropertyConfigurer.java similarity index 100% rename from spring-boot-ops/src/main/java/com/baeldung/properties/ExternalPropertyConfigurer.java rename to spring-boot-artifacts/src/main/java/com/baeldung/properties/ExternalPropertyConfigurer.java diff --git a/spring-boot-ops/src/main/java/com/baeldung/properties/ExternalPropertyFileLoader.java b/spring-boot-artifacts/src/main/java/com/baeldung/properties/ExternalPropertyFileLoader.java similarity index 100% rename from spring-boot-ops/src/main/java/com/baeldung/properties/ExternalPropertyFileLoader.java rename to spring-boot-artifacts/src/main/java/com/baeldung/properties/ExternalPropertyFileLoader.java diff --git a/spring-boot-ops/src/main/java/com/baeldung/webjar/TestController.java b/spring-boot-artifacts/src/main/java/com/baeldung/webjar/TestController.java similarity index 100% rename from spring-boot-ops/src/main/java/com/baeldung/webjar/TestController.java rename to spring-boot-artifacts/src/main/java/com/baeldung/webjar/TestController.java diff --git a/spring-boot-ops/src/main/java/com/baeldung/webjar/WebjarsdemoApplication.java b/spring-boot-artifacts/src/main/java/com/baeldung/webjar/WebjarsdemoApplication.java similarity index 100% rename from spring-boot-ops/src/main/java/com/baeldung/webjar/WebjarsdemoApplication.java rename to spring-boot-artifacts/src/main/java/com/baeldung/webjar/WebjarsdemoApplication.java diff --git a/spring-boot-artifacts/src/main/resources/application.properties b/spring-boot-artifacts/src/main/resources/application.properties new file mode 100644 index 0000000000..709574239b --- /dev/null +++ b/spring-boot-artifacts/src/main/resources/application.properties @@ -0,0 +1 @@ +spring.main.allow-bean-definition-overriding=true \ No newline at end of file diff --git a/spring-boot-ops/src/main/resources/external/conf.properties b/spring-boot-artifacts/src/main/resources/external/conf.properties similarity index 100% rename from spring-boot-ops/src/main/resources/external/conf.properties rename to spring-boot-artifacts/src/main/resources/external/conf.properties diff --git a/spring-boot-ops/src/main/resources/logback.xml b/spring-boot-artifacts/src/main/resources/logback.xml similarity index 100% rename from spring-boot-ops/src/main/resources/logback.xml rename to spring-boot-artifacts/src/main/resources/logback.xml diff --git a/spring-boot-ops/src/main/resources/templates/index.html b/spring-boot-artifacts/src/main/resources/templates/index.html similarity index 100% rename from spring-boot-ops/src/main/resources/templates/index.html rename to spring-boot-artifacts/src/main/resources/templates/index.html diff --git a/spring-boot-ops/src/test/java/com/baeldung/properties/ExternalPropertyFileLoaderIntegrationTest.java b/spring-boot-artifacts/src/test/java/com/baeldung/properties/ExternalPropertyFileLoaderIntegrationTest.java similarity index 100% rename from spring-boot-ops/src/test/java/com/baeldung/properties/ExternalPropertyFileLoaderIntegrationTest.java rename to spring-boot-artifacts/src/test/java/com/baeldung/properties/ExternalPropertyFileLoaderIntegrationTest.java diff --git a/spring-boot-ops/src/test/java/com/baeldung/webjar/WebjarsdemoApplicationIntegrationTest.java b/spring-boot-artifacts/src/test/java/com/baeldung/webjar/WebjarsdemoApplicationIntegrationTest.java similarity index 100% rename from spring-boot-ops/src/test/java/com/baeldung/webjar/WebjarsdemoApplicationIntegrationTest.java rename to spring-boot-artifacts/src/test/java/com/baeldung/webjar/WebjarsdemoApplicationIntegrationTest.java diff --git a/spring-boot-deployment/README.md b/spring-boot-deployment/README.md new file mode 100644 index 0000000000..90c5d05e33 --- /dev/null +++ b/spring-boot-deployment/README.md @@ -0,0 +1,5 @@ +### Relevant Articles: + - [Deploy a Spring Boot WAR into a Tomcat Server](https://www.baeldung.com/spring-boot-war-tomcat-deploy) + - [Spring Boot Console Application](https://www.baeldung.com/spring-boot-console-app) + - [How to Configure Spring Boot Tomcat](https://www.baeldung.com/spring-boot-configure-tomcat) + - [Spring Boot Embedded Tomcat Logs](https://www.baeldung.com/spring-boot-embedded-tomcat-logs) diff --git a/spring-boot-deployment/pom.xml b/spring-boot-deployment/pom.xml new file mode 100644 index 0000000000..6802452ddf --- /dev/null +++ b/spring-boot-deployment/pom.xml @@ -0,0 +1,203 @@ + + + 4.0.0 + spring-boot-deployment + spring-boot-deployment + war + Demo project for Spring Boot + + + parent-boot-2 + com.baeldung + 0.0.1-SNAPSHOT + ../parent-boot-2 + + + + + + org.springframework.boot + spring-boot-starter-web + + + + org.springframework.boot + spring-boot-starter-thymeleaf + provided + + + + org.springframework.boot + spring-boot-starter-test + test + + + + org.springframework.boot + spring-boot-starter-data-jpa + + + + org.springframework.boot + spring-boot-starter-mail + + + + org.springframework.boot + spring-boot-starter-actuator + + + + com.h2database + h2 + runtime + + + + javax.persistence + javax.persistence-api + ${jpa.version} + + + + com.google.guava + guava + ${guava.version} + + + + org.subethamail + subethasmtp + ${subethasmtp.version} + test + + + + org.webjars + bootstrap + ${bootstrap.version} + + + + org.webjars + jquery + ${jquery.version} + + + + org.springframework.cloud + spring-cloud-context + ${springcloud.version} + + + + org.apache.httpcomponents + httpclient + ${httpclient.version} + + + + + + ${project.artifactId} + + + src/main/resources + true + + **/conf.properties + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + repackage + + + com.baeldung.webjar.WebjarsdemoApplication + + + + + + org.apache.maven.plugins + maven-failsafe-plugin + 2.18 + + + + integration-tests + + integration-test + verify + + + + + **/ExternalPropertyFileLoaderIntegrationTest.java + + + + + + + + + + + autoconfiguration + + + + org.apache.maven.plugins + maven-surefire-plugin + + + integration-test + + test + + + + **/*LiveTest.java + **/*IntegrationTest.java + **/*IntTest.java + + + **/AutoconfigurationTest.java + + + + + + + json + + + + + + + + + + + org.baeldung.boot.Application + 3.1.1 + 3.3.7-1 + 2.2 + 18.0 + 3.1.7 + 2.0.2.RELEASE + 4.5.8 + + + diff --git a/spring-boot-ops-2/src/main/java/com/baeldung/springbootconfiguration/SpringBootConfigurationApplication.java b/spring-boot-deployment/src/main/java/com/baeldung/springbootconfiguration/SpringBootConfigurationApplication.java similarity index 100% rename from spring-boot-ops-2/src/main/java/com/baeldung/springbootconfiguration/SpringBootConfigurationApplication.java rename to spring-boot-deployment/src/main/java/com/baeldung/springbootconfiguration/SpringBootConfigurationApplication.java diff --git a/spring-boot-ops-2/src/main/java/com/baeldung/springbootconfiguration/controller/GreetingsController.java b/spring-boot-deployment/src/main/java/com/baeldung/springbootconfiguration/controller/GreetingsController.java similarity index 100% rename from spring-boot-ops-2/src/main/java/com/baeldung/springbootconfiguration/controller/GreetingsController.java rename to spring-boot-deployment/src/main/java/com/baeldung/springbootconfiguration/controller/GreetingsController.java diff --git a/spring-boot-ops/src/main/java/com/baeldung/springbootnonwebapp/SpringBootConsoleApplication.java b/spring-boot-deployment/src/main/java/com/baeldung/springbootnonwebapp/SpringBootConsoleApplication.java similarity index 100% rename from spring-boot-ops/src/main/java/com/baeldung/springbootnonwebapp/SpringBootConsoleApplication.java rename to spring-boot-deployment/src/main/java/com/baeldung/springbootnonwebapp/SpringBootConsoleApplication.java diff --git a/spring-boot-ops/src/main/java/com/baeldung/springbootsimple/SpringBootTomcatApplication.java b/spring-boot-deployment/src/main/java/com/baeldung/springbootsimple/SpringBootTomcatApplication.java similarity index 100% rename from spring-boot-ops/src/main/java/com/baeldung/springbootsimple/SpringBootTomcatApplication.java rename to spring-boot-deployment/src/main/java/com/baeldung/springbootsimple/SpringBootTomcatApplication.java diff --git a/spring-boot-ops/src/main/java/com/baeldung/springbootsimple/TomcatController.java b/spring-boot-deployment/src/main/java/com/baeldung/springbootsimple/TomcatController.java similarity index 100% rename from spring-boot-ops/src/main/java/com/baeldung/springbootsimple/TomcatController.java rename to spring-boot-deployment/src/main/java/com/baeldung/springbootsimple/TomcatController.java diff --git a/spring-boot-ops-2/src/main/resources/application-tomcat.properties b/spring-boot-deployment/src/main/resources/application-tomcat.properties similarity index 100% rename from spring-boot-ops-2/src/main/resources/application-tomcat.properties rename to spring-boot-deployment/src/main/resources/application-tomcat.properties diff --git a/spring-boot-deployment/src/main/resources/application.properties b/spring-boot-deployment/src/main/resources/application.properties new file mode 100644 index 0000000000..709574239b --- /dev/null +++ b/spring-boot-deployment/src/main/resources/application.properties @@ -0,0 +1 @@ +spring.main.allow-bean-definition-overriding=true \ No newline at end of file diff --git a/spring-boot-management/src/main/resources/logback.xml b/spring-boot-deployment/src/main/resources/logback.xml similarity index 58% rename from spring-boot-management/src/main/resources/logback.xml rename to spring-boot-deployment/src/main/resources/logback.xml index 36314cbeeb..7d900d8ea8 100644 --- a/spring-boot-management/src/main/resources/logback.xml +++ b/spring-boot-deployment/src/main/resources/logback.xml @@ -1,13 +1,13 @@ - + + - %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n + %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n + - - - + \ No newline at end of file diff --git a/spring-boot-ops-2/src/test/java/com/baeldung/springbootconfiguration/SpringContextIntegrationTest.java b/spring-boot-deployment/src/test/java/com/baeldung/springbootconfiguration/SpringContextIntegrationTest.java similarity index 100% rename from spring-boot-ops-2/src/test/java/com/baeldung/springbootconfiguration/SpringContextIntegrationTest.java rename to spring-boot-deployment/src/test/java/com/baeldung/springbootconfiguration/SpringContextIntegrationTest.java diff --git a/spring-boot-ops-2/src/test/java/com/baeldung/springbootconfiguration/SpringContextTest.java b/spring-boot-deployment/src/test/java/com/baeldung/springbootconfiguration/SpringContextTest.java similarity index 100% rename from spring-boot-ops-2/src/test/java/com/baeldung/springbootconfiguration/SpringContextTest.java rename to spring-boot-deployment/src/test/java/com/baeldung/springbootconfiguration/SpringContextTest.java diff --git a/spring-boot-ops/src/test/java/com/baeldung/springbootsimple/SpringBootTomcatApplicationIntegrationTest.java b/spring-boot-deployment/src/test/java/com/baeldung/springbootsimple/SpringBootTomcatApplicationIntegrationTest.java similarity index 100% rename from spring-boot-ops/src/test/java/com/baeldung/springbootsimple/SpringBootTomcatApplicationIntegrationTest.java rename to spring-boot-deployment/src/test/java/com/baeldung/springbootsimple/SpringBootTomcatApplicationIntegrationTest.java diff --git a/spring-boot-environment/README.md b/spring-boot-environment/README.md new file mode 100644 index 0000000000..57cf8b2461 --- /dev/null +++ b/spring-boot-environment/README.md @@ -0,0 +1,2 @@ +### Relevant Articles: + - [EnvironmentPostProcessor in Spring Boot](https://www.baeldung.com/spring-boot-environmentpostprocessor) diff --git a/spring-boot-environment/pom.xml b/spring-boot-environment/pom.xml new file mode 100644 index 0000000000..a957dcde1b --- /dev/null +++ b/spring-boot-environment/pom.xml @@ -0,0 +1,148 @@ + + + 4.0.0 + spring-boot-environment + spring-boot-environment + war + Demo project for Spring Boot + + + parent-boot-2 + com.baeldung + 0.0.1-SNAPSHOT + ../parent-boot-2 + + + + + + org.springframework.boot + spring-boot-starter-web + + + + org.springframework.boot + spring-boot-starter-thymeleaf + provided + + + + org.springframework.boot + spring-boot-starter-test + test + + + + org.springframework.boot + spring-boot-starter-data-jpa + + + + org.springframework.boot + spring-boot-starter-mail + + + + org.springframework.boot + spring-boot-starter-actuator + + + + com.h2database + h2 + runtime + + + + javax.persistence + javax.persistence-api + ${jpa.version} + + + + com.google.guava + guava + ${guava.version} + + + + org.subethamail + subethasmtp + ${subethasmtp.version} + test + + + + org.springframework.cloud + spring-cloud-context + ${springcloud.version} + + + + org.apache.httpcomponents + httpclient + ${httpclient.version} + + + + + + ${project.artifactId} + + + src/main/resources + true + + **/conf.properties + + + + + + + + autoconfiguration + + + + org.apache.maven.plugins + maven-surefire-plugin + + + integration-test + + test + + + + **/*LiveTest.java + **/*IntegrationTest.java + **/*IntTest.java + + + **/AutoconfigurationTest.java + + + + + + + json + + + + + + + + + + 2.2 + 18.0 + 3.1.7 + 2.0.2.RELEASE + 4.5.8 + + + diff --git a/spring-boot-ops/src/main/java/com/baeldung/environmentpostprocessor/PriceCalculationApplication.java b/spring-boot-environment/src/main/java/com/baeldung/environmentpostprocessor/PriceCalculationApplication.java similarity index 100% rename from spring-boot-ops/src/main/java/com/baeldung/environmentpostprocessor/PriceCalculationApplication.java rename to spring-boot-environment/src/main/java/com/baeldung/environmentpostprocessor/PriceCalculationApplication.java diff --git a/spring-boot-ops/src/main/java/com/baeldung/environmentpostprocessor/PriceCalculationEnvironmentPostProcessor.java b/spring-boot-environment/src/main/java/com/baeldung/environmentpostprocessor/PriceCalculationEnvironmentPostProcessor.java similarity index 100% rename from spring-boot-ops/src/main/java/com/baeldung/environmentpostprocessor/PriceCalculationEnvironmentPostProcessor.java rename to spring-boot-environment/src/main/java/com/baeldung/environmentpostprocessor/PriceCalculationEnvironmentPostProcessor.java diff --git a/spring-boot-ops/src/main/java/com/baeldung/environmentpostprocessor/autoconfig/PriceCalculationAutoConfig.java b/spring-boot-environment/src/main/java/com/baeldung/environmentpostprocessor/autoconfig/PriceCalculationAutoConfig.java similarity index 100% rename from spring-boot-ops/src/main/java/com/baeldung/environmentpostprocessor/autoconfig/PriceCalculationAutoConfig.java rename to spring-boot-environment/src/main/java/com/baeldung/environmentpostprocessor/autoconfig/PriceCalculationAutoConfig.java diff --git a/spring-boot-ops/src/main/java/com/baeldung/environmentpostprocessor/calculator/GrossPriceCalculator.java b/spring-boot-environment/src/main/java/com/baeldung/environmentpostprocessor/calculator/GrossPriceCalculator.java similarity index 100% rename from spring-boot-ops/src/main/java/com/baeldung/environmentpostprocessor/calculator/GrossPriceCalculator.java rename to spring-boot-environment/src/main/java/com/baeldung/environmentpostprocessor/calculator/GrossPriceCalculator.java diff --git a/spring-boot-ops/src/main/java/com/baeldung/environmentpostprocessor/calculator/NetPriceCalculator.java b/spring-boot-environment/src/main/java/com/baeldung/environmentpostprocessor/calculator/NetPriceCalculator.java similarity index 100% rename from spring-boot-ops/src/main/java/com/baeldung/environmentpostprocessor/calculator/NetPriceCalculator.java rename to spring-boot-environment/src/main/java/com/baeldung/environmentpostprocessor/calculator/NetPriceCalculator.java diff --git a/spring-boot-ops/src/main/java/com/baeldung/environmentpostprocessor/calculator/PriceCalculator.java b/spring-boot-environment/src/main/java/com/baeldung/environmentpostprocessor/calculator/PriceCalculator.java similarity index 100% rename from spring-boot-ops/src/main/java/com/baeldung/environmentpostprocessor/calculator/PriceCalculator.java rename to spring-boot-environment/src/main/java/com/baeldung/environmentpostprocessor/calculator/PriceCalculator.java diff --git a/spring-boot-ops/src/main/java/com/baeldung/environmentpostprocessor/service/PriceCalculationService.java b/spring-boot-environment/src/main/java/com/baeldung/environmentpostprocessor/service/PriceCalculationService.java similarity index 100% rename from spring-boot-ops/src/main/java/com/baeldung/environmentpostprocessor/service/PriceCalculationService.java rename to spring-boot-environment/src/main/java/com/baeldung/environmentpostprocessor/service/PriceCalculationService.java diff --git a/spring-boot-ops/src/main/resources/META-INF/spring.factories b/spring-boot-environment/src/main/resources/META-INF/spring.factories similarity index 100% rename from spring-boot-ops/src/main/resources/META-INF/spring.factories rename to spring-boot-environment/src/main/resources/META-INF/spring.factories diff --git a/spring-boot-ops/src/main/resources/application.properties b/spring-boot-environment/src/main/resources/application.properties similarity index 100% rename from spring-boot-ops/src/main/resources/application.properties rename to spring-boot-environment/src/main/resources/application.properties diff --git a/spring-boot-environment/src/main/resources/logback.xml b/spring-boot-environment/src/main/resources/logback.xml new file mode 100644 index 0000000000..7d900d8ea8 --- /dev/null +++ b/spring-boot-environment/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/spring-boot-ops/src/test/java/com/baeldung/environmentpostprocessor/PriceCalculationEnvironmentPostProcessorLiveTest.java b/spring-boot-environment/src/test/java/com/baeldung/environmentpostprocessor/PriceCalculationEnvironmentPostProcessorLiveTest.java similarity index 100% rename from spring-boot-ops/src/test/java/com/baeldung/environmentpostprocessor/PriceCalculationEnvironmentPostProcessorLiveTest.java rename to spring-boot-environment/src/test/java/com/baeldung/environmentpostprocessor/PriceCalculationEnvironmentPostProcessorLiveTest.java diff --git a/spring-boot-management/pom.xml b/spring-boot-management/pom.xml deleted file mode 100644 index ca483d2f61..0000000000 --- a/spring-boot-management/pom.xml +++ /dev/null @@ -1,56 +0,0 @@ - - - 4.0.0 - - com.baeldung - parent-boot-2 - 0.0.1-SNAPSHOT - ../parent-boot-2 - - com.baeldung - spring-boot-management - 0.0.1-SNAPSHOT - spring-boot-management - - - com.baeldung.spring.boot.management.logging.LoggingApplication - 1.8 - 2.1.6 - - - - - org.springframework.boot - spring-boot-starter-actuator - - - org.springframework.boot - spring-boot-starter-web - - - org.springframework.boot - spring-boot-starter-security - - - de.codecentric - spring-boot-admin-starter-client - ${spring-boot-admin-starter-client.version} - - - - org.springframework.boot - spring-boot-starter-test - test - - - - - - - org.springframework.boot - spring-boot-maven-plugin - - - - diff --git a/spring-boot-ops-2/.gitignore b/spring-boot-ops-2/.gitignore deleted file mode 100644 index 153c9335eb..0000000000 --- a/spring-boot-ops-2/.gitignore +++ /dev/null @@ -1,29 +0,0 @@ -HELP.md -/target/ -!.mvn/wrapper/maven-wrapper.jar - -### STS ### -.apt_generated -.classpath -.factorypath -.project -.settings -.springBeans -.sts4-cache - -### IntelliJ IDEA ### -.idea -*.iws -*.iml -*.ipr - -### NetBeans ### -/nbproject/private/ -/nbbuild/ -/dist/ -/nbdist/ -/.nb-gradle/ -/build/ - -### VS Code ### -.vscode/ diff --git a/spring-boot-ops-2/README.MD b/spring-boot-ops-2/README.MD deleted file mode 100644 index b4218dc395..0000000000 --- a/spring-boot-ops-2/README.MD +++ /dev/null @@ -1,4 +0,0 @@ -### Relevant Articles - -- [How to Configure Spring Boot Tomcat](https://www.baeldung.com/spring-boot-configure-tomcat) -- [Spring Boot Embedded Tomcat Logs](https://www.baeldung.com/spring-boot-embedded-tomcat-logs) diff --git a/spring-boot-ops-2/pom.xml b/spring-boot-ops-2/pom.xml deleted file mode 100644 index 74fcd79169..0000000000 --- a/spring-boot-ops-2/pom.xml +++ /dev/null @@ -1,40 +0,0 @@ - - - 4.0.0 - com.baeldung - spring-boot-ops-2 - 0.0.1-SNAPSHOT - spring-boot-ops-2 - - - parent-boot-2 - com.baeldung - 0.0.1-SNAPSHOT - ../parent-boot-2 - - - - - org.springframework.boot - spring-boot-starter-web - - - - org.springframework.boot - spring-boot-starter-test - test - - - - - - - org.springframework.boot - spring-boot-maven-plugin - - - - - diff --git a/spring-boot-ops-2/src/main/resources/application.properties b/spring-boot-ops-2/src/main/resources/application.properties deleted file mode 100644 index fc3fff1d38..0000000000 --- a/spring-boot-ops-2/src/main/resources/application.properties +++ /dev/null @@ -1 +0,0 @@ -spring.profiles.active=tomcat diff --git a/spring-boot-ops/README.md b/spring-boot-ops/README.md deleted file mode 100644 index 5be5c974d3..0000000000 --- a/spring-boot-ops/README.md +++ /dev/null @@ -1,14 +0,0 @@ -### Relevant Articles: - - [Deploy a Spring Boot WAR into a Tomcat Server](http://www.baeldung.com/spring-boot-war-tomcat-deploy) - - [Spring Boot Dependency Management with a Custom Parent](http://www.baeldung.com/spring-boot-dependency-management-custom-parent) - - [A Custom Data Binder in Spring MVC](http://www.baeldung.com/spring-mvc-custom-data-binder) - - [Create a Fat Jar App with Spring Boot](http://www.baeldung.com/deployable-fat-jar-spring-boot) - - [Introduction to WebJars](http://www.baeldung.com/maven-webjars) - - [Intro to Spring Boot Starters](http://www.baeldung.com/spring-boot-starters) - - [A Quick Guide to Maven Wrapper](http://www.baeldung.com/maven-wrapper) - - [Shutdown a Spring Boot Application](http://www.baeldung.com/spring-boot-shutdown) - - [Spring Boot Console Application](http://www.baeldung.com/spring-boot-console-app) - - [Comparing Embedded Servlet Containers in Spring Boot](http://www.baeldung.com/spring-boot-servlet-containers) - - [Programmatically Restarting a Spring Boot Application](https://www.baeldung.com/java-restart-spring-boot-app) - - [Spring Properties File Outside jar](https://www.baeldung.com/spring-properties-file-outside-jar) - - [EnvironmentPostProcessor in Spring Boot](https://www.baeldung.com/spring-boot-environmentpostprocessor) diff --git a/spring-boot-runtime/README.md b/spring-boot-runtime/README.md new file mode 100644 index 0000000000..fb5e0b14de --- /dev/null +++ b/spring-boot-runtime/README.md @@ -0,0 +1,5 @@ +### Relevant Articles: + - [Shutdown a Spring Boot Application](https://www.baeldung.com/spring-boot-shutdown) + - [Comparing Embedded Servlet Containers in Spring Boot](https://www.baeldung.com/spring-boot-servlet-containers) + - [Programmatically Restarting a Spring Boot Application](https://www.baeldung.com/java-restart-spring-boot-app) + diff --git a/spring-boot-ops/docker/Dockerfile b/spring-boot-runtime/docker/Dockerfile similarity index 100% rename from spring-boot-ops/docker/Dockerfile rename to spring-boot-runtime/docker/Dockerfile diff --git a/spring-boot-ops/docker/logback.xml b/spring-boot-runtime/docker/logback.xml similarity index 100% rename from spring-boot-ops/docker/logback.xml rename to spring-boot-runtime/docker/logback.xml diff --git a/spring-boot-ops/docker/run.sh b/spring-boot-runtime/docker/run.sh old mode 100755 new mode 100644 similarity index 100% rename from spring-boot-ops/docker/run.sh rename to spring-boot-runtime/docker/run.sh diff --git a/spring-boot-runtime/pom.xml b/spring-boot-runtime/pom.xml new file mode 100644 index 0000000000..eab8ca3cc2 --- /dev/null +++ b/spring-boot-runtime/pom.xml @@ -0,0 +1,159 @@ + + + 4.0.0 + spring-boot-runtime + spring-boot-runtime + war + Demo project for Spring Boot + + + parent-boot-2 + com.baeldung + 0.0.1-SNAPSHOT + ../parent-boot-2 + + + + + + org.springframework.boot + spring-boot-starter-web + + + + org.springframework.boot + spring-boot-starter-thymeleaf + provided + + + + org.springframework.boot + spring-boot-starter-test + test + + + + org.springframework.boot + spring-boot-starter-data-jpa + + + + org.springframework.boot + spring-boot-starter-mail + + + + org.springframework.boot + spring-boot-starter-actuator + + + + org.springframework.boot + spring-boot-starter-security + + + de.codecentric + spring-boot-admin-starter-client + ${spring-boot-admin-starter-client.version} + + + + com.h2database + h2 + runtime + + + + javax.persistence + javax.persistence-api + ${jpa.version} + + + + com.google.guava + guava + ${guava.version} + + + + org.subethamail + subethasmtp + ${subethasmtp.version} + test + + + + org.springframework.cloud + spring-cloud-context + ${springcloud.version} + + + + org.apache.httpcomponents + httpclient + ${httpclient.version} + + + + + + ${project.artifactId} + + + src/main/resources + true + + **/conf.properties + + + + + + + + autoconfiguration + + + + org.apache.maven.plugins + maven-surefire-plugin + + + integration-test + + test + + + + **/*LiveTest.java + **/*IntegrationTest.java + **/*IntTest.java + + + **/AutoconfigurationTest.java + + + + + + + json + + + + + + + + + + 2.2 + 18.0 + 3.1.7 + 2.0.2.RELEASE + 4.5.8 + 2.1.6 + + + diff --git a/spring-boot-ops/src/main/java/com/baeldung/compare/ComparisonApplication.java b/spring-boot-runtime/src/main/java/com/baeldung/compare/ComparisonApplication.java similarity index 100% rename from spring-boot-ops/src/main/java/com/baeldung/compare/ComparisonApplication.java rename to spring-boot-runtime/src/main/java/com/baeldung/compare/ComparisonApplication.java diff --git a/spring-boot-ops/src/main/java/com/baeldung/compare/StartupEventHandler.java b/spring-boot-runtime/src/main/java/com/baeldung/compare/StartupEventHandler.java similarity index 100% rename from spring-boot-ops/src/main/java/com/baeldung/compare/StartupEventHandler.java rename to spring-boot-runtime/src/main/java/com/baeldung/compare/StartupEventHandler.java diff --git a/spring-boot-ops/src/main/java/com/baeldung/restart/Application.java b/spring-boot-runtime/src/main/java/com/baeldung/restart/Application.java similarity index 100% rename from spring-boot-ops/src/main/java/com/baeldung/restart/Application.java rename to spring-boot-runtime/src/main/java/com/baeldung/restart/Application.java diff --git a/spring-boot-ops/src/main/java/com/baeldung/restart/RestartController.java b/spring-boot-runtime/src/main/java/com/baeldung/restart/RestartController.java similarity index 100% rename from spring-boot-ops/src/main/java/com/baeldung/restart/RestartController.java rename to spring-boot-runtime/src/main/java/com/baeldung/restart/RestartController.java diff --git a/spring-boot-ops/src/main/java/com/baeldung/restart/RestartService.java b/spring-boot-runtime/src/main/java/com/baeldung/restart/RestartService.java similarity index 100% rename from spring-boot-ops/src/main/java/com/baeldung/restart/RestartService.java rename to spring-boot-runtime/src/main/java/com/baeldung/restart/RestartService.java diff --git a/spring-boot-ops/src/main/java/com/baeldung/shutdown/Application.java b/spring-boot-runtime/src/main/java/com/baeldung/shutdown/Application.java similarity index 100% rename from spring-boot-ops/src/main/java/com/baeldung/shutdown/Application.java rename to spring-boot-runtime/src/main/java/com/baeldung/shutdown/Application.java diff --git a/spring-boot-ops/src/main/java/com/baeldung/shutdown/ShutdownConfig.java b/spring-boot-runtime/src/main/java/com/baeldung/shutdown/ShutdownConfig.java similarity index 100% rename from spring-boot-ops/src/main/java/com/baeldung/shutdown/ShutdownConfig.java rename to spring-boot-runtime/src/main/java/com/baeldung/shutdown/ShutdownConfig.java diff --git a/spring-boot-ops/src/main/java/com/baeldung/shutdown/TerminateBean.java b/spring-boot-runtime/src/main/java/com/baeldung/shutdown/TerminateBean.java similarity index 100% rename from spring-boot-ops/src/main/java/com/baeldung/shutdown/TerminateBean.java rename to spring-boot-runtime/src/main/java/com/baeldung/shutdown/TerminateBean.java diff --git a/spring-boot-ops/src/main/java/com/baeldung/shutdown/shutdown/ShutdownController.java b/spring-boot-runtime/src/main/java/com/baeldung/shutdown/shutdown/ShutdownController.java similarity index 100% rename from spring-boot-ops/src/main/java/com/baeldung/shutdown/shutdown/ShutdownController.java rename to spring-boot-runtime/src/main/java/com/baeldung/shutdown/shutdown/ShutdownController.java diff --git a/spring-boot-management/src/main/java/com/baeldung/spring/boot/management/logging/LoggingApplication.java b/spring-boot-runtime/src/main/java/com/baeldung/spring/boot/management/logging/LoggingApplication.java similarity index 82% rename from spring-boot-management/src/main/java/com/baeldung/spring/boot/management/logging/LoggingApplication.java rename to spring-boot-runtime/src/main/java/com/baeldung/spring/boot/management/logging/LoggingApplication.java index 6371ac4c64..5c1b143c4e 100644 --- a/spring-boot-management/src/main/java/com/baeldung/spring/boot/management/logging/LoggingApplication.java +++ b/spring-boot-runtime/src/main/java/com/baeldung/spring/boot/management/logging/LoggingApplication.java @@ -2,7 +2,9 @@ package com.baeldung.spring.boot.management.logging; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.context.annotation.Profile; +@Profile("logging") @SpringBootApplication public class LoggingApplication { public static void main(String[] args) { diff --git a/spring-boot-management/src/main/java/com/baeldung/spring/boot/management/logging/LoggingController.java b/spring-boot-runtime/src/main/java/com/baeldung/spring/boot/management/logging/LoggingController.java similarity index 100% rename from spring-boot-management/src/main/java/com/baeldung/spring/boot/management/logging/LoggingController.java rename to spring-boot-runtime/src/main/java/com/baeldung/spring/boot/management/logging/LoggingController.java diff --git a/spring-boot-management/src/main/java/com/baeldung/spring/boot/management/logging/SecurityConfig.java b/spring-boot-runtime/src/main/java/com/baeldung/spring/boot/management/logging/SecurityConfig.java similarity index 100% rename from spring-boot-management/src/main/java/com/baeldung/spring/boot/management/logging/SecurityConfig.java rename to spring-boot-runtime/src/main/java/com/baeldung/spring/boot/management/logging/SecurityConfig.java diff --git a/spring-boot-management/src/main/java/com/baeldung/spring/boot/management/trace/App.java b/spring-boot-runtime/src/main/java/com/baeldung/spring/boot/management/trace/App.java similarity index 80% rename from spring-boot-management/src/main/java/com/baeldung/spring/boot/management/trace/App.java rename to spring-boot-runtime/src/main/java/com/baeldung/spring/boot/management/trace/App.java index 150e451c57..ffc30e9b33 100644 --- a/spring-boot-management/src/main/java/com/baeldung/spring/boot/management/trace/App.java +++ b/spring-boot-runtime/src/main/java/com/baeldung/spring/boot/management/trace/App.java @@ -2,7 +2,9 @@ package com.baeldung.spring.boot.management.trace; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.context.annotation.Profile; +@Profile("logging") @SpringBootApplication public class App { diff --git a/spring-boot-management/src/main/java/com/baeldung/spring/boot/management/trace/CustomTraceRepository.java b/spring-boot-runtime/src/main/java/com/baeldung/spring/boot/management/trace/CustomTraceRepository.java similarity index 100% rename from spring-boot-management/src/main/java/com/baeldung/spring/boot/management/trace/CustomTraceRepository.java rename to spring-boot-runtime/src/main/java/com/baeldung/spring/boot/management/trace/CustomTraceRepository.java diff --git a/spring-boot-management/src/main/java/com/baeldung/spring/boot/management/trace/EchoController.java b/spring-boot-runtime/src/main/java/com/baeldung/spring/boot/management/trace/EchoController.java similarity index 100% rename from spring-boot-management/src/main/java/com/baeldung/spring/boot/management/trace/EchoController.java rename to spring-boot-runtime/src/main/java/com/baeldung/spring/boot/management/trace/EchoController.java diff --git a/spring-boot-management/src/main/java/com/baeldung/spring/boot/management/trace/TraceRequestFilter.java b/spring-boot-runtime/src/main/java/com/baeldung/spring/boot/management/trace/TraceRequestFilter.java similarity index 100% rename from spring-boot-management/src/main/java/com/baeldung/spring/boot/management/trace/TraceRequestFilter.java rename to spring-boot-runtime/src/main/java/com/baeldung/spring/boot/management/trace/TraceRequestFilter.java diff --git a/spring-boot-management/src/main/resources/application.properties b/spring-boot-runtime/src/main/resources/application-logging.properties similarity index 100% rename from spring-boot-management/src/main/resources/application.properties rename to spring-boot-runtime/src/main/resources/application-logging.properties diff --git a/spring-boot-runtime/src/main/resources/application.properties b/spring-boot-runtime/src/main/resources/application.properties new file mode 100644 index 0000000000..27b7915cff --- /dev/null +++ b/spring-boot-runtime/src/main/resources/application.properties @@ -0,0 +1,7 @@ +management.endpoints.web.exposure.include=* +management.metrics.enable.root=true +management.metrics.enable.jvm=true +management.endpoint.restart.enabled=true +spring.datasource.jmx-enabled=false +spring.main.allow-bean-definition-overriding=true +management.endpoint.shutdown.enabled=true \ No newline at end of file diff --git a/spring-boot-runtime/src/main/resources/logback.xml b/spring-boot-runtime/src/main/resources/logback.xml new file mode 100644 index 0000000000..7d900d8ea8 --- /dev/null +++ b/spring-boot-runtime/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/spring-boot-ops/src/test/java/com/baeldung/restart/RestartApplicationManualTest.java b/spring-boot-runtime/src/test/java/com/baeldung/restart/RestartApplicationManualTest.java similarity index 100% rename from spring-boot-ops/src/test/java/com/baeldung/restart/RestartApplicationManualTest.java rename to spring-boot-runtime/src/test/java/com/baeldung/restart/RestartApplicationManualTest.java diff --git a/spring-boot-ops/src/test/java/com/baeldung/shutdown/ShutdownApplicationIntegrationTest.java b/spring-boot-runtime/src/test/java/com/baeldung/shutdown/ShutdownApplicationIntegrationTest.java similarity index 100% rename from spring-boot-ops/src/test/java/com/baeldung/shutdown/ShutdownApplicationIntegrationTest.java rename to spring-boot-runtime/src/test/java/com/baeldung/shutdown/ShutdownApplicationIntegrationTest.java diff --git a/spring-boot-ops/src/test/resources/application-integrationtest.properties b/spring-boot-runtime/src/test/resources/application-integrationtest.properties similarity index 100% rename from spring-boot-ops/src/test/resources/application-integrationtest.properties rename to spring-boot-runtime/src/test/resources/application-integrationtest.properties diff --git a/spring-boot-ops/src/test/resources/application.properties b/spring-boot-runtime/src/test/resources/application.properties similarity index 100% rename from spring-boot-ops/src/test/resources/application.properties rename to spring-boot-runtime/src/test/resources/application.properties diff --git a/spring-mvc-simple-2/README.md b/spring-mvc-simple-2/README.md index 6dfe789be4..312c174fff 100644 --- a/spring-mvc-simple-2/README.md +++ b/spring-mvc-simple-2/README.md @@ -1,2 +1,3 @@ ## Relevant articles: - [How to Read HTTP Headers in Spring REST Controllers](https://www.baeldung.com/spring-rest-http-headers) +- [A Custom Data Binder in Spring MVC](https://www.baeldung.com/spring-mvc-custom-data-binder) \ No newline at end of file diff --git a/spring-mvc-simple-2/pom.xml b/spring-mvc-simple-2/pom.xml index 74302cff78..ac1f9a661c 100644 --- a/spring-mvc-simple-2/pom.xml +++ b/spring-mvc-simple-2/pom.xml @@ -1,37 +1,152 @@ - - + + 4.0.0 spring-mvc-simple-2 - war spring-mvc-simple-2 + war + Demo project for Spring Boot - com.baeldung parent-boot-2 + com.baeldung 0.0.1-SNAPSHOT ../parent-boot-2 + org.springframework.boot spring-boot-starter-web + + + org.springframework.boot + spring-boot-starter-thymeleaf + provided + + + + org.springframework.boot + spring-boot-starter-test + test + + + + org.springframework.boot + spring-boot-starter-data-jpa + + + + org.springframework.boot + spring-boot-starter-mail + + + + org.springframework.boot + spring-boot-starter-actuator + + + + com.h2database + h2 + runtime + + + + javax.persistence + javax.persistence-api + ${jpa.version} + + + + com.google.guava + guava + ${guava.version} + + + + org.subethamail + subethasmtp + ${subethasmtp.version} + test + + + + org.springframework.cloud + spring-cloud-context + ${springcloud.version} + + + + org.apache.httpcomponents + httpclient + ${httpclient.version} + + + + ${project.artifactId} + + + src/main/resources + true + + **/conf.properties + + + + + + + + autoconfiguration + + + + org.apache.maven.plugins + maven-surefire-plugin + + + integration-test + + test + + + + **/*LiveTest.java + **/*IntegrationTest.java + **/*IntTest.java + + + **/AutoconfigurationTest.java + + + + + + + json + + + + + + + + - 1.8 - 1.8 + + org.baeldung.boot.Application + 3.1.1 + 3.3.7-1 + 2.2 + 18.0 + 3.1.7 + 2.0.2.RELEASE + 4.5.8 - - - - org.apache.maven.plugins - maven-war-plugin - - - spring-mvc-simple2 - diff --git a/spring-boot-ops/src/main/java/org/baeldung/boot/Application.java b/spring-mvc-simple-2/src/main/java/org/baeldung/boot/Application.java similarity index 100% rename from spring-boot-ops/src/main/java/org/baeldung/boot/Application.java rename to spring-mvc-simple-2/src/main/java/org/baeldung/boot/Application.java diff --git a/spring-boot-ops/src/main/java/org/baeldung/boot/config/WebConfig.java b/spring-mvc-simple-2/src/main/java/org/baeldung/boot/config/WebConfig.java similarity index 100% rename from spring-boot-ops/src/main/java/org/baeldung/boot/config/WebConfig.java rename to spring-mvc-simple-2/src/main/java/org/baeldung/boot/config/WebConfig.java diff --git a/spring-boot-ops/src/main/java/org/baeldung/boot/controller/GenericEntityController.java b/spring-mvc-simple-2/src/main/java/org/baeldung/boot/controller/GenericEntityController.java similarity index 100% rename from spring-boot-ops/src/main/java/org/baeldung/boot/controller/GenericEntityController.java rename to spring-mvc-simple-2/src/main/java/org/baeldung/boot/controller/GenericEntityController.java diff --git a/spring-boot-ops/src/main/java/org/baeldung/boot/converter/GenericBigDecimalConverter.java b/spring-mvc-simple-2/src/main/java/org/baeldung/boot/converter/GenericBigDecimalConverter.java similarity index 100% rename from spring-boot-ops/src/main/java/org/baeldung/boot/converter/GenericBigDecimalConverter.java rename to spring-mvc-simple-2/src/main/java/org/baeldung/boot/converter/GenericBigDecimalConverter.java diff --git a/spring-boot-ops/src/main/java/org/baeldung/boot/converter/StringToAbstractEntityConverterFactory.java b/spring-mvc-simple-2/src/main/java/org/baeldung/boot/converter/StringToAbstractEntityConverterFactory.java similarity index 100% rename from spring-boot-ops/src/main/java/org/baeldung/boot/converter/StringToAbstractEntityConverterFactory.java rename to spring-mvc-simple-2/src/main/java/org/baeldung/boot/converter/StringToAbstractEntityConverterFactory.java diff --git a/spring-boot-ops/src/main/java/org/baeldung/boot/converter/StringToEmployeeConverter.java b/spring-mvc-simple-2/src/main/java/org/baeldung/boot/converter/StringToEmployeeConverter.java similarity index 100% rename from spring-boot-ops/src/main/java/org/baeldung/boot/converter/StringToEmployeeConverter.java rename to spring-mvc-simple-2/src/main/java/org/baeldung/boot/converter/StringToEmployeeConverter.java diff --git a/spring-boot-ops/src/main/java/org/baeldung/boot/converter/StringToEnumConverter.java b/spring-mvc-simple-2/src/main/java/org/baeldung/boot/converter/StringToEnumConverter.java similarity index 100% rename from spring-boot-ops/src/main/java/org/baeldung/boot/converter/StringToEnumConverter.java rename to spring-mvc-simple-2/src/main/java/org/baeldung/boot/converter/StringToEnumConverter.java diff --git a/spring-boot-ops/src/main/java/org/baeldung/boot/converter/StringToLocalDateTimeConverter.java b/spring-mvc-simple-2/src/main/java/org/baeldung/boot/converter/StringToLocalDateTimeConverter.java similarity index 100% rename from spring-boot-ops/src/main/java/org/baeldung/boot/converter/StringToLocalDateTimeConverter.java rename to spring-mvc-simple-2/src/main/java/org/baeldung/boot/converter/StringToLocalDateTimeConverter.java diff --git a/spring-boot-ops/src/main/java/org/baeldung/boot/converter/controller/AbstractEntityController.java b/spring-mvc-simple-2/src/main/java/org/baeldung/boot/converter/controller/AbstractEntityController.java similarity index 100% rename from spring-boot-ops/src/main/java/org/baeldung/boot/converter/controller/AbstractEntityController.java rename to spring-mvc-simple-2/src/main/java/org/baeldung/boot/converter/controller/AbstractEntityController.java diff --git a/spring-boot-ops/src/main/java/org/baeldung/boot/converter/controller/StringToEmployeeConverterController.java b/spring-mvc-simple-2/src/main/java/org/baeldung/boot/converter/controller/StringToEmployeeConverterController.java similarity index 100% rename from spring-boot-ops/src/main/java/org/baeldung/boot/converter/controller/StringToEmployeeConverterController.java rename to spring-mvc-simple-2/src/main/java/org/baeldung/boot/converter/controller/StringToEmployeeConverterController.java diff --git a/spring-boot-ops/src/main/java/org/baeldung/boot/domain/AbstractEntity.java b/spring-mvc-simple-2/src/main/java/org/baeldung/boot/domain/AbstractEntity.java similarity index 100% rename from spring-boot-ops/src/main/java/org/baeldung/boot/domain/AbstractEntity.java rename to spring-mvc-simple-2/src/main/java/org/baeldung/boot/domain/AbstractEntity.java diff --git a/spring-boot-ops/src/main/java/org/baeldung/boot/domain/Bar.java b/spring-mvc-simple-2/src/main/java/org/baeldung/boot/domain/Bar.java similarity index 100% rename from spring-boot-ops/src/main/java/org/baeldung/boot/domain/Bar.java rename to spring-mvc-simple-2/src/main/java/org/baeldung/boot/domain/Bar.java diff --git a/spring-boot-ops/src/main/java/org/baeldung/boot/domain/Employee.java b/spring-mvc-simple-2/src/main/java/org/baeldung/boot/domain/Employee.java similarity index 100% rename from spring-boot-ops/src/main/java/org/baeldung/boot/domain/Employee.java rename to spring-mvc-simple-2/src/main/java/org/baeldung/boot/domain/Employee.java diff --git a/spring-boot-ops/src/main/java/org/baeldung/boot/domain/Foo.java b/spring-mvc-simple-2/src/main/java/org/baeldung/boot/domain/Foo.java similarity index 100% rename from spring-boot-ops/src/main/java/org/baeldung/boot/domain/Foo.java rename to spring-mvc-simple-2/src/main/java/org/baeldung/boot/domain/Foo.java diff --git a/spring-boot-ops/src/main/java/org/baeldung/boot/domain/GenericEntity.java b/spring-mvc-simple-2/src/main/java/org/baeldung/boot/domain/GenericEntity.java similarity index 100% rename from spring-boot-ops/src/main/java/org/baeldung/boot/domain/GenericEntity.java rename to spring-mvc-simple-2/src/main/java/org/baeldung/boot/domain/GenericEntity.java diff --git a/spring-boot-ops/src/main/java/org/baeldung/boot/domain/Modes.java b/spring-mvc-simple-2/src/main/java/org/baeldung/boot/domain/Modes.java similarity index 100% rename from spring-boot-ops/src/main/java/org/baeldung/boot/domain/Modes.java rename to spring-mvc-simple-2/src/main/java/org/baeldung/boot/domain/Modes.java diff --git a/spring-boot-ops/src/main/java/org/baeldung/boot/repository/GenericEntityRepository.java b/spring-mvc-simple-2/src/main/java/org/baeldung/boot/repository/GenericEntityRepository.java similarity index 100% rename from spring-boot-ops/src/main/java/org/baeldung/boot/repository/GenericEntityRepository.java rename to spring-mvc-simple-2/src/main/java/org/baeldung/boot/repository/GenericEntityRepository.java diff --git a/spring-boot-ops/src/main/java/org/baeldung/boot/web/resolver/HeaderVersionArgumentResolver.java b/spring-mvc-simple-2/src/main/java/org/baeldung/boot/web/resolver/HeaderVersionArgumentResolver.java similarity index 100% rename from spring-boot-ops/src/main/java/org/baeldung/boot/web/resolver/HeaderVersionArgumentResolver.java rename to spring-mvc-simple-2/src/main/java/org/baeldung/boot/web/resolver/HeaderVersionArgumentResolver.java diff --git a/spring-boot-ops/src/main/java/org/baeldung/boot/web/resolver/Version.java b/spring-mvc-simple-2/src/main/java/org/baeldung/boot/web/resolver/Version.java similarity index 100% rename from spring-boot-ops/src/main/java/org/baeldung/boot/web/resolver/Version.java rename to spring-mvc-simple-2/src/main/java/org/baeldung/boot/web/resolver/Version.java diff --git a/spring-boot-ops/src/test/java/org/baeldung/SpringBootApplicationIntegrationTest.java b/spring-mvc-simple-2/src/test/java/com/baeldung/SpringBootApplicationIntegrationTest.java similarity index 99% rename from spring-boot-ops/src/test/java/org/baeldung/SpringBootApplicationIntegrationTest.java rename to spring-mvc-simple-2/src/test/java/com/baeldung/SpringBootApplicationIntegrationTest.java index 5627543b62..7190c4f427 100644 --- a/spring-boot-ops/src/test/java/org/baeldung/SpringBootApplicationIntegrationTest.java +++ b/spring-mvc-simple-2/src/test/java/com/baeldung/SpringBootApplicationIntegrationTest.java @@ -1,4 +1,4 @@ -package org.baeldung; +package com.baeldung; import org.baeldung.boot.Application; import org.baeldung.boot.domain.Modes; diff --git a/spring-boot-ops/src/test/java/org/baeldung/SpringBootJPAIntegrationTest.java b/spring-mvc-simple-2/src/test/java/com/baeldung/SpringBootJPAIntegrationTest.java similarity index 98% rename from spring-boot-ops/src/test/java/org/baeldung/SpringBootJPAIntegrationTest.java rename to spring-mvc-simple-2/src/test/java/com/baeldung/SpringBootJPAIntegrationTest.java index c368cf5219..c283529435 100644 --- a/spring-boot-ops/src/test/java/org/baeldung/SpringBootJPAIntegrationTest.java +++ b/spring-mvc-simple-2/src/test/java/com/baeldung/SpringBootJPAIntegrationTest.java @@ -1,4 +1,4 @@ -package org.baeldung; +package com.baeldung; import org.baeldung.boot.Application; import org.baeldung.boot.domain.GenericEntity; diff --git a/spring-boot-ops/src/test/java/org/baeldung/SpringBootMailIntegrationTest.java b/spring-mvc-simple-2/src/test/java/com/baeldung/SpringBootMailIntegrationTest.java similarity index 99% rename from spring-boot-ops/src/test/java/org/baeldung/SpringBootMailIntegrationTest.java rename to spring-mvc-simple-2/src/test/java/com/baeldung/SpringBootMailIntegrationTest.java index a6a84184fa..1a2a4e22d9 100644 --- a/spring-boot-ops/src/test/java/org/baeldung/SpringBootMailIntegrationTest.java +++ b/spring-mvc-simple-2/src/test/java/com/baeldung/SpringBootMailIntegrationTest.java @@ -1,4 +1,4 @@ -package org.baeldung; +package com.baeldung; import org.baeldung.boot.Application; import org.junit.After; From 9cb83205fe4e4c46465a9672362c3e5da5d32faf Mon Sep 17 00:00:00 2001 From: amit2103 Date: Sat, 28 Sep 2019 20:31:00 +0530 Subject: [PATCH 07/59] [BAEL-17473] - Retired spring-boot-ops, spring-boot-ops-2, and spring-boot-management modules --- .../gracefulshutdown/GracefulShutdownApplication.java | 0 .../gracefulshutdown/beans/LongRunningProcessBean.java | 0 .../gracefulshutdown/config/SpringConfiguration.java | 0 spring-boot-management/README.md | 7 ------- spring-boot-runtime/README.md | 2 +- spring-mvc-simple-2/pom.xml | 6 ++++++ .../src/main/resources/application.properties | 1 + 7 files changed, 8 insertions(+), 8 deletions(-) rename {spring-boot-ops-2 => spring-boot-deployment}/src/main/java/com/baeldung/gracefulshutdown/GracefulShutdownApplication.java (100%) rename {spring-boot-ops-2 => spring-boot-deployment}/src/main/java/com/baeldung/gracefulshutdown/beans/LongRunningProcessBean.java (100%) rename {spring-boot-ops-2 => spring-boot-deployment}/src/main/java/com/baeldung/gracefulshutdown/config/SpringConfiguration.java (100%) delete mode 100644 spring-boot-management/README.md create mode 100644 spring-mvc-simple-2/src/main/resources/application.properties diff --git a/spring-boot-ops-2/src/main/java/com/baeldung/gracefulshutdown/GracefulShutdownApplication.java b/spring-boot-deployment/src/main/java/com/baeldung/gracefulshutdown/GracefulShutdownApplication.java similarity index 100% rename from spring-boot-ops-2/src/main/java/com/baeldung/gracefulshutdown/GracefulShutdownApplication.java rename to spring-boot-deployment/src/main/java/com/baeldung/gracefulshutdown/GracefulShutdownApplication.java diff --git a/spring-boot-ops-2/src/main/java/com/baeldung/gracefulshutdown/beans/LongRunningProcessBean.java b/spring-boot-deployment/src/main/java/com/baeldung/gracefulshutdown/beans/LongRunningProcessBean.java similarity index 100% rename from spring-boot-ops-2/src/main/java/com/baeldung/gracefulshutdown/beans/LongRunningProcessBean.java rename to spring-boot-deployment/src/main/java/com/baeldung/gracefulshutdown/beans/LongRunningProcessBean.java diff --git a/spring-boot-ops-2/src/main/java/com/baeldung/gracefulshutdown/config/SpringConfiguration.java b/spring-boot-deployment/src/main/java/com/baeldung/gracefulshutdown/config/SpringConfiguration.java similarity index 100% rename from spring-boot-ops-2/src/main/java/com/baeldung/gracefulshutdown/config/SpringConfiguration.java rename to spring-boot-deployment/src/main/java/com/baeldung/gracefulshutdown/config/SpringConfiguration.java diff --git a/spring-boot-management/README.md b/spring-boot-management/README.md deleted file mode 100644 index 53d4c439ff..0000000000 --- a/spring-boot-management/README.md +++ /dev/null @@ -1,7 +0,0 @@ -## Spring Boot Logging HTTP Requests - -This module contains articles about the management of Spring Boot applications. - -### Relevant Articles: -- [Logging HTTP Requests with Spring Boot Actuator HTTP Tracing](https://www.baeldung.com/spring-boot-actuator-http) - diff --git a/spring-boot-runtime/README.md b/spring-boot-runtime/README.md index fb5e0b14de..002615b934 100644 --- a/spring-boot-runtime/README.md +++ b/spring-boot-runtime/README.md @@ -2,4 +2,4 @@ - [Shutdown a Spring Boot Application](https://www.baeldung.com/spring-boot-shutdown) - [Comparing Embedded Servlet Containers in Spring Boot](https://www.baeldung.com/spring-boot-servlet-containers) - [Programmatically Restarting a Spring Boot Application](https://www.baeldung.com/java-restart-spring-boot-app) - + - [Logging HTTP Requests with Spring Boot Actuator HTTP Tracing](https://www.baeldung.com/spring-boot-actuator-http) \ No newline at end of file diff --git a/spring-mvc-simple-2/pom.xml b/spring-mvc-simple-2/pom.xml index 4b2eafe97f..3ae577cb03 100644 --- a/spring-mvc-simple-2/pom.xml +++ b/spring-mvc-simple-2/pom.xml @@ -20,6 +20,12 @@ org.springframework.boot spring-boot-starter-web + + + org.springframework.boot + spring-boot-starter-test + test + org.springframework.boot diff --git a/spring-mvc-simple-2/src/main/resources/application.properties b/spring-mvc-simple-2/src/main/resources/application.properties new file mode 100644 index 0000000000..709574239b --- /dev/null +++ b/spring-mvc-simple-2/src/main/resources/application.properties @@ -0,0 +1 @@ +spring.main.allow-bean-definition-overriding=true \ No newline at end of file From 7a70863a29d48b810436f9dfb77028b710195619 Mon Sep 17 00:00:00 2001 From: amit2103 Date: Sun, 29 Sep 2019 00:59:40 +0530 Subject: [PATCH 08/59] [BAEL-17473] - Retired spring-boot-disable-console-logging --- pom.xml | 22 ++++++++++++------- spring-boot-disable-console-logging/README.md | 6 ----- spring-boot-disable-console-logging/pom.xml | 21 ------------------ spring-boot-runtime/README.md | 3 ++- .../disabling-console-jul/.gitignore | 0 .../disabling-console-jul/pom.xml | 0 .../properties/DisablingConsoleJulApp.java | 0 .../DisabledConsoleRestController.java | 0 .../src/main/resources/application.properties | 0 .../src/main/resources/logging.properties | 0 .../disabling-console-log4j2/.gitignore | 0 .../disabling-console-log4j2/pom.xml | 0 .../log4j2/xml/DisablingConsoleLog4j2App.java | 0 .../DisabledConsoleRestController.java | 0 .../src/main/resources/log4j2.xml | 0 .../disabling-console-logback/.gitignore | 0 .../disabling-console-logback/pom.xml | 0 .../xml/DisablingConsoleLogbackApp.java | 0 .../DisabledConsoleRestController.java | 0 .../src/main/resources/application.properties | 0 .../src/main/resources/logback-spring.xml | 0 21 files changed, 16 insertions(+), 36 deletions(-) delete mode 100644 spring-boot-disable-console-logging/README.md delete mode 100644 spring-boot-disable-console-logging/pom.xml rename {spring-boot-disable-console-logging => spring-boot-runtime}/disabling-console-jul/.gitignore (100%) rename {spring-boot-disable-console-logging => spring-boot-runtime}/disabling-console-jul/pom.xml (100%) rename {spring-boot-disable-console-logging => spring-boot-runtime}/disabling-console-jul/src/main/java/com/baeldung/springbootlogging/disablingconsole/jul/properties/DisablingConsoleJulApp.java (100%) rename {spring-boot-disable-console-logging => spring-boot-runtime}/disabling-console-jul/src/main/java/com/baeldung/springbootlogging/disablingconsole/jul/properties/controllers/DisabledConsoleRestController.java (100%) rename {spring-boot-disable-console-logging => spring-boot-runtime}/disabling-console-jul/src/main/resources/application.properties (100%) rename {spring-boot-disable-console-logging => spring-boot-runtime}/disabling-console-jul/src/main/resources/logging.properties (100%) rename {spring-boot-disable-console-logging => spring-boot-runtime}/disabling-console-log4j2/.gitignore (100%) rename {spring-boot-disable-console-logging => spring-boot-runtime}/disabling-console-log4j2/pom.xml (100%) rename {spring-boot-disable-console-logging => spring-boot-runtime}/disabling-console-log4j2/src/main/java/com/baeldung/springbootlogging/disablingconsole/log4j2/xml/DisablingConsoleLog4j2App.java (100%) rename {spring-boot-disable-console-logging => spring-boot-runtime}/disabling-console-log4j2/src/main/java/com/baeldung/springbootlogging/disablingconsole/log4j2/xml/controllers/DisabledConsoleRestController.java (100%) rename {spring-boot-disable-console-logging => spring-boot-runtime}/disabling-console-log4j2/src/main/resources/log4j2.xml (100%) rename {spring-boot-disable-console-logging => spring-boot-runtime}/disabling-console-logback/.gitignore (100%) rename {spring-boot-disable-console-logging => spring-boot-runtime}/disabling-console-logback/pom.xml (100%) rename {spring-boot-disable-console-logging => spring-boot-runtime}/disabling-console-logback/src/main/java/com/baeldung/springbootlogging/disablingconsole/logback/xml/DisablingConsoleLogbackApp.java (100%) rename {spring-boot-disable-console-logging => spring-boot-runtime}/disabling-console-logback/src/main/java/com/baeldung/springbootlogging/disablingconsole/logback/xml/controllers/DisabledConsoleRestController.java (100%) rename {spring-boot-disable-console-logging => spring-boot-runtime}/disabling-console-logback/src/main/resources/application.properties (100%) rename {spring-boot-disable-console-logging => spring-boot-runtime}/disabling-console-logback/src/main/resources/logback-spring.xml (100%) diff --git a/pom.xml b/pom.xml index 4f40f8261f..b5607da6bd 100644 --- a/pom.xml +++ b/pom.xml @@ -684,17 +684,20 @@ spring-boot-crud spring-boot-ctx-fluent spring-boot-custom-starter - spring-boot-disable-console-logging spring-boot-jasypt spring-boot-keycloak spring-boot-kotlin spring-boot-logging-log4j2 - spring-boot-management spring-boot-mvc spring-boot-mvc-birt - spring-boot-ops - spring-boot-ops-2 + spring-boot-environment + spring-boot-deployment + spring-boot-runtime + spring-boot-runtime/disabling-console-jul + spring-boot-runtime/disabling-console-log4j2 + spring-boot-runtime/disabling-console-logback + spring-boot-artifacts spring-boot-rest spring-boot-data spring-boot-parent @@ -1404,16 +1407,19 @@ spring-boot-crud spring-boot-ctx-fluent spring-boot-custom-starter - spring-boot-disable-console-logging spring-boot-jasypt spring-boot-keycloak spring-boot-logging-log4j2 - spring-boot-management spring-boot-mvc spring-boot-mvc-birt - spring-boot-ops - spring-boot-ops-2 + spring-boot-environment + spring-boot-deployment + spring-boot-runtime + spring-boot-runtime/disabling-console-jul + spring-boot-runtime/disabling-console-log4j2 + spring-boot-runtime/disabling-console-logback + spring-boot-artifacts spring-boot-rest spring-boot-data spring-boot-parent diff --git a/spring-boot-disable-console-logging/README.md b/spring-boot-disable-console-logging/README.md deleted file mode 100644 index 7f1c06042f..0000000000 --- a/spring-boot-disable-console-logging/README.md +++ /dev/null @@ -1,6 +0,0 @@ -## Spring Boot Disable Console Logging - -This module contains articles about disabling Spring Boot console logging. - -### Relevant Articles: -- [How to Disable Console Logging in Spring Boot](https://www.baeldung.com/spring-boot-disable-console-logging) diff --git a/spring-boot-disable-console-logging/pom.xml b/spring-boot-disable-console-logging/pom.xml deleted file mode 100644 index 63ed129347..0000000000 --- a/spring-boot-disable-console-logging/pom.xml +++ /dev/null @@ -1,21 +0,0 @@ - - 4.0.0 - spring-boot-disable-console-logging - spring-boot-disable-console-logging - pom - Projects for Disabling Spring Boot Console Logging tutorials - - - parent-boot-2 - com.baeldung - 0.0.1-SNAPSHOT - ../parent-boot-2 - - - - disabling-console-logback - disabling-console-log4j2 - disabling-console-jul - - \ No newline at end of file diff --git a/spring-boot-runtime/README.md b/spring-boot-runtime/README.md index 002615b934..f9ca12c605 100644 --- a/spring-boot-runtime/README.md +++ b/spring-boot-runtime/README.md @@ -2,4 +2,5 @@ - [Shutdown a Spring Boot Application](https://www.baeldung.com/spring-boot-shutdown) - [Comparing Embedded Servlet Containers in Spring Boot](https://www.baeldung.com/spring-boot-servlet-containers) - [Programmatically Restarting a Spring Boot Application](https://www.baeldung.com/java-restart-spring-boot-app) - - [Logging HTTP Requests with Spring Boot Actuator HTTP Tracing](https://www.baeldung.com/spring-boot-actuator-http) \ No newline at end of file + - [Logging HTTP Requests with Spring Boot Actuator HTTP Tracing](https://www.baeldung.com/spring-boot-actuator-http) + - [How to Disable Console Logging in Spring Boot](https://www.baeldung.com/spring-boot-disable-console-logging) \ No newline at end of file diff --git a/spring-boot-disable-console-logging/disabling-console-jul/.gitignore b/spring-boot-runtime/disabling-console-jul/.gitignore similarity index 100% rename from spring-boot-disable-console-logging/disabling-console-jul/.gitignore rename to spring-boot-runtime/disabling-console-jul/.gitignore diff --git a/spring-boot-disable-console-logging/disabling-console-jul/pom.xml b/spring-boot-runtime/disabling-console-jul/pom.xml similarity index 100% rename from spring-boot-disable-console-logging/disabling-console-jul/pom.xml rename to spring-boot-runtime/disabling-console-jul/pom.xml diff --git a/spring-boot-disable-console-logging/disabling-console-jul/src/main/java/com/baeldung/springbootlogging/disablingconsole/jul/properties/DisablingConsoleJulApp.java b/spring-boot-runtime/disabling-console-jul/src/main/java/com/baeldung/springbootlogging/disablingconsole/jul/properties/DisablingConsoleJulApp.java similarity index 100% rename from spring-boot-disable-console-logging/disabling-console-jul/src/main/java/com/baeldung/springbootlogging/disablingconsole/jul/properties/DisablingConsoleJulApp.java rename to spring-boot-runtime/disabling-console-jul/src/main/java/com/baeldung/springbootlogging/disablingconsole/jul/properties/DisablingConsoleJulApp.java diff --git a/spring-boot-disable-console-logging/disabling-console-jul/src/main/java/com/baeldung/springbootlogging/disablingconsole/jul/properties/controllers/DisabledConsoleRestController.java b/spring-boot-runtime/disabling-console-jul/src/main/java/com/baeldung/springbootlogging/disablingconsole/jul/properties/controllers/DisabledConsoleRestController.java similarity index 100% rename from spring-boot-disable-console-logging/disabling-console-jul/src/main/java/com/baeldung/springbootlogging/disablingconsole/jul/properties/controllers/DisabledConsoleRestController.java rename to spring-boot-runtime/disabling-console-jul/src/main/java/com/baeldung/springbootlogging/disablingconsole/jul/properties/controllers/DisabledConsoleRestController.java diff --git a/spring-boot-disable-console-logging/disabling-console-jul/src/main/resources/application.properties b/spring-boot-runtime/disabling-console-jul/src/main/resources/application.properties similarity index 100% rename from spring-boot-disable-console-logging/disabling-console-jul/src/main/resources/application.properties rename to spring-boot-runtime/disabling-console-jul/src/main/resources/application.properties diff --git a/spring-boot-disable-console-logging/disabling-console-jul/src/main/resources/logging.properties b/spring-boot-runtime/disabling-console-jul/src/main/resources/logging.properties similarity index 100% rename from spring-boot-disable-console-logging/disabling-console-jul/src/main/resources/logging.properties rename to spring-boot-runtime/disabling-console-jul/src/main/resources/logging.properties diff --git a/spring-boot-disable-console-logging/disabling-console-log4j2/.gitignore b/spring-boot-runtime/disabling-console-log4j2/.gitignore similarity index 100% rename from spring-boot-disable-console-logging/disabling-console-log4j2/.gitignore rename to spring-boot-runtime/disabling-console-log4j2/.gitignore diff --git a/spring-boot-disable-console-logging/disabling-console-log4j2/pom.xml b/spring-boot-runtime/disabling-console-log4j2/pom.xml similarity index 100% rename from spring-boot-disable-console-logging/disabling-console-log4j2/pom.xml rename to spring-boot-runtime/disabling-console-log4j2/pom.xml diff --git a/spring-boot-disable-console-logging/disabling-console-log4j2/src/main/java/com/baeldung/springbootlogging/disablingconsole/log4j2/xml/DisablingConsoleLog4j2App.java b/spring-boot-runtime/disabling-console-log4j2/src/main/java/com/baeldung/springbootlogging/disablingconsole/log4j2/xml/DisablingConsoleLog4j2App.java similarity index 100% rename from spring-boot-disable-console-logging/disabling-console-log4j2/src/main/java/com/baeldung/springbootlogging/disablingconsole/log4j2/xml/DisablingConsoleLog4j2App.java rename to spring-boot-runtime/disabling-console-log4j2/src/main/java/com/baeldung/springbootlogging/disablingconsole/log4j2/xml/DisablingConsoleLog4j2App.java diff --git a/spring-boot-disable-console-logging/disabling-console-log4j2/src/main/java/com/baeldung/springbootlogging/disablingconsole/log4j2/xml/controllers/DisabledConsoleRestController.java b/spring-boot-runtime/disabling-console-log4j2/src/main/java/com/baeldung/springbootlogging/disablingconsole/log4j2/xml/controllers/DisabledConsoleRestController.java similarity index 100% rename from spring-boot-disable-console-logging/disabling-console-log4j2/src/main/java/com/baeldung/springbootlogging/disablingconsole/log4j2/xml/controllers/DisabledConsoleRestController.java rename to spring-boot-runtime/disabling-console-log4j2/src/main/java/com/baeldung/springbootlogging/disablingconsole/log4j2/xml/controllers/DisabledConsoleRestController.java diff --git a/spring-boot-disable-console-logging/disabling-console-log4j2/src/main/resources/log4j2.xml b/spring-boot-runtime/disabling-console-log4j2/src/main/resources/log4j2.xml similarity index 100% rename from spring-boot-disable-console-logging/disabling-console-log4j2/src/main/resources/log4j2.xml rename to spring-boot-runtime/disabling-console-log4j2/src/main/resources/log4j2.xml diff --git a/spring-boot-disable-console-logging/disabling-console-logback/.gitignore b/spring-boot-runtime/disabling-console-logback/.gitignore similarity index 100% rename from spring-boot-disable-console-logging/disabling-console-logback/.gitignore rename to spring-boot-runtime/disabling-console-logback/.gitignore diff --git a/spring-boot-disable-console-logging/disabling-console-logback/pom.xml b/spring-boot-runtime/disabling-console-logback/pom.xml similarity index 100% rename from spring-boot-disable-console-logging/disabling-console-logback/pom.xml rename to spring-boot-runtime/disabling-console-logback/pom.xml diff --git a/spring-boot-disable-console-logging/disabling-console-logback/src/main/java/com/baeldung/springbootlogging/disablingconsole/logback/xml/DisablingConsoleLogbackApp.java b/spring-boot-runtime/disabling-console-logback/src/main/java/com/baeldung/springbootlogging/disablingconsole/logback/xml/DisablingConsoleLogbackApp.java similarity index 100% rename from spring-boot-disable-console-logging/disabling-console-logback/src/main/java/com/baeldung/springbootlogging/disablingconsole/logback/xml/DisablingConsoleLogbackApp.java rename to spring-boot-runtime/disabling-console-logback/src/main/java/com/baeldung/springbootlogging/disablingconsole/logback/xml/DisablingConsoleLogbackApp.java diff --git a/spring-boot-disable-console-logging/disabling-console-logback/src/main/java/com/baeldung/springbootlogging/disablingconsole/logback/xml/controllers/DisabledConsoleRestController.java b/spring-boot-runtime/disabling-console-logback/src/main/java/com/baeldung/springbootlogging/disablingconsole/logback/xml/controllers/DisabledConsoleRestController.java similarity index 100% rename from spring-boot-disable-console-logging/disabling-console-logback/src/main/java/com/baeldung/springbootlogging/disablingconsole/logback/xml/controllers/DisabledConsoleRestController.java rename to spring-boot-runtime/disabling-console-logback/src/main/java/com/baeldung/springbootlogging/disablingconsole/logback/xml/controllers/DisabledConsoleRestController.java diff --git a/spring-boot-disable-console-logging/disabling-console-logback/src/main/resources/application.properties b/spring-boot-runtime/disabling-console-logback/src/main/resources/application.properties similarity index 100% rename from spring-boot-disable-console-logging/disabling-console-logback/src/main/resources/application.properties rename to spring-boot-runtime/disabling-console-logback/src/main/resources/application.properties diff --git a/spring-boot-disable-console-logging/disabling-console-logback/src/main/resources/logback-spring.xml b/spring-boot-runtime/disabling-console-logback/src/main/resources/logback-spring.xml similarity index 100% rename from spring-boot-disable-console-logging/disabling-console-logback/src/main/resources/logback-spring.xml rename to spring-boot-runtime/disabling-console-logback/src/main/resources/logback-spring.xml From e456cead7d943ef38df058c4b348091e021d09b3 Mon Sep 17 00:00:00 2001 From: fejera Date: Sun, 29 Sep 2019 10:46:50 +0200 Subject: [PATCH 09/59] changed link from http to https in core-java-concurrency-advanced --- .../core-java-concurrency-advanced/README.md | 33 ++++++++++--------- 1 file changed, 17 insertions(+), 16 deletions(-) diff --git a/core-java-modules/core-java-concurrency-advanced/README.md b/core-java-modules/core-java-concurrency-advanced/README.md index 8e99858693..6222af8a82 100644 --- a/core-java-modules/core-java-concurrency-advanced/README.md +++ b/core-java-modules/core-java-concurrency-advanced/README.md @@ -3,23 +3,24 @@ ## Core Java Concurrency Advanced Examples ### Relevant Articles: -- [Introduction to Thread Pools in Java](http://www.baeldung.com/thread-pool-java-and-guava) -- [Guide to CountDownLatch in Java](http://www.baeldung.com/java-countdown-latch) -- [Guide to java.util.concurrent.Locks](http://www.baeldung.com/java-concurrent-locks) -- [An Introduction to ThreadLocal in Java](http://www.baeldung.com/java-threadlocal) -- [LongAdder and LongAccumulator in Java](http://www.baeldung.com/java-longadder-and-longaccumulator) -- [The Dining Philosophers Problem in Java](http://www.baeldung.com/java-dining-philoshophers) -- [Guide to the Java Phaser](http://www.baeldung.com/java-phaser) -- [An Introduction to Atomic Variables in Java](http://www.baeldung.com/java-atomic-variables) -- [CyclicBarrier in Java](http://www.baeldung.com/java-cyclic-barrier) -- [Guide to the Volatile Keyword in Java](http://www.baeldung.com/java-volatile) -- [Semaphores in Java](http://www.baeldung.com/java-semaphore) -- [Daemon Threads in Java](http://www.baeldung.com/java-daemon-thread) -- [Priority-based Job Scheduling in Java](http://www.baeldung.com/java-priority-job-schedule) +- [Introduction to Thread Pools in Java](https://www.baeldung.com/thread-pool-java-and-guava) +- [Guide to CountDownLatch in Java](https://www.baeldung.com/java-countdown-latch) +- [Guide to java.util.concurrent.Locks](https://www.baeldung.com/java-concurrent-locks) +- [An Introduction to ThreadLocal in Java](https://www.baeldung.com/java-threadlocal) +- [LongAdder and LongAccumulator in Java](https://www.baeldung.com/java-longadder-and-longaccumulator) +- [The Dining Philosophers Problem in Java](https://www.baeldung.com/java-dining-philoshophers) +- [Guide to the Java Phaser](https://www.baeldung.com/java-phaser) +- [An Introduction to Atomic Variables in Java](https://www.baeldung.com/java-atomic-variables) +- [CyclicBarrier in Java](https://www.baeldung.com/java-cyclic-barrier) +- [Guide to the Volatile Keyword in Java](https://www.baeldung.com/java-volatile) + +- [Semaphores in Java](https://www.baeldung.com/java-semaphore) +- [Daemon Threads in Java](https://www.baeldung.com/java-daemon-thread) +- [Priority-based Job Scheduling in Java](https://www.baeldung.com/java-priority-job-schedule) - [Brief Introduction to Java Thread.yield()](https://www.baeldung.com/java-thread-yield) - [Print Even and Odd Numbers Using 2 Threads](https://www.baeldung.com/java-even-odd-numbers-with-2-threads) - [Java CyclicBarrier vs CountDownLatch](https://www.baeldung.com/java-cyclicbarrier-countdownlatch) -- [Guide to the Fork/Join Framework in Java](http://www.baeldung.com/java-fork-join) -- [Guide to ThreadLocalRandom in Java](http://www.baeldung.com/java-thread-local-random) -- [The Thread.join() Method in Java](http://www.baeldung.com/java-thread-join) +- [Guide to the Fork/Join Framework in Java](https://www.baeldung.com/java-fork-join) +- [Guide to ThreadLocalRandom in Java](https://www.baeldung.com/java-thread-local-random) +- [The Thread.join() Method in Java](https://www.baeldung.com/java-thread-join) - [Passing Parameters to Java Threads](https://www.baeldung.com/java-thread-parameters) From 5be06e3d96197c61127a8b6857c558ef1c67f216 Mon Sep 17 00:00:00 2001 From: fejera Date: Sun, 29 Sep 2019 10:50:35 +0200 Subject: [PATCH 10/59] added module core-java-concurrency-advanced-2 --- .../.gitignore | 26 +++++++++++++++ .../README.md | 26 +++++++++++++++ .../core-java-concurrency-advanced-2/pom.xml | 33 +++++++++++++++++++ pom.xml | 2 ++ 4 files changed, 87 insertions(+) create mode 100644 core-java-modules/core-java-concurrency-advanced-2/.gitignore create mode 100644 core-java-modules/core-java-concurrency-advanced-2/README.md create mode 100644 core-java-modules/core-java-concurrency-advanced-2/pom.xml diff --git a/core-java-modules/core-java-concurrency-advanced-2/.gitignore b/core-java-modules/core-java-concurrency-advanced-2/.gitignore new file mode 100644 index 0000000000..3de4cc647e --- /dev/null +++ b/core-java-modules/core-java-concurrency-advanced-2/.gitignore @@ -0,0 +1,26 @@ +*.class + +0.* + +#folders# +/target +/neoDb* +/data +/src/main/webapp/WEB-INF/classes +*/META-INF/* +.resourceCache + +# Packaged files # +*.jar +*.war +*.ear + +# Files generated by integration tests +*.txt +backup-pom.xml +/bin/ +/temp + +#IntelliJ specific +.idea/ +*.iml \ No newline at end of file diff --git a/core-java-modules/core-java-concurrency-advanced-2/README.md b/core-java-modules/core-java-concurrency-advanced-2/README.md new file mode 100644 index 0000000000..6222af8a82 --- /dev/null +++ b/core-java-modules/core-java-concurrency-advanced-2/README.md @@ -0,0 +1,26 @@ +========= + +## Core Java Concurrency Advanced Examples + +### Relevant Articles: +- [Introduction to Thread Pools in Java](https://www.baeldung.com/thread-pool-java-and-guava) +- [Guide to CountDownLatch in Java](https://www.baeldung.com/java-countdown-latch) +- [Guide to java.util.concurrent.Locks](https://www.baeldung.com/java-concurrent-locks) +- [An Introduction to ThreadLocal in Java](https://www.baeldung.com/java-threadlocal) +- [LongAdder and LongAccumulator in Java](https://www.baeldung.com/java-longadder-and-longaccumulator) +- [The Dining Philosophers Problem in Java](https://www.baeldung.com/java-dining-philoshophers) +- [Guide to the Java Phaser](https://www.baeldung.com/java-phaser) +- [An Introduction to Atomic Variables in Java](https://www.baeldung.com/java-atomic-variables) +- [CyclicBarrier in Java](https://www.baeldung.com/java-cyclic-barrier) +- [Guide to the Volatile Keyword in Java](https://www.baeldung.com/java-volatile) + +- [Semaphores in Java](https://www.baeldung.com/java-semaphore) +- [Daemon Threads in Java](https://www.baeldung.com/java-daemon-thread) +- [Priority-based Job Scheduling in Java](https://www.baeldung.com/java-priority-job-schedule) +- [Brief Introduction to Java Thread.yield()](https://www.baeldung.com/java-thread-yield) +- [Print Even and Odd Numbers Using 2 Threads](https://www.baeldung.com/java-even-odd-numbers-with-2-threads) +- [Java CyclicBarrier vs CountDownLatch](https://www.baeldung.com/java-cyclicbarrier-countdownlatch) +- [Guide to the Fork/Join Framework in Java](https://www.baeldung.com/java-fork-join) +- [Guide to ThreadLocalRandom in Java](https://www.baeldung.com/java-thread-local-random) +- [The Thread.join() Method in Java](https://www.baeldung.com/java-thread-join) +- [Passing Parameters to Java Threads](https://www.baeldung.com/java-thread-parameters) diff --git a/core-java-modules/core-java-concurrency-advanced-2/pom.xml b/core-java-modules/core-java-concurrency-advanced-2/pom.xml new file mode 100644 index 0000000000..785c81edd2 --- /dev/null +++ b/core-java-modules/core-java-concurrency-advanced-2/pom.xml @@ -0,0 +1,33 @@ + + 4.0.0 + com.baeldung + core-java-concurrency-advanced-2 + 0.1.0-SNAPSHOT + core-java-concurrency-advanced-2 + jar + + + com.baeldung + parent-java + 0.0.1-SNAPSHOT + ../../parent-java + + + + + + + core-java-concurrency-advanced-2 + + + src/main/resources + true + + + + + + + + diff --git a/pom.xml b/pom.xml index 4f40f8261f..3218e06754 100644 --- a/pom.xml +++ b/pom.xml @@ -1034,6 +1034,7 @@ parent-kotlin core-java-modules/core-java-concurrency-advanced + core-java-modules/core-java-concurrency-advanced-2 core-kotlin core-kotlin-2 core-kotlin-io @@ -1584,6 +1585,7 @@ core-java-modules/core-java core-java-modules/core-java-concurrency-advanced + core-java-modules/core-java-concurrency-advanced-2 core-kotlin core-kotlin-2 From 22838726967f800ad9816178e989fa73d7353dd5 Mon Sep 17 00:00:00 2001 From: fejera Date: Sun, 29 Sep 2019 10:51:31 +0200 Subject: [PATCH 11/59] added module core-java-concurrency-advanced-3 --- .../.gitignore | 26 +++++++++++++++ .../README.md | 26 +++++++++++++++ .../core-java-concurrency-advanced-3/pom.xml | 33 +++++++++++++++++++ pom.xml | 2 ++ 4 files changed, 87 insertions(+) create mode 100644 core-java-modules/core-java-concurrency-advanced-3/.gitignore create mode 100644 core-java-modules/core-java-concurrency-advanced-3/README.md create mode 100644 core-java-modules/core-java-concurrency-advanced-3/pom.xml diff --git a/core-java-modules/core-java-concurrency-advanced-3/.gitignore b/core-java-modules/core-java-concurrency-advanced-3/.gitignore new file mode 100644 index 0000000000..3de4cc647e --- /dev/null +++ b/core-java-modules/core-java-concurrency-advanced-3/.gitignore @@ -0,0 +1,26 @@ +*.class + +0.* + +#folders# +/target +/neoDb* +/data +/src/main/webapp/WEB-INF/classes +*/META-INF/* +.resourceCache + +# Packaged files # +*.jar +*.war +*.ear + +# Files generated by integration tests +*.txt +backup-pom.xml +/bin/ +/temp + +#IntelliJ specific +.idea/ +*.iml \ No newline at end of file diff --git a/core-java-modules/core-java-concurrency-advanced-3/README.md b/core-java-modules/core-java-concurrency-advanced-3/README.md new file mode 100644 index 0000000000..6222af8a82 --- /dev/null +++ b/core-java-modules/core-java-concurrency-advanced-3/README.md @@ -0,0 +1,26 @@ +========= + +## Core Java Concurrency Advanced Examples + +### Relevant Articles: +- [Introduction to Thread Pools in Java](https://www.baeldung.com/thread-pool-java-and-guava) +- [Guide to CountDownLatch in Java](https://www.baeldung.com/java-countdown-latch) +- [Guide to java.util.concurrent.Locks](https://www.baeldung.com/java-concurrent-locks) +- [An Introduction to ThreadLocal in Java](https://www.baeldung.com/java-threadlocal) +- [LongAdder and LongAccumulator in Java](https://www.baeldung.com/java-longadder-and-longaccumulator) +- [The Dining Philosophers Problem in Java](https://www.baeldung.com/java-dining-philoshophers) +- [Guide to the Java Phaser](https://www.baeldung.com/java-phaser) +- [An Introduction to Atomic Variables in Java](https://www.baeldung.com/java-atomic-variables) +- [CyclicBarrier in Java](https://www.baeldung.com/java-cyclic-barrier) +- [Guide to the Volatile Keyword in Java](https://www.baeldung.com/java-volatile) + +- [Semaphores in Java](https://www.baeldung.com/java-semaphore) +- [Daemon Threads in Java](https://www.baeldung.com/java-daemon-thread) +- [Priority-based Job Scheduling in Java](https://www.baeldung.com/java-priority-job-schedule) +- [Brief Introduction to Java Thread.yield()](https://www.baeldung.com/java-thread-yield) +- [Print Even and Odd Numbers Using 2 Threads](https://www.baeldung.com/java-even-odd-numbers-with-2-threads) +- [Java CyclicBarrier vs CountDownLatch](https://www.baeldung.com/java-cyclicbarrier-countdownlatch) +- [Guide to the Fork/Join Framework in Java](https://www.baeldung.com/java-fork-join) +- [Guide to ThreadLocalRandom in Java](https://www.baeldung.com/java-thread-local-random) +- [The Thread.join() Method in Java](https://www.baeldung.com/java-thread-join) +- [Passing Parameters to Java Threads](https://www.baeldung.com/java-thread-parameters) diff --git a/core-java-modules/core-java-concurrency-advanced-3/pom.xml b/core-java-modules/core-java-concurrency-advanced-3/pom.xml new file mode 100644 index 0000000000..cc7b7b1e70 --- /dev/null +++ b/core-java-modules/core-java-concurrency-advanced-3/pom.xml @@ -0,0 +1,33 @@ + + 4.0.0 + com.baeldung + core-java-concurrency-advanced-3 + 0.1.0-SNAPSHOT + core-java-concurrency-advanced-3 + jar + + + com.baeldung + parent-java + 0.0.1-SNAPSHOT + ../../parent-java + + + + + + + core-java-concurrency-advanced-3 + + + src/main/resources + true + + + + + + + + diff --git a/pom.xml b/pom.xml index 3218e06754..cdc42906d3 100644 --- a/pom.xml +++ b/pom.xml @@ -1035,6 +1035,7 @@ core-java-modules/core-java-concurrency-advanced core-java-modules/core-java-concurrency-advanced-2 + core-java-modules/core-java-concurrency-advanced-3 core-kotlin core-kotlin-2 core-kotlin-io @@ -1586,6 +1587,7 @@ core-java-modules/core-java core-java-modules/core-java-concurrency-advanced core-java-modules/core-java-concurrency-advanced-2 + core-java-modules/core-java-concurrency-advanced-3 core-kotlin core-kotlin-2 From ab8bab1948f9521880a82ccea0142b971e62ee89 Mon Sep 17 00:00:00 2001 From: fejera Date: Sun, 29 Sep 2019 11:01:59 +0200 Subject: [PATCH 12/59] fixed code for failing tests --- .../cyclicbarrier/CyclicBarrierCompletionMethodExample.java | 6 ++++++ .../concurrent/cyclicbarrier/CyclicBarrierResetExample.java | 6 ++++++ 2 files changed, 12 insertions(+) diff --git a/core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/cyclicbarrier/CyclicBarrierCompletionMethodExample.java b/core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/cyclicbarrier/CyclicBarrierCompletionMethodExample.java index 7c1299da62..00cf314706 100644 --- a/core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/cyclicbarrier/CyclicBarrierCompletionMethodExample.java +++ b/core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/cyclicbarrier/CyclicBarrierCompletionMethodExample.java @@ -4,6 +4,7 @@ import java.util.concurrent.BrokenBarrierException; import java.util.concurrent.CyclicBarrier; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; +import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicInteger; public class CyclicBarrierCompletionMethodExample { @@ -35,6 +36,11 @@ public class CyclicBarrierCompletionMethodExample { }); } es.shutdown(); + try { + es.awaitTermination(1, TimeUnit.SECONDS); + } catch (InterruptedException e) { + e.printStackTrace(); + } return updateCount.get(); } diff --git a/core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/cyclicbarrier/CyclicBarrierResetExample.java b/core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/cyclicbarrier/CyclicBarrierResetExample.java index 76b6198bc4..cf497687cc 100644 --- a/core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/cyclicbarrier/CyclicBarrierResetExample.java +++ b/core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/cyclicbarrier/CyclicBarrierResetExample.java @@ -4,6 +4,7 @@ import java.util.concurrent.BrokenBarrierException; import java.util.concurrent.CyclicBarrier; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; +import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicInteger; public class CyclicBarrierResetExample { @@ -36,6 +37,11 @@ public class CyclicBarrierResetExample { }); } es.shutdown(); + try { + es.awaitTermination(1, TimeUnit.SECONDS); + } catch (InterruptedException e) { + e.printStackTrace(); + } return updateCount.get(); } From 432395628b66b996252f86619522a8323037b177 Mon Sep 17 00:00:00 2001 From: fejera Date: Sun, 29 Sep 2019 11:09:26 +0200 Subject: [PATCH 13/59] moved semaphore examples from core-java-concurrency-advanced to core-java-concurrency-advanced-2 --- .../README.md | 20 ------------------- .../core-java-concurrency-advanced-2/pom.xml | 13 ++++++++++++ .../semaphores/CounterUsingMutex.java | 0 .../DelayQueueUsingTimedSemaphore.java | 0 .../semaphores/LoginQueueUsingSemaphore.java | 0 .../semaphores/SemaphoresManualTest.java | 0 .../core-java-concurrency-advanced/README.md | 1 - 7 files changed, 13 insertions(+), 21 deletions(-) rename core-java-modules/{core-java-concurrency-advanced => core-java-concurrency-advanced-2}/src/main/java/com/baeldung/concurrent/semaphores/CounterUsingMutex.java (100%) rename core-java-modules/{core-java-concurrency-advanced => core-java-concurrency-advanced-2}/src/main/java/com/baeldung/concurrent/semaphores/DelayQueueUsingTimedSemaphore.java (100%) rename core-java-modules/{core-java-concurrency-advanced => core-java-concurrency-advanced-2}/src/main/java/com/baeldung/concurrent/semaphores/LoginQueueUsingSemaphore.java (100%) rename core-java-modules/{core-java-concurrency-advanced => core-java-concurrency-advanced-2}/src/test/java/com/baeldung/concurrent/semaphores/SemaphoresManualTest.java (100%) diff --git a/core-java-modules/core-java-concurrency-advanced-2/README.md b/core-java-modules/core-java-concurrency-advanced-2/README.md index 6222af8a82..ca108f956e 100644 --- a/core-java-modules/core-java-concurrency-advanced-2/README.md +++ b/core-java-modules/core-java-concurrency-advanced-2/README.md @@ -3,24 +3,4 @@ ## Core Java Concurrency Advanced Examples ### Relevant Articles: -- [Introduction to Thread Pools in Java](https://www.baeldung.com/thread-pool-java-and-guava) -- [Guide to CountDownLatch in Java](https://www.baeldung.com/java-countdown-latch) -- [Guide to java.util.concurrent.Locks](https://www.baeldung.com/java-concurrent-locks) -- [An Introduction to ThreadLocal in Java](https://www.baeldung.com/java-threadlocal) -- [LongAdder and LongAccumulator in Java](https://www.baeldung.com/java-longadder-and-longaccumulator) -- [The Dining Philosophers Problem in Java](https://www.baeldung.com/java-dining-philoshophers) -- [Guide to the Java Phaser](https://www.baeldung.com/java-phaser) -- [An Introduction to Atomic Variables in Java](https://www.baeldung.com/java-atomic-variables) -- [CyclicBarrier in Java](https://www.baeldung.com/java-cyclic-barrier) -- [Guide to the Volatile Keyword in Java](https://www.baeldung.com/java-volatile) - - [Semaphores in Java](https://www.baeldung.com/java-semaphore) -- [Daemon Threads in Java](https://www.baeldung.com/java-daemon-thread) -- [Priority-based Job Scheduling in Java](https://www.baeldung.com/java-priority-job-schedule) -- [Brief Introduction to Java Thread.yield()](https://www.baeldung.com/java-thread-yield) -- [Print Even and Odd Numbers Using 2 Threads](https://www.baeldung.com/java-even-odd-numbers-with-2-threads) -- [Java CyclicBarrier vs CountDownLatch](https://www.baeldung.com/java-cyclicbarrier-countdownlatch) -- [Guide to the Fork/Join Framework in Java](https://www.baeldung.com/java-fork-join) -- [Guide to ThreadLocalRandom in Java](https://www.baeldung.com/java-thread-local-random) -- [The Thread.join() Method in Java](https://www.baeldung.com/java-thread-join) -- [Passing Parameters to Java Threads](https://www.baeldung.com/java-thread-parameters) diff --git a/core-java-modules/core-java-concurrency-advanced-2/pom.xml b/core-java-modules/core-java-concurrency-advanced-2/pom.xml index 785c81edd2..2ce337bea1 100644 --- a/core-java-modules/core-java-concurrency-advanced-2/pom.xml +++ b/core-java-modules/core-java-concurrency-advanced-2/pom.xml @@ -15,6 +15,18 @@ + + org.apache.commons + commons-lang3 + ${commons-lang3.version} + + + + org.assertj + assertj-core + ${assertj.version} + test + @@ -28,6 +40,7 @@ + 3.6.1 diff --git a/core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/semaphores/CounterUsingMutex.java b/core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/concurrent/semaphores/CounterUsingMutex.java similarity index 100% rename from core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/semaphores/CounterUsingMutex.java rename to core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/concurrent/semaphores/CounterUsingMutex.java diff --git a/core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/semaphores/DelayQueueUsingTimedSemaphore.java b/core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/concurrent/semaphores/DelayQueueUsingTimedSemaphore.java similarity index 100% rename from core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/semaphores/DelayQueueUsingTimedSemaphore.java rename to core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/concurrent/semaphores/DelayQueueUsingTimedSemaphore.java diff --git a/core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/semaphores/LoginQueueUsingSemaphore.java b/core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/concurrent/semaphores/LoginQueueUsingSemaphore.java similarity index 100% rename from core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/semaphores/LoginQueueUsingSemaphore.java rename to core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/concurrent/semaphores/LoginQueueUsingSemaphore.java diff --git a/core-java-modules/core-java-concurrency-advanced/src/test/java/com/baeldung/concurrent/semaphores/SemaphoresManualTest.java b/core-java-modules/core-java-concurrency-advanced-2/src/test/java/com/baeldung/concurrent/semaphores/SemaphoresManualTest.java similarity index 100% rename from core-java-modules/core-java-concurrency-advanced/src/test/java/com/baeldung/concurrent/semaphores/SemaphoresManualTest.java rename to core-java-modules/core-java-concurrency-advanced-2/src/test/java/com/baeldung/concurrent/semaphores/SemaphoresManualTest.java diff --git a/core-java-modules/core-java-concurrency-advanced/README.md b/core-java-modules/core-java-concurrency-advanced/README.md index 6222af8a82..a2e14376e3 100644 --- a/core-java-modules/core-java-concurrency-advanced/README.md +++ b/core-java-modules/core-java-concurrency-advanced/README.md @@ -14,7 +14,6 @@ - [CyclicBarrier in Java](https://www.baeldung.com/java-cyclic-barrier) - [Guide to the Volatile Keyword in Java](https://www.baeldung.com/java-volatile) -- [Semaphores in Java](https://www.baeldung.com/java-semaphore) - [Daemon Threads in Java](https://www.baeldung.com/java-daemon-thread) - [Priority-based Job Scheduling in Java](https://www.baeldung.com/java-priority-job-schedule) - [Brief Introduction to Java Thread.yield()](https://www.baeldung.com/java-thread-yield) From c98254dbe013f852e08a7f79f8f2c2d4775fdcd4 Mon Sep 17 00:00:00 2001 From: fejera Date: Sun, 29 Sep 2019 11:14:11 +0200 Subject: [PATCH 14/59] moved daemon thread examples from core-java-concurrency-advanced to core-java-concurrency-advanced-2 --- .../README.md | 1 + .../baeldung/concurrent/daemon/NewThread.java | 23 +++++++++++++++++++ .../daemon/DaemonThreadUnitTest.java | 0 .../core-java-concurrency-advanced/README.md | 1 - 4 files changed, 24 insertions(+), 1 deletion(-) create mode 100644 core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/concurrent/daemon/NewThread.java rename core-java-modules/{core-java-concurrency-advanced => core-java-concurrency-advanced-2}/src/test/java/com/baeldung/concurrent/daemon/DaemonThreadUnitTest.java (100%) diff --git a/core-java-modules/core-java-concurrency-advanced-2/README.md b/core-java-modules/core-java-concurrency-advanced-2/README.md index ca108f956e..7dc0660f58 100644 --- a/core-java-modules/core-java-concurrency-advanced-2/README.md +++ b/core-java-modules/core-java-concurrency-advanced-2/README.md @@ -4,3 +4,4 @@ ### Relevant Articles: - [Semaphores in Java](https://www.baeldung.com/java-semaphore) +- [Daemon Threads in Java](https://www.baeldung.com/java-daemon-thread) diff --git a/core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/concurrent/daemon/NewThread.java b/core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/concurrent/daemon/NewThread.java new file mode 100644 index 0000000000..370ce99c09 --- /dev/null +++ b/core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/concurrent/daemon/NewThread.java @@ -0,0 +1,23 @@ +package com.baeldung.concurrent.daemon; + +public class NewThread extends Thread { + public void run() { + long startTime = System.currentTimeMillis(); + while (true) { + for (int i = 0; i < 10; i++) { + System.out.println(this.getName() + ": New Thread is running..." + i); + try { + //Wait for one sec so it doesn't print too fast + Thread.sleep(1000); + } catch (InterruptedException e) { + e.printStackTrace(); + } + } + // prevent the Thread to run forever. It will finish it's execution after 2 seconds + if (System.currentTimeMillis() - startTime > 2000) { + Thread.currentThread().interrupt(); + break; + } + } + } +} diff --git a/core-java-modules/core-java-concurrency-advanced/src/test/java/com/baeldung/concurrent/daemon/DaemonThreadUnitTest.java b/core-java-modules/core-java-concurrency-advanced-2/src/test/java/com/baeldung/concurrent/daemon/DaemonThreadUnitTest.java similarity index 100% rename from core-java-modules/core-java-concurrency-advanced/src/test/java/com/baeldung/concurrent/daemon/DaemonThreadUnitTest.java rename to core-java-modules/core-java-concurrency-advanced-2/src/test/java/com/baeldung/concurrent/daemon/DaemonThreadUnitTest.java diff --git a/core-java-modules/core-java-concurrency-advanced/README.md b/core-java-modules/core-java-concurrency-advanced/README.md index a2e14376e3..f19b4c8375 100644 --- a/core-java-modules/core-java-concurrency-advanced/README.md +++ b/core-java-modules/core-java-concurrency-advanced/README.md @@ -14,7 +14,6 @@ - [CyclicBarrier in Java](https://www.baeldung.com/java-cyclic-barrier) - [Guide to the Volatile Keyword in Java](https://www.baeldung.com/java-volatile) -- [Daemon Threads in Java](https://www.baeldung.com/java-daemon-thread) - [Priority-based Job Scheduling in Java](https://www.baeldung.com/java-priority-job-schedule) - [Brief Introduction to Java Thread.yield()](https://www.baeldung.com/java-thread-yield) - [Print Even and Odd Numbers Using 2 Threads](https://www.baeldung.com/java-even-odd-numbers-with-2-threads) From 0bfbfffac16c05ebf9a37ffee3dead86c85465a9 Mon Sep 17 00:00:00 2001 From: fejera Date: Sun, 29 Sep 2019 11:18:13 +0200 Subject: [PATCH 15/59] moved priority scheduling examples from core-java-concurrency-advanced to core-java-concurrency-advanced-2 --- core-java-modules/core-java-concurrency-advanced-2/README.md | 1 + .../java/com/baeldung/concurrent/prioritytaskexecution/Job.java | 0 .../baeldung/concurrent/prioritytaskexecution/JobPriority.java | 0 .../concurrent/prioritytaskexecution/PriorityJobScheduler.java | 0 .../prioritytaskexecution/PriorityJobSchedulerUnitTest.java | 0 core-java-modules/core-java-concurrency-advanced/README.md | 1 - 6 files changed, 1 insertion(+), 1 deletion(-) rename core-java-modules/{core-java-concurrency-advanced => core-java-concurrency-advanced-2}/src/main/java/com/baeldung/concurrent/prioritytaskexecution/Job.java (100%) rename core-java-modules/{core-java-concurrency-advanced => core-java-concurrency-advanced-2}/src/main/java/com/baeldung/concurrent/prioritytaskexecution/JobPriority.java (100%) rename core-java-modules/{core-java-concurrency-advanced => core-java-concurrency-advanced-2}/src/main/java/com/baeldung/concurrent/prioritytaskexecution/PriorityJobScheduler.java (100%) rename core-java-modules/{core-java-concurrency-advanced => core-java-concurrency-advanced-2}/src/test/java/com/baeldung/concurrent/prioritytaskexecution/PriorityJobSchedulerUnitTest.java (100%) diff --git a/core-java-modules/core-java-concurrency-advanced-2/README.md b/core-java-modules/core-java-concurrency-advanced-2/README.md index 7dc0660f58..9db768036a 100644 --- a/core-java-modules/core-java-concurrency-advanced-2/README.md +++ b/core-java-modules/core-java-concurrency-advanced-2/README.md @@ -5,3 +5,4 @@ ### Relevant Articles: - [Semaphores in Java](https://www.baeldung.com/java-semaphore) - [Daemon Threads in Java](https://www.baeldung.com/java-daemon-thread) +- [Priority-based Job Scheduling in Java](https://www.baeldung.com/java-priority-job-schedule) diff --git a/core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/prioritytaskexecution/Job.java b/core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/concurrent/prioritytaskexecution/Job.java similarity index 100% rename from core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/prioritytaskexecution/Job.java rename to core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/concurrent/prioritytaskexecution/Job.java diff --git a/core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/prioritytaskexecution/JobPriority.java b/core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/concurrent/prioritytaskexecution/JobPriority.java similarity index 100% rename from core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/prioritytaskexecution/JobPriority.java rename to core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/concurrent/prioritytaskexecution/JobPriority.java diff --git a/core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/prioritytaskexecution/PriorityJobScheduler.java b/core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/concurrent/prioritytaskexecution/PriorityJobScheduler.java similarity index 100% rename from core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/prioritytaskexecution/PriorityJobScheduler.java rename to core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/concurrent/prioritytaskexecution/PriorityJobScheduler.java diff --git a/core-java-modules/core-java-concurrency-advanced/src/test/java/com/baeldung/concurrent/prioritytaskexecution/PriorityJobSchedulerUnitTest.java b/core-java-modules/core-java-concurrency-advanced-2/src/test/java/com/baeldung/concurrent/prioritytaskexecution/PriorityJobSchedulerUnitTest.java similarity index 100% rename from core-java-modules/core-java-concurrency-advanced/src/test/java/com/baeldung/concurrent/prioritytaskexecution/PriorityJobSchedulerUnitTest.java rename to core-java-modules/core-java-concurrency-advanced-2/src/test/java/com/baeldung/concurrent/prioritytaskexecution/PriorityJobSchedulerUnitTest.java diff --git a/core-java-modules/core-java-concurrency-advanced/README.md b/core-java-modules/core-java-concurrency-advanced/README.md index f19b4c8375..ac75ca4933 100644 --- a/core-java-modules/core-java-concurrency-advanced/README.md +++ b/core-java-modules/core-java-concurrency-advanced/README.md @@ -14,7 +14,6 @@ - [CyclicBarrier in Java](https://www.baeldung.com/java-cyclic-barrier) - [Guide to the Volatile Keyword in Java](https://www.baeldung.com/java-volatile) -- [Priority-based Job Scheduling in Java](https://www.baeldung.com/java-priority-job-schedule) - [Brief Introduction to Java Thread.yield()](https://www.baeldung.com/java-thread-yield) - [Print Even and Odd Numbers Using 2 Threads](https://www.baeldung.com/java-even-odd-numbers-with-2-threads) - [Java CyclicBarrier vs CountDownLatch](https://www.baeldung.com/java-cyclicbarrier-countdownlatch) From 735462e6a8be435cdf0f4d233d8011b252b23fdd Mon Sep 17 00:00:00 2001 From: fejera Date: Sun, 29 Sep 2019 11:19:56 +0200 Subject: [PATCH 16/59] moved yield examples from core-java-concurrency-advanced to core-java-concurrency-advanced-2 --- core-java-modules/core-java-concurrency-advanced-2/README.md | 1 + .../src/main/java/com/baeldung/concurrent/yield/ThreadYield.java | 0 core-java-modules/core-java-concurrency-advanced/README.md | 1 - 3 files changed, 1 insertion(+), 1 deletion(-) rename core-java-modules/{core-java-concurrency-advanced => core-java-concurrency-advanced-2}/src/main/java/com/baeldung/concurrent/yield/ThreadYield.java (100%) diff --git a/core-java-modules/core-java-concurrency-advanced-2/README.md b/core-java-modules/core-java-concurrency-advanced-2/README.md index 9db768036a..68a6550264 100644 --- a/core-java-modules/core-java-concurrency-advanced-2/README.md +++ b/core-java-modules/core-java-concurrency-advanced-2/README.md @@ -6,3 +6,4 @@ - [Semaphores in Java](https://www.baeldung.com/java-semaphore) - [Daemon Threads in Java](https://www.baeldung.com/java-daemon-thread) - [Priority-based Job Scheduling in Java](https://www.baeldung.com/java-priority-job-schedule) +- [Brief Introduction to Java Thread.yield()](https://www.baeldung.com/java-thread-yield) diff --git a/core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/yield/ThreadYield.java b/core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/concurrent/yield/ThreadYield.java similarity index 100% rename from core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/yield/ThreadYield.java rename to core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/concurrent/yield/ThreadYield.java diff --git a/core-java-modules/core-java-concurrency-advanced/README.md b/core-java-modules/core-java-concurrency-advanced/README.md index ac75ca4933..f5d40b7976 100644 --- a/core-java-modules/core-java-concurrency-advanced/README.md +++ b/core-java-modules/core-java-concurrency-advanced/README.md @@ -14,7 +14,6 @@ - [CyclicBarrier in Java](https://www.baeldung.com/java-cyclic-barrier) - [Guide to the Volatile Keyword in Java](https://www.baeldung.com/java-volatile) -- [Brief Introduction to Java Thread.yield()](https://www.baeldung.com/java-thread-yield) - [Print Even and Odd Numbers Using 2 Threads](https://www.baeldung.com/java-even-odd-numbers-with-2-threads) - [Java CyclicBarrier vs CountDownLatch](https://www.baeldung.com/java-cyclicbarrier-countdownlatch) - [Guide to the Fork/Join Framework in Java](https://www.baeldung.com/java-fork-join) From fd61088fc29a38286d677644fab70f0b78bf0737 Mon Sep 17 00:00:00 2001 From: fejera Date: Sun, 29 Sep 2019 11:21:47 +0200 Subject: [PATCH 17/59] moved threaded even and odd number print examples from core-java-concurrency-advanced to core-java-concurrency-advanced-2 --- core-java-modules/core-java-concurrency-advanced-2/README.md | 1 + .../baeldung/concurrent/evenandodd/PrintEvenOddSemaphore.java | 0 .../baeldung/concurrent/evenandodd/PrintEvenOddWaitNotify.java | 0 core-java-modules/core-java-concurrency-advanced/README.md | 1 - 4 files changed, 1 insertion(+), 1 deletion(-) rename core-java-modules/{core-java-concurrency-advanced => core-java-concurrency-advanced-2}/src/main/java/com/baeldung/concurrent/evenandodd/PrintEvenOddSemaphore.java (100%) rename core-java-modules/{core-java-concurrency-advanced => core-java-concurrency-advanced-2}/src/main/java/com/baeldung/concurrent/evenandodd/PrintEvenOddWaitNotify.java (100%) diff --git a/core-java-modules/core-java-concurrency-advanced-2/README.md b/core-java-modules/core-java-concurrency-advanced-2/README.md index 68a6550264..81e12c2bd5 100644 --- a/core-java-modules/core-java-concurrency-advanced-2/README.md +++ b/core-java-modules/core-java-concurrency-advanced-2/README.md @@ -7,3 +7,4 @@ - [Daemon Threads in Java](https://www.baeldung.com/java-daemon-thread) - [Priority-based Job Scheduling in Java](https://www.baeldung.com/java-priority-job-schedule) - [Brief Introduction to Java Thread.yield()](https://www.baeldung.com/java-thread-yield) +- [Print Even and Odd Numbers Using 2 Threads](https://www.baeldung.com/java-even-odd-numbers-with-2-threads) diff --git a/core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/evenandodd/PrintEvenOddSemaphore.java b/core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/concurrent/evenandodd/PrintEvenOddSemaphore.java similarity index 100% rename from core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/evenandodd/PrintEvenOddSemaphore.java rename to core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/concurrent/evenandodd/PrintEvenOddSemaphore.java diff --git a/core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/evenandodd/PrintEvenOddWaitNotify.java b/core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/concurrent/evenandodd/PrintEvenOddWaitNotify.java similarity index 100% rename from core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/evenandodd/PrintEvenOddWaitNotify.java rename to core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/concurrent/evenandodd/PrintEvenOddWaitNotify.java diff --git a/core-java-modules/core-java-concurrency-advanced/README.md b/core-java-modules/core-java-concurrency-advanced/README.md index f5d40b7976..af956b9b81 100644 --- a/core-java-modules/core-java-concurrency-advanced/README.md +++ b/core-java-modules/core-java-concurrency-advanced/README.md @@ -14,7 +14,6 @@ - [CyclicBarrier in Java](https://www.baeldung.com/java-cyclic-barrier) - [Guide to the Volatile Keyword in Java](https://www.baeldung.com/java-volatile) -- [Print Even and Odd Numbers Using 2 Threads](https://www.baeldung.com/java-even-odd-numbers-with-2-threads) - [Java CyclicBarrier vs CountDownLatch](https://www.baeldung.com/java-cyclicbarrier-countdownlatch) - [Guide to the Fork/Join Framework in Java](https://www.baeldung.com/java-fork-join) - [Guide to ThreadLocalRandom in Java](https://www.baeldung.com/java-thread-local-random) From 582de7b60e560a9f620d93cd3549b12800a75fba Mon Sep 17 00:00:00 2001 From: fejera Date: Sun, 29 Sep 2019 11:33:40 +0200 Subject: [PATCH 18/59] moved cyclicbarrier vs countdownlatch examples from core-java-concurrency-advanced to core-java-concurrency-advanced-2 --- core-java-modules/core-java-concurrency-advanced-2/README.md | 1 + .../concurrent/countdownlatch/CountdownLatchCountExample.java | 0 .../concurrent/countdownlatch/CountdownLatchResetExample.java | 0 .../concurrent/cyclicbarrier/CyclicBarrierCountExample.java | 0 .../concurrent/cyclicbarrier/CyclicBarrierResetExample.java | 0 .../countdownlatch/CountdownLatchCountExampleUnitTest.java | 0 .../countdownlatch/CountdownLatchResetExampleUnitTest.java | 0 .../cyclicbarrier/CyclicBarrierCountExampleUnitTest.java | 0 .../cyclicbarrier/CyclicBarrierResetExampleUnitTest.java | 0 core-java-modules/core-java-concurrency-advanced/README.md | 1 - 10 files changed, 1 insertion(+), 1 deletion(-) rename core-java-modules/{core-java-concurrency-advanced => core-java-concurrency-advanced-2}/src/main/java/com/baeldung/concurrent/countdownlatch/CountdownLatchCountExample.java (100%) rename core-java-modules/{core-java-concurrency-advanced => core-java-concurrency-advanced-2}/src/main/java/com/baeldung/concurrent/countdownlatch/CountdownLatchResetExample.java (100%) rename core-java-modules/{core-java-concurrency-advanced => core-java-concurrency-advanced-2}/src/main/java/com/baeldung/concurrent/cyclicbarrier/CyclicBarrierCountExample.java (100%) rename core-java-modules/{core-java-concurrency-advanced => core-java-concurrency-advanced-2}/src/main/java/com/baeldung/concurrent/cyclicbarrier/CyclicBarrierResetExample.java (100%) rename core-java-modules/{core-java-concurrency-advanced => core-java-concurrency-advanced-2}/src/test/java/com/baeldung/concurrent/countdownlatch/CountdownLatchCountExampleUnitTest.java (100%) rename core-java-modules/{core-java-concurrency-advanced => core-java-concurrency-advanced-2}/src/test/java/com/baeldung/concurrent/countdownlatch/CountdownLatchResetExampleUnitTest.java (100%) rename core-java-modules/{core-java-concurrency-advanced => core-java-concurrency-advanced-2}/src/test/java/com/baeldung/concurrent/cyclicbarrier/CyclicBarrierCountExampleUnitTest.java (100%) rename core-java-modules/{core-java-concurrency-advanced => core-java-concurrency-advanced-2}/src/test/java/com/baeldung/concurrent/cyclicbarrier/CyclicBarrierResetExampleUnitTest.java (100%) diff --git a/core-java-modules/core-java-concurrency-advanced-2/README.md b/core-java-modules/core-java-concurrency-advanced-2/README.md index 81e12c2bd5..d1618bddc5 100644 --- a/core-java-modules/core-java-concurrency-advanced-2/README.md +++ b/core-java-modules/core-java-concurrency-advanced-2/README.md @@ -8,3 +8,4 @@ - [Priority-based Job Scheduling in Java](https://www.baeldung.com/java-priority-job-schedule) - [Brief Introduction to Java Thread.yield()](https://www.baeldung.com/java-thread-yield) - [Print Even and Odd Numbers Using 2 Threads](https://www.baeldung.com/java-even-odd-numbers-with-2-threads) +- [Java CyclicBarrier vs CountDownLatch](https://www.baeldung.com/java-cyclicbarrier-countdownlatch) diff --git a/core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/countdownlatch/CountdownLatchCountExample.java b/core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/concurrent/countdownlatch/CountdownLatchCountExample.java similarity index 100% rename from core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/countdownlatch/CountdownLatchCountExample.java rename to core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/concurrent/countdownlatch/CountdownLatchCountExample.java diff --git a/core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/countdownlatch/CountdownLatchResetExample.java b/core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/concurrent/countdownlatch/CountdownLatchResetExample.java similarity index 100% rename from core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/countdownlatch/CountdownLatchResetExample.java rename to core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/concurrent/countdownlatch/CountdownLatchResetExample.java diff --git a/core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/cyclicbarrier/CyclicBarrierCountExample.java b/core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/concurrent/cyclicbarrier/CyclicBarrierCountExample.java similarity index 100% rename from core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/cyclicbarrier/CyclicBarrierCountExample.java rename to core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/concurrent/cyclicbarrier/CyclicBarrierCountExample.java diff --git a/core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/cyclicbarrier/CyclicBarrierResetExample.java b/core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/concurrent/cyclicbarrier/CyclicBarrierResetExample.java similarity index 100% rename from core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/cyclicbarrier/CyclicBarrierResetExample.java rename to core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/concurrent/cyclicbarrier/CyclicBarrierResetExample.java diff --git a/core-java-modules/core-java-concurrency-advanced/src/test/java/com/baeldung/concurrent/countdownlatch/CountdownLatchCountExampleUnitTest.java b/core-java-modules/core-java-concurrency-advanced-2/src/test/java/com/baeldung/concurrent/countdownlatch/CountdownLatchCountExampleUnitTest.java similarity index 100% rename from core-java-modules/core-java-concurrency-advanced/src/test/java/com/baeldung/concurrent/countdownlatch/CountdownLatchCountExampleUnitTest.java rename to core-java-modules/core-java-concurrency-advanced-2/src/test/java/com/baeldung/concurrent/countdownlatch/CountdownLatchCountExampleUnitTest.java diff --git a/core-java-modules/core-java-concurrency-advanced/src/test/java/com/baeldung/concurrent/countdownlatch/CountdownLatchResetExampleUnitTest.java b/core-java-modules/core-java-concurrency-advanced-2/src/test/java/com/baeldung/concurrent/countdownlatch/CountdownLatchResetExampleUnitTest.java similarity index 100% rename from core-java-modules/core-java-concurrency-advanced/src/test/java/com/baeldung/concurrent/countdownlatch/CountdownLatchResetExampleUnitTest.java rename to core-java-modules/core-java-concurrency-advanced-2/src/test/java/com/baeldung/concurrent/countdownlatch/CountdownLatchResetExampleUnitTest.java diff --git a/core-java-modules/core-java-concurrency-advanced/src/test/java/com/baeldung/concurrent/cyclicbarrier/CyclicBarrierCountExampleUnitTest.java b/core-java-modules/core-java-concurrency-advanced-2/src/test/java/com/baeldung/concurrent/cyclicbarrier/CyclicBarrierCountExampleUnitTest.java similarity index 100% rename from core-java-modules/core-java-concurrency-advanced/src/test/java/com/baeldung/concurrent/cyclicbarrier/CyclicBarrierCountExampleUnitTest.java rename to core-java-modules/core-java-concurrency-advanced-2/src/test/java/com/baeldung/concurrent/cyclicbarrier/CyclicBarrierCountExampleUnitTest.java diff --git a/core-java-modules/core-java-concurrency-advanced/src/test/java/com/baeldung/concurrent/cyclicbarrier/CyclicBarrierResetExampleUnitTest.java b/core-java-modules/core-java-concurrency-advanced-2/src/test/java/com/baeldung/concurrent/cyclicbarrier/CyclicBarrierResetExampleUnitTest.java similarity index 100% rename from core-java-modules/core-java-concurrency-advanced/src/test/java/com/baeldung/concurrent/cyclicbarrier/CyclicBarrierResetExampleUnitTest.java rename to core-java-modules/core-java-concurrency-advanced-2/src/test/java/com/baeldung/concurrent/cyclicbarrier/CyclicBarrierResetExampleUnitTest.java diff --git a/core-java-modules/core-java-concurrency-advanced/README.md b/core-java-modules/core-java-concurrency-advanced/README.md index af956b9b81..5a3e92299f 100644 --- a/core-java-modules/core-java-concurrency-advanced/README.md +++ b/core-java-modules/core-java-concurrency-advanced/README.md @@ -14,7 +14,6 @@ - [CyclicBarrier in Java](https://www.baeldung.com/java-cyclic-barrier) - [Guide to the Volatile Keyword in Java](https://www.baeldung.com/java-volatile) -- [Java CyclicBarrier vs CountDownLatch](https://www.baeldung.com/java-cyclicbarrier-countdownlatch) - [Guide to the Fork/Join Framework in Java](https://www.baeldung.com/java-fork-join) - [Guide to ThreadLocalRandom in Java](https://www.baeldung.com/java-thread-local-random) - [The Thread.join() Method in Java](https://www.baeldung.com/java-thread-join) From 487c0df48213b7f281ad497db5a43a79d8e5ad91 Mon Sep 17 00:00:00 2001 From: fejera Date: Sun, 29 Sep 2019 11:37:53 +0200 Subject: [PATCH 19/59] moved fork-join examples from core-java-concurrency-advanced to core-java-concurrency-advanced-2 --- core-java-modules/core-java-concurrency-advanced-2/README.md | 1 + .../main/java/com/baeldung/forkjoin/CustomRecursiveAction.java | 0 .../main/java/com/baeldung/forkjoin/CustomRecursiveTask.java | 0 .../src/main/java/com/baeldung/forkjoin/util/PoolUtil.java | 0 .../com/baeldung/forkjoin}/Java8ForkJoinIntegrationTest.java | 2 +- core-java-modules/core-java-concurrency-advanced/README.md | 1 - 6 files changed, 2 insertions(+), 2 deletions(-) rename core-java-modules/{core-java-concurrency-advanced => core-java-concurrency-advanced-2}/src/main/java/com/baeldung/forkjoin/CustomRecursiveAction.java (100%) rename core-java-modules/{core-java-concurrency-advanced => core-java-concurrency-advanced-2}/src/main/java/com/baeldung/forkjoin/CustomRecursiveTask.java (100%) rename core-java-modules/{core-java-concurrency-advanced => core-java-concurrency-advanced-2}/src/main/java/com/baeldung/forkjoin/util/PoolUtil.java (100%) rename core-java-modules/{core-java-concurrency-advanced/src/test/java/com/baeldung/java8 => core-java-concurrency-advanced-2/src/test/java/com/baeldung/forkjoin}/Java8ForkJoinIntegrationTest.java (98%) diff --git a/core-java-modules/core-java-concurrency-advanced-2/README.md b/core-java-modules/core-java-concurrency-advanced-2/README.md index d1618bddc5..b1c8b93a74 100644 --- a/core-java-modules/core-java-concurrency-advanced-2/README.md +++ b/core-java-modules/core-java-concurrency-advanced-2/README.md @@ -9,3 +9,4 @@ - [Brief Introduction to Java Thread.yield()](https://www.baeldung.com/java-thread-yield) - [Print Even and Odd Numbers Using 2 Threads](https://www.baeldung.com/java-even-odd-numbers-with-2-threads) - [Java CyclicBarrier vs CountDownLatch](https://www.baeldung.com/java-cyclicbarrier-countdownlatch) +- [Guide to the Fork/Join Framework in Java](https://www.baeldung.com/java-fork-join) diff --git a/core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/forkjoin/CustomRecursiveAction.java b/core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/forkjoin/CustomRecursiveAction.java similarity index 100% rename from core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/forkjoin/CustomRecursiveAction.java rename to core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/forkjoin/CustomRecursiveAction.java diff --git a/core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/forkjoin/CustomRecursiveTask.java b/core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/forkjoin/CustomRecursiveTask.java similarity index 100% rename from core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/forkjoin/CustomRecursiveTask.java rename to core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/forkjoin/CustomRecursiveTask.java diff --git a/core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/forkjoin/util/PoolUtil.java b/core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/forkjoin/util/PoolUtil.java similarity index 100% rename from core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/forkjoin/util/PoolUtil.java rename to core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/forkjoin/util/PoolUtil.java diff --git a/core-java-modules/core-java-concurrency-advanced/src/test/java/com/baeldung/java8/Java8ForkJoinIntegrationTest.java b/core-java-modules/core-java-concurrency-advanced-2/src/test/java/com/baeldung/forkjoin/Java8ForkJoinIntegrationTest.java similarity index 98% rename from core-java-modules/core-java-concurrency-advanced/src/test/java/com/baeldung/java8/Java8ForkJoinIntegrationTest.java rename to core-java-modules/core-java-concurrency-advanced-2/src/test/java/com/baeldung/forkjoin/Java8ForkJoinIntegrationTest.java index 6778fd782b..c469fe0195 100644 --- a/core-java-modules/core-java-concurrency-advanced/src/test/java/com/baeldung/java8/Java8ForkJoinIntegrationTest.java +++ b/core-java-modules/core-java-concurrency-advanced-2/src/test/java/com/baeldung/forkjoin/Java8ForkJoinIntegrationTest.java @@ -1,4 +1,4 @@ -package com.baeldung.java8; +package com.baeldung.forkjoin; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; diff --git a/core-java-modules/core-java-concurrency-advanced/README.md b/core-java-modules/core-java-concurrency-advanced/README.md index 5a3e92299f..48ca49564b 100644 --- a/core-java-modules/core-java-concurrency-advanced/README.md +++ b/core-java-modules/core-java-concurrency-advanced/README.md @@ -14,7 +14,6 @@ - [CyclicBarrier in Java](https://www.baeldung.com/java-cyclic-barrier) - [Guide to the Volatile Keyword in Java](https://www.baeldung.com/java-volatile) -- [Guide to the Fork/Join Framework in Java](https://www.baeldung.com/java-fork-join) - [Guide to ThreadLocalRandom in Java](https://www.baeldung.com/java-thread-local-random) - [The Thread.join() Method in Java](https://www.baeldung.com/java-thread-join) - [Passing Parameters to Java Threads](https://www.baeldung.com/java-thread-parameters) From 2940c2bde57a1e703ed6483bec7301850c4783ac Mon Sep 17 00:00:00 2001 From: fejera Date: Sun, 29 Sep 2019 11:43:37 +0200 Subject: [PATCH 20/59] moved thread local random examples from core-java-concurrency-advanced to core-java-concurrency-advanced-2 --- .../core-java-concurrency-advanced-2/README.md | 1 + .../core-java-concurrency-advanced-2/pom.xml | 13 +++++++++++++ .../ThreadLocalRandomBenchMarkRunner.java | 0 .../ThreadLocalRandomBenchMarker.java | 0 .../ThreadLocalRandomIntegrationTest.java | 0 .../core-java-concurrency-advanced/README.md | 1 - .../core-java-concurrency-advanced/pom.xml | 12 ------------ 7 files changed, 14 insertions(+), 13 deletions(-) rename core-java-modules/{core-java-concurrency-advanced => core-java-concurrency-advanced-2}/src/main/java/com/baeldung/threadlocalrandom/ThreadLocalRandomBenchMarkRunner.java (100%) rename core-java-modules/{core-java-concurrency-advanced => core-java-concurrency-advanced-2}/src/main/java/com/baeldung/threadlocalrandom/ThreadLocalRandomBenchMarker.java (100%) rename core-java-modules/{core-java-concurrency-advanced => core-java-concurrency-advanced-2}/src/test/java/com/baeldung/threadlocalrandom/ThreadLocalRandomIntegrationTest.java (100%) diff --git a/core-java-modules/core-java-concurrency-advanced-2/README.md b/core-java-modules/core-java-concurrency-advanced-2/README.md index b1c8b93a74..583c2e7312 100644 --- a/core-java-modules/core-java-concurrency-advanced-2/README.md +++ b/core-java-modules/core-java-concurrency-advanced-2/README.md @@ -10,3 +10,4 @@ - [Print Even and Odd Numbers Using 2 Threads](https://www.baeldung.com/java-even-odd-numbers-with-2-threads) - [Java CyclicBarrier vs CountDownLatch](https://www.baeldung.com/java-cyclicbarrier-countdownlatch) - [Guide to the Fork/Join Framework in Java](https://www.baeldung.com/java-fork-join) +- [Guide to ThreadLocalRandom in Java](https://www.baeldung.com/java-thread-local-random) diff --git a/core-java-modules/core-java-concurrency-advanced-2/pom.xml b/core-java-modules/core-java-concurrency-advanced-2/pom.xml index 2ce337bea1..cad492b1ea 100644 --- a/core-java-modules/core-java-concurrency-advanced-2/pom.xml +++ b/core-java-modules/core-java-concurrency-advanced-2/pom.xml @@ -20,6 +20,16 @@ commons-lang3 ${commons-lang3.version} + + org.openjdk.jmh + jmh-core + ${jmh-core.version} + + + org.openjdk.jmh + jmh-generator-annprocess + ${jmh-generator-annprocess.version} + org.assertj @@ -40,6 +50,9 @@ + 1.19 + 1.19 + 3.6.1 diff --git a/core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/threadlocalrandom/ThreadLocalRandomBenchMarkRunner.java b/core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/threadlocalrandom/ThreadLocalRandomBenchMarkRunner.java similarity index 100% rename from core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/threadlocalrandom/ThreadLocalRandomBenchMarkRunner.java rename to core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/threadlocalrandom/ThreadLocalRandomBenchMarkRunner.java diff --git a/core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/threadlocalrandom/ThreadLocalRandomBenchMarker.java b/core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/threadlocalrandom/ThreadLocalRandomBenchMarker.java similarity index 100% rename from core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/threadlocalrandom/ThreadLocalRandomBenchMarker.java rename to core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/threadlocalrandom/ThreadLocalRandomBenchMarker.java diff --git a/core-java-modules/core-java-concurrency-advanced/src/test/java/com/baeldung/threadlocalrandom/ThreadLocalRandomIntegrationTest.java b/core-java-modules/core-java-concurrency-advanced-2/src/test/java/com/baeldung/threadlocalrandom/ThreadLocalRandomIntegrationTest.java similarity index 100% rename from core-java-modules/core-java-concurrency-advanced/src/test/java/com/baeldung/threadlocalrandom/ThreadLocalRandomIntegrationTest.java rename to core-java-modules/core-java-concurrency-advanced-2/src/test/java/com/baeldung/threadlocalrandom/ThreadLocalRandomIntegrationTest.java diff --git a/core-java-modules/core-java-concurrency-advanced/README.md b/core-java-modules/core-java-concurrency-advanced/README.md index 48ca49564b..ab85716907 100644 --- a/core-java-modules/core-java-concurrency-advanced/README.md +++ b/core-java-modules/core-java-concurrency-advanced/README.md @@ -14,6 +14,5 @@ - [CyclicBarrier in Java](https://www.baeldung.com/java-cyclic-barrier) - [Guide to the Volatile Keyword in Java](https://www.baeldung.com/java-volatile) -- [Guide to ThreadLocalRandom in Java](https://www.baeldung.com/java-thread-local-random) - [The Thread.join() Method in Java](https://www.baeldung.com/java-thread-join) - [Passing Parameters to Java Threads](https://www.baeldung.com/java-thread-parameters) diff --git a/core-java-modules/core-java-concurrency-advanced/pom.xml b/core-java-modules/core-java-concurrency-advanced/pom.xml index 5d41909ed3..4a9ee30d65 100644 --- a/core-java-modules/core-java-concurrency-advanced/pom.xml +++ b/core-java-modules/core-java-concurrency-advanced/pom.xml @@ -47,16 +47,6 @@ ${avaitility.version} test - - org.openjdk.jmh - jmh-core - ${jmh-core.version} - - - org.openjdk.jmh - jmh-generator-annprocess - ${jmh-generator-annprocess.version} - @@ -78,8 +68,6 @@ 3.6.1 1.7.0 - 1.19 - 1.19 From 0e60db5e5a6590ecd181c380536cd5ad85f92e98 Mon Sep 17 00:00:00 2001 From: fejera Date: Sun, 29 Sep 2019 11:46:08 +0200 Subject: [PATCH 21/59] moved thread join examples from core-java-concurrency-advanced to core-java-concurrency-advanced-2 --- core-java-modules/core-java-concurrency-advanced-2/README.md | 1 + .../test/java/com/baeldung/thread/join/ThreadJoinUnitTest.java | 0 core-java-modules/core-java-concurrency-advanced/README.md | 1 - 3 files changed, 1 insertion(+), 1 deletion(-) rename core-java-modules/{core-java-concurrency-advanced => core-java-concurrency-advanced-2}/src/test/java/com/baeldung/thread/join/ThreadJoinUnitTest.java (100%) diff --git a/core-java-modules/core-java-concurrency-advanced-2/README.md b/core-java-modules/core-java-concurrency-advanced-2/README.md index 583c2e7312..328a0579c7 100644 --- a/core-java-modules/core-java-concurrency-advanced-2/README.md +++ b/core-java-modules/core-java-concurrency-advanced-2/README.md @@ -11,3 +11,4 @@ - [Java CyclicBarrier vs CountDownLatch](https://www.baeldung.com/java-cyclicbarrier-countdownlatch) - [Guide to the Fork/Join Framework in Java](https://www.baeldung.com/java-fork-join) - [Guide to ThreadLocalRandom in Java](https://www.baeldung.com/java-thread-local-random) +- [The Thread.join() Method in Java](https://www.baeldung.com/java-thread-join) diff --git a/core-java-modules/core-java-concurrency-advanced/src/test/java/com/baeldung/thread/join/ThreadJoinUnitTest.java b/core-java-modules/core-java-concurrency-advanced-2/src/test/java/com/baeldung/thread/join/ThreadJoinUnitTest.java similarity index 100% rename from core-java-modules/core-java-concurrency-advanced/src/test/java/com/baeldung/thread/join/ThreadJoinUnitTest.java rename to core-java-modules/core-java-concurrency-advanced-2/src/test/java/com/baeldung/thread/join/ThreadJoinUnitTest.java diff --git a/core-java-modules/core-java-concurrency-advanced/README.md b/core-java-modules/core-java-concurrency-advanced/README.md index ab85716907..e2b7c85517 100644 --- a/core-java-modules/core-java-concurrency-advanced/README.md +++ b/core-java-modules/core-java-concurrency-advanced/README.md @@ -14,5 +14,4 @@ - [CyclicBarrier in Java](https://www.baeldung.com/java-cyclic-barrier) - [Guide to the Volatile Keyword in Java](https://www.baeldung.com/java-volatile) -- [The Thread.join() Method in Java](https://www.baeldung.com/java-thread-join) - [Passing Parameters to Java Threads](https://www.baeldung.com/java-thread-parameters) From 9d4614981b0d3464fc22e8f464c514666a64e443 Mon Sep 17 00:00:00 2001 From: fejera Date: Sun, 29 Sep 2019 11:50:23 +0200 Subject: [PATCH 22/59] moved parameterized thread examples from core-java-concurrency-advanced to core-java-concurrency-advanced-2 --- .../core-java-concurrency-advanced-2/README.md | 1 + .../baeldung/concurrent/parameters}/AverageCalculator.java | 2 +- .../concurrent/parameters}/ParameterizedThreadExample.java | 2 +- .../parameters/ParameterizedThreadUnitTest.java | 7 +++---- core-java-modules/core-java-concurrency-advanced/README.md | 2 -- 5 files changed, 6 insertions(+), 8 deletions(-) rename core-java-modules/{core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/parameter => core-java-concurrency-advanced-2/src/main/java/com/baeldung/concurrent/parameters}/AverageCalculator.java (90%) rename core-java-modules/{core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/parameter => core-java-concurrency-advanced-2/src/main/java/com/baeldung/concurrent/parameters}/ParameterizedThreadExample.java (95%) rename core-java-modules/{core-java-concurrency-advanced/src/test/java/com/baeldung => core-java-concurrency-advanced-2/src/test/java/com/baeldung/concurrent}/parameters/ParameterizedThreadUnitTest.java (93%) diff --git a/core-java-modules/core-java-concurrency-advanced-2/README.md b/core-java-modules/core-java-concurrency-advanced-2/README.md index 328a0579c7..8db1b89468 100644 --- a/core-java-modules/core-java-concurrency-advanced-2/README.md +++ b/core-java-modules/core-java-concurrency-advanced-2/README.md @@ -12,3 +12,4 @@ - [Guide to the Fork/Join Framework in Java](https://www.baeldung.com/java-fork-join) - [Guide to ThreadLocalRandom in Java](https://www.baeldung.com/java-thread-local-random) - [The Thread.join() Method in Java](https://www.baeldung.com/java-thread-join) +- [Passing Parameters to Java Threads](https://www.baeldung.com/java-thread-parameters) diff --git a/core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/parameter/AverageCalculator.java b/core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/concurrent/parameters/AverageCalculator.java similarity index 90% rename from core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/parameter/AverageCalculator.java rename to core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/concurrent/parameters/AverageCalculator.java index a548b5d4a7..f0997b30bd 100644 --- a/core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/parameter/AverageCalculator.java +++ b/core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/concurrent/parameters/AverageCalculator.java @@ -1,4 +1,4 @@ -package com.baeldung.concurrent.parameter; +package com.baeldung.concurrent.parameters; import java.util.concurrent.Callable; import java.util.stream.IntStream; diff --git a/core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/parameter/ParameterizedThreadExample.java b/core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/concurrent/parameters/ParameterizedThreadExample.java similarity index 95% rename from core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/parameter/ParameterizedThreadExample.java rename to core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/concurrent/parameters/ParameterizedThreadExample.java index 73c61f3fb1..177bf14dae 100644 --- a/core-java-modules/core-java-concurrency-advanced/src/main/java/com/baeldung/concurrent/parameter/ParameterizedThreadExample.java +++ b/core-java-modules/core-java-concurrency-advanced-2/src/main/java/com/baeldung/concurrent/parameters/ParameterizedThreadExample.java @@ -1,4 +1,4 @@ -package com.baeldung.concurrent.parameter; +package com.baeldung.concurrent.parameters; import java.util.concurrent.Callable; import java.util.stream.IntStream; diff --git a/core-java-modules/core-java-concurrency-advanced/src/test/java/com/baeldung/parameters/ParameterizedThreadUnitTest.java b/core-java-modules/core-java-concurrency-advanced-2/src/test/java/com/baeldung/concurrent/parameters/ParameterizedThreadUnitTest.java similarity index 93% rename from core-java-modules/core-java-concurrency-advanced/src/test/java/com/baeldung/parameters/ParameterizedThreadUnitTest.java rename to core-java-modules/core-java-concurrency-advanced-2/src/test/java/com/baeldung/concurrent/parameters/ParameterizedThreadUnitTest.java index 21b374e609..4185d77dc3 100644 --- a/core-java-modules/core-java-concurrency-advanced/src/test/java/com/baeldung/parameters/ParameterizedThreadUnitTest.java +++ b/core-java-modules/core-java-concurrency-advanced-2/src/test/java/com/baeldung/concurrent/parameters/ParameterizedThreadUnitTest.java @@ -1,14 +1,13 @@ -package com.baeldung.parameters; +package com.baeldung.concurrent.parameters; -import com.baeldung.concurrent.parameter.AverageCalculator; -import org.junit.Test; +import static org.junit.Assert.assertEquals; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.Future; import java.util.stream.IntStream; -import static org.junit.Assert.assertEquals; +import org.junit.Test; public class ParameterizedThreadUnitTest { diff --git a/core-java-modules/core-java-concurrency-advanced/README.md b/core-java-modules/core-java-concurrency-advanced/README.md index e2b7c85517..5c4a9889e2 100644 --- a/core-java-modules/core-java-concurrency-advanced/README.md +++ b/core-java-modules/core-java-concurrency-advanced/README.md @@ -13,5 +13,3 @@ - [An Introduction to Atomic Variables in Java](https://www.baeldung.com/java-atomic-variables) - [CyclicBarrier in Java](https://www.baeldung.com/java-cyclic-barrier) - [Guide to the Volatile Keyword in Java](https://www.baeldung.com/java-volatile) - -- [Passing Parameters to Java Threads](https://www.baeldung.com/java-thread-parameters) From 230b2db438eb991de795be57daf08c08245399be Mon Sep 17 00:00:00 2001 From: Afshin Date: Sun, 29 Sep 2019 18:30:31 +0200 Subject: [PATCH 23/59] MalformedInputException test functions are added --- .../encoding/CharacterEncodingExamples.java | 20 +++++-- .../CharacterEncodingExamplesUnitTest.java | 55 +++++++++++++++++++ 2 files changed, 70 insertions(+), 5 deletions(-) diff --git a/core-java-modules/core-java/src/main/java/com/baeldung/encoding/CharacterEncodingExamples.java b/core-java-modules/core-java/src/main/java/com/baeldung/encoding/CharacterEncodingExamples.java index bdd92e37f6..51b2347823 100644 --- a/core-java-modules/core-java/src/main/java/com/baeldung/encoding/CharacterEncodingExamples.java +++ b/core-java-modules/core-java/src/main/java/com/baeldung/encoding/CharacterEncodingExamples.java @@ -1,10 +1,9 @@ package com.baeldung.encoding; -import java.io.File; -import java.io.FileInputStream; -import java.io.IOException; -import java.io.InputStreamReader; -import java.io.UnsupportedEncodingException; +import java.io.*; +import java.nio.charset.Charset; +import java.nio.charset.CharsetDecoder; +import java.nio.charset.CodingErrorAction; public class CharacterEncodingExamples { @@ -29,4 +28,15 @@ public class CharacterEncodingExamples { } return buffer.toString(); } + + static String decodeText(String input, Charset charset, CodingErrorAction codingErrorAction) throws IOException { + CharsetDecoder charsetDecoder = charset.newDecoder(); + charsetDecoder.onMalformedInput(codingErrorAction); + return new BufferedReader( + new InputStreamReader( + new ByteArrayInputStream(input.getBytes()), + charsetDecoder)) + .readLine(); + + } } diff --git a/core-java-modules/core-java/src/test/java/com/baeldung/encoding/CharacterEncodingExamplesUnitTest.java b/core-java-modules/core-java/src/test/java/com/baeldung/encoding/CharacterEncodingExamplesUnitTest.java index 95b3605d95..1a875738d0 100644 --- a/core-java-modules/core-java/src/test/java/com/baeldung/encoding/CharacterEncodingExamplesUnitTest.java +++ b/core-java-modules/core-java/src/test/java/com/baeldung/encoding/CharacterEncodingExamplesUnitTest.java @@ -1,9 +1,21 @@ package com.baeldung.encoding; +import java.io.BufferedReader; import java.io.IOException; +import java.io.InputStreamReader; +import java.io.Reader; +import java.nio.charset.*; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; import org.junit.Assert; import org.junit.Test; +import org.junit.jupiter.api.Assertions; + +import static java.nio.file.Files.newInputStream; public class CharacterEncodingExamplesUnitTest { @@ -58,4 +70,47 @@ public class CharacterEncodingExamplesUnitTest { "0 0 10001010 10011110 "); } + @Test + public void givenUTF8String_decodeByUS_ASCII_ReplaceMalformedInputSequence() throws IOException { + String input = "The façade pattern is a software design pattern."; + Assertions.assertEquals(CharacterEncodingExamples.decodeText(input, StandardCharsets.US_ASCII, CodingErrorAction.REPLACE), + "The fa��ade pattern is a software design pattern."); + } + + @Test + public void givenUTF8String_decodeByUS_ASCII_IgnoreMalformedInputSequence() throws IOException { + String input = "The façade pattern is a software design pattern."; + Assertions.assertEquals( + CharacterEncodingExamples.decodeText(input, StandardCharsets.US_ASCII, CodingErrorAction.IGNORE), + "The faade pattern is a software design pattern."); + } + + @Test + public void givenUTF8String_decodeByUS_ASCII_ReportMalformedInputSequence() { + String input = "The façade pattern is a software design pattern."; + Assertions.assertThrows(MalformedInputException.class, + () -> CharacterEncodingExamples.decodeText(input, StandardCharsets.US_ASCII, CodingErrorAction.REPORT)); + } + + @Test + public void givenTextFile_FindSuitableCandidateEncodings() { + Path path = Paths.get("src/test/resources/encoding.txt"); + List allCandidateCharSets = Arrays.asList(StandardCharsets.US_ASCII, StandardCharsets.UTF_8, StandardCharsets.ISO_8859_1); + List suitableCharsets = new ArrayList<>(); + allCandidateCharSets.forEach(charset -> { + try { + CharsetDecoder charsetDecoder = charset.newDecoder().onMalformedInput(CodingErrorAction.REPORT); + Reader reader = new InputStreamReader(newInputStream(path), charsetDecoder); + BufferedReader bufferedReader = new BufferedReader(reader); + while (bufferedReader.readLine() != null) { + } + suitableCharsets.add(charset); + } catch (MalformedInputException ignored) { + } catch (IOException ex) { + ex.printStackTrace(); + } + }); + Assertions.assertEquals(suitableCharsets, Arrays.asList(StandardCharsets.UTF_8, StandardCharsets.ISO_8859_1)); + } + } From f3537acf6b7e7e2b4d90f1a21ec9ad841dc23dae Mon Sep 17 00:00:00 2001 From: IgorNB Date: Wed, 2 Oct 2019 12:52:46 +0300 Subject: [PATCH 24/59] SemaPhoreDemo double acquire fix tryAcquire() already acquires a permit, if one is available (no need to call acquire() after it) --- .../java/com/baeldung/concurrent/semaphore/SemaPhoreDemo.java | 1 - 1 file changed, 1 deletion(-) diff --git a/core-java-modules/core-java-concurrency-basic/src/main/java/com/baeldung/concurrent/semaphore/SemaPhoreDemo.java b/core-java-modules/core-java-concurrency-basic/src/main/java/com/baeldung/concurrent/semaphore/SemaPhoreDemo.java index 3a1d8555d3..211ae78c1f 100644 --- a/core-java-modules/core-java-concurrency-basic/src/main/java/com/baeldung/concurrent/semaphore/SemaPhoreDemo.java +++ b/core-java-modules/core-java-concurrency-basic/src/main/java/com/baeldung/concurrent/semaphore/SemaPhoreDemo.java @@ -12,7 +12,6 @@ public class SemaPhoreDemo { System.out.println("Number of threads waiting to acquire: " + semaphore.getQueueLength()); if (semaphore.tryAcquire()) { - semaphore.acquire(); // perform some critical operations semaphore.release(); } From efb631f0176e7179212c9d98d5a70a24e901ace2 Mon Sep 17 00:00:00 2001 From: IgorNB Date: Wed, 2 Oct 2019 19:55:06 +0300 Subject: [PATCH 25/59] safe semaphore.release in finally block --- .../com/baeldung/concurrent/semaphore/SemaPhoreDemo.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/core-java-modules/core-java-concurrency-basic/src/main/java/com/baeldung/concurrent/semaphore/SemaPhoreDemo.java b/core-java-modules/core-java-concurrency-basic/src/main/java/com/baeldung/concurrent/semaphore/SemaPhoreDemo.java index 211ae78c1f..153853a5b8 100644 --- a/core-java-modules/core-java-concurrency-basic/src/main/java/com/baeldung/concurrent/semaphore/SemaPhoreDemo.java +++ b/core-java-modules/core-java-concurrency-basic/src/main/java/com/baeldung/concurrent/semaphore/SemaPhoreDemo.java @@ -11,9 +11,12 @@ public class SemaPhoreDemo { System.out.println("Available permit : " + semaphore.availablePermits()); System.out.println("Number of threads waiting to acquire: " + semaphore.getQueueLength()); - if (semaphore.tryAcquire()) { + if (semaphore.tryAcquire()) + try { // perform some critical operations - semaphore.release(); + } finally { + semaphore.release(); + } } } From 7f51ae04c015d47b3bb4bbab0500192bdde9de93 Mon Sep 17 00:00:00 2001 From: IgorNB Date: Wed, 2 Oct 2019 19:56:19 +0300 Subject: [PATCH 26/59] Update SemaPhoreDemo.java --- .../java/com/baeldung/concurrent/semaphore/SemaPhoreDemo.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core-java-modules/core-java-concurrency-basic/src/main/java/com/baeldung/concurrent/semaphore/SemaPhoreDemo.java b/core-java-modules/core-java-concurrency-basic/src/main/java/com/baeldung/concurrent/semaphore/SemaPhoreDemo.java index 153853a5b8..43261e5ee4 100644 --- a/core-java-modules/core-java-concurrency-basic/src/main/java/com/baeldung/concurrent/semaphore/SemaPhoreDemo.java +++ b/core-java-modules/core-java-concurrency-basic/src/main/java/com/baeldung/concurrent/semaphore/SemaPhoreDemo.java @@ -11,7 +11,7 @@ public class SemaPhoreDemo { System.out.println("Available permit : " + semaphore.availablePermits()); System.out.println("Number of threads waiting to acquire: " + semaphore.getQueueLength()); - if (semaphore.tryAcquire()) + if (semaphore.tryAcquire()) { try { // perform some critical operations } finally { From 4e07b7f7e7864d966ffd9f50f5b4b66d1daf6a02 Mon Sep 17 00:00:00 2001 From: Sjmillington Date: Sun, 29 Sep 2019 16:36:24 +0100 Subject: [PATCH 27/59] [BAEL-17476] Add README descriptions - 20 --- persistence-modules/spring-hibernate4/README.md | 5 +++-- persistence-modules/spring-mybatis/README.md | 6 +++++- spring-remoting/remoting-hessian-burlap/README.md | 5 ++++- spring-remoting/remoting-http/README.md | 8 ++++++++ spring-remoting/remoting-jms/README.md | 8 ++++++++ spring-remoting/remoting-rmi/README.md | 7 +++++++ spring-security-thymeleaf/{README.MD => README.md} | 0 7 files changed, 35 insertions(+), 4 deletions(-) create mode 100644 spring-remoting/remoting-http/README.md create mode 100644 spring-remoting/remoting-jms/README.md create mode 100644 spring-remoting/remoting-rmi/README.md rename spring-security-thymeleaf/{README.MD => README.md} (100%) diff --git a/persistence-modules/spring-hibernate4/README.md b/persistence-modules/spring-hibernate4/README.md index 020e867c82..c9e2b5abfc 100644 --- a/persistence-modules/spring-hibernate4/README.md +++ b/persistence-modules/spring-hibernate4/README.md @@ -1,6 +1,6 @@ -========= +## Spring with Hibernate 4 -## Spring with Hibernate 4 Example Project +This module contains articles about Spring with Hibernate 4 ### Relevant Articles: - [Guide to Hibernate 4 with Spring](http://www.baeldung.com/hibernate-4-spring) @@ -20,5 +20,6 @@ cd REST mvn install mvn cargo:run ``` + - **note**: starts on port `8082` diff --git a/persistence-modules/spring-mybatis/README.md b/persistence-modules/spring-mybatis/README.md index 5be328285f..b88fd1c672 100644 --- a/persistence-modules/spring-mybatis/README.md +++ b/persistence-modules/spring-mybatis/README.md @@ -1,3 +1,7 @@ -##Relevant Articles +## Spring MyBatis + +This module contains articles about Spring with MyBatis + +## Relevant Articles - [MyBatis with Spring](https://www.baeldung.com/spring-mybatis) diff --git a/spring-remoting/remoting-hessian-burlap/README.md b/spring-remoting/remoting-hessian-burlap/README.md index bf90c9676f..cacceddc5a 100644 --- a/spring-remoting/remoting-hessian-burlap/README.md +++ b/spring-remoting/remoting-hessian-burlap/README.md @@ -1,6 +1,9 @@ -## Spring Remoting with Hessian and Burlap Tutorial +## Spring Remoting with Hessian and Burlap + +This module contains articles about Spring Remoting with Hessian and Burlap ### Relevant Articles + - [Spring Remoting with Hessian and Burlap](http://www.baeldung.com/spring-remoting-hessian-burlap) ### Overview diff --git a/spring-remoting/remoting-http/README.md b/spring-remoting/remoting-http/README.md new file mode 100644 index 0000000000..7e30d07a0a --- /dev/null +++ b/spring-remoting/remoting-http/README.md @@ -0,0 +1,8 @@ +## Remoting HTTP + +This module contains articles about Spring Remoting with HTTP + +### Relevant Articles: + +- [Intro to Spring Remoting with HTTP Invokers](https://www.baeldung.com/spring-remoting-http-invoker) + diff --git a/spring-remoting/remoting-jms/README.md b/spring-remoting/remoting-jms/README.md new file mode 100644 index 0000000000..2f48a8f57f --- /dev/null +++ b/spring-remoting/remoting-jms/README.md @@ -0,0 +1,8 @@ +## Remoting JMS + +This module contains articles about Spring Remoting with Java Message Service (JMS) + +### Relevant Articles: + +- [Spring Remoting with JMS and ActiveMQ](https://www.baeldung.com/spring-remoting-jms) + diff --git a/spring-remoting/remoting-rmi/README.md b/spring-remoting/remoting-rmi/README.md new file mode 100644 index 0000000000..082b5c37ed --- /dev/null +++ b/spring-remoting/remoting-rmi/README.md @@ -0,0 +1,7 @@ +## Remoting RMI + +This module contains articles about Spring Remoting with Remote Method Invocation (RMI) + +### Relevant Articles: + +- [Spring Remoting with RMI](https://www.baeldung.com/spring-remoting-rmi) \ No newline at end of file diff --git a/spring-security-thymeleaf/README.MD b/spring-security-thymeleaf/README.md similarity index 100% rename from spring-security-thymeleaf/README.MD rename to spring-security-thymeleaf/README.md From c7174343bf9f3d51fdff589bd08170671ed73b71 Mon Sep 17 00:00:00 2001 From: caroline Date: Thu, 3 Oct 2019 22:52:34 +0200 Subject: [PATCH 28/59] Removing null checks as suggested by editor for BAEL-3083 --- .../java/com/baeldung/findastring/FindAStringInGivenList.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core-java-modules/core-java-collections-list-2/src/main/java/com/baeldung/findastring/FindAStringInGivenList.java b/core-java-modules/core-java-collections-list-2/src/main/java/com/baeldung/findastring/FindAStringInGivenList.java index 816b87dc86..67c62fe009 100644 --- a/core-java-modules/core-java-collections-list-2/src/main/java/com/baeldung/findastring/FindAStringInGivenList.java +++ b/core-java-modules/core-java-collections-list-2/src/main/java/com/baeldung/findastring/FindAStringInGivenList.java @@ -17,7 +17,7 @@ public class FindAStringInGivenList { List matches = new ArrayList(); - String pattern = ".*\\b"+search+"\\b.*"; + String pattern = ".*"+search+".*"; Pattern p = Pattern.compile(pattern); for(String str: list) { From 1d383ee388833ee84d626350d0469975a9bf5265 Mon Sep 17 00:00:00 2001 From: Sjmillington Date: Sat, 5 Oct 2019 16:48:57 +0100 Subject: [PATCH 29/59] Changed `with HTTP` to `over HTTP` --- spring-remoting/remoting-http/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/spring-remoting/remoting-http/README.md b/spring-remoting/remoting-http/README.md index 7e30d07a0a..a4f3ea82a9 100644 --- a/spring-remoting/remoting-http/README.md +++ b/spring-remoting/remoting-http/README.md @@ -1,6 +1,6 @@ ## Remoting HTTP -This module contains articles about Spring Remoting with HTTP +This module contains articles about Spring Remoting over HTTP ### Relevant Articles: From 2bb48cbedc50c26d055ce82c79c0770f658ecce1 Mon Sep 17 00:00:00 2001 From: Afshin Date: Sat, 5 Oct 2019 21:07:21 +0200 Subject: [PATCH 30/59] Wildcard imports are replaced by named classes and static import is removed --- .../baeldung/encoding/CharacterEncodingExamples.java | 8 +++++++- .../encoding/CharacterEncodingExamplesUnitTest.java | 11 +++++++---- 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/core-java-modules/core-java/src/main/java/com/baeldung/encoding/CharacterEncodingExamples.java b/core-java-modules/core-java/src/main/java/com/baeldung/encoding/CharacterEncodingExamples.java index 51b2347823..c1898a6723 100644 --- a/core-java-modules/core-java/src/main/java/com/baeldung/encoding/CharacterEncodingExamples.java +++ b/core-java-modules/core-java/src/main/java/com/baeldung/encoding/CharacterEncodingExamples.java @@ -1,6 +1,12 @@ package com.baeldung.encoding; -import java.io.*; +import java.io.BufferedReader; +import java.io.ByteArrayInputStream; +import java.io.File; +import java.io.FileInputStream; +import java.io.IOException; +import java.io.InputStreamReader; +import java.io.UnsupportedEncodingException; import java.nio.charset.Charset; import java.nio.charset.CharsetDecoder; import java.nio.charset.CodingErrorAction; diff --git a/core-java-modules/core-java/src/test/java/com/baeldung/encoding/CharacterEncodingExamplesUnitTest.java b/core-java-modules/core-java/src/test/java/com/baeldung/encoding/CharacterEncodingExamplesUnitTest.java index 1a875738d0..d87eafcee9 100644 --- a/core-java-modules/core-java/src/test/java/com/baeldung/encoding/CharacterEncodingExamplesUnitTest.java +++ b/core-java-modules/core-java/src/test/java/com/baeldung/encoding/CharacterEncodingExamplesUnitTest.java @@ -4,7 +4,12 @@ import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.Reader; -import java.nio.charset.*; +import java.nio.charset.Charset; +import java.nio.charset.CharsetDecoder; +import java.nio.charset.CodingErrorAction; +import java.nio.charset.MalformedInputException; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; import java.util.ArrayList; @@ -15,8 +20,6 @@ import org.junit.Assert; import org.junit.Test; import org.junit.jupiter.api.Assertions; -import static java.nio.file.Files.newInputStream; - public class CharacterEncodingExamplesUnitTest { @Test @@ -100,7 +103,7 @@ public class CharacterEncodingExamplesUnitTest { allCandidateCharSets.forEach(charset -> { try { CharsetDecoder charsetDecoder = charset.newDecoder().onMalformedInput(CodingErrorAction.REPORT); - Reader reader = new InputStreamReader(newInputStream(path), charsetDecoder); + Reader reader = new InputStreamReader(Files.newInputStream(path), charsetDecoder); BufferedReader bufferedReader = new BufferedReader(reader); while (bufferedReader.readLine() != null) { } From be24e03a4848d16a4151b9e013f71571cf398cfa Mon Sep 17 00:00:00 2001 From: amit2103 Date: Sun, 6 Oct 2019 12:27:05 +0530 Subject: [PATCH 31/59] [BAEL-17473] - Moved articles to corrrect places, formatted pom.xmls and added description in readme files --- spring-boot-artifacts/README.md | 5 +- spring-boot-artifacts/pom.xml | 53 +++++++--------- spring-boot-deployment/README.md | 6 +- spring-boot-deployment/pom.xml | 60 +++++++++---------- .../compare/ComparisonApplication.java | 0 .../baeldung/compare/StartupEventHandler.java | 0 .../src/main/resources/application.properties | 8 ++- spring-boot-environment/README.md | 5 ++ spring-boot-environment/pom.xml | 16 ++--- .../baeldung/properties/ConfProperties.java | 0 .../ExternalPropertyConfigurer.java | 0 .../ExternalPropertyFileLoader.java | 0 .../main/resources/external/conf.properties | 0 ...rnalPropertyFileLoaderIntegrationTest.java | 0 spring-boot-runtime/README.md | 8 ++- spring-boot-runtime/pom.xml | 16 ++--- .../resources/application-tomcat.properties | 0 17 files changed, 95 insertions(+), 82 deletions(-) rename {spring-boot-runtime => spring-boot-deployment}/src/main/java/com/baeldung/compare/ComparisonApplication.java (100%) rename {spring-boot-runtime => spring-boot-deployment}/src/main/java/com/baeldung/compare/StartupEventHandler.java (100%) rename {spring-boot-artifacts => spring-boot-environment}/src/main/java/com/baeldung/properties/ConfProperties.java (100%) rename {spring-boot-artifacts => spring-boot-environment}/src/main/java/com/baeldung/properties/ExternalPropertyConfigurer.java (100%) rename {spring-boot-artifacts => spring-boot-environment}/src/main/java/com/baeldung/properties/ExternalPropertyFileLoader.java (100%) rename {spring-boot-artifacts => spring-boot-environment}/src/main/resources/external/conf.properties (100%) rename {spring-boot-artifacts => spring-boot-environment}/src/test/java/com/baeldung/properties/ExternalPropertyFileLoaderIntegrationTest.java (100%) rename {spring-boot-deployment => spring-boot-runtime}/src/main/resources/application-tomcat.properties (100%) diff --git a/spring-boot-artifacts/README.md b/spring-boot-artifacts/README.md index 0a3f1b7e60..4025e43a65 100644 --- a/spring-boot-artifacts/README.md +++ b/spring-boot-artifacts/README.md @@ -1,7 +1,10 @@ +## Spring Boot Artifacts + +This module contains articles about configuring the Spring Boot build process. + ### Relevant Articles: - [Spring Boot Dependency Management with a Custom Parent](https://www.baeldung.com/spring-boot-dependency-management-custom-parent) - [Create a Fat Jar App with Spring Boot](https://www.baeldung.com/deployable-fat-jar-spring-boot) - [Intro to Spring Boot Starters](https://www.baeldung.com/spring-boot-starters) - - [Spring Properties File Outside jar](https://www.baeldung.com/spring-properties-file-outside-jar) - [Introduction to WebJars](https://www.baeldung.com/maven-webjars) - [A Quick Guide to Maven Wrapper](https://www.baeldung.com/maven-wrapper) \ No newline at end of file diff --git a/spring-boot-artifacts/pom.xml b/spring-boot-artifacts/pom.xml index 756864895d..8301533606 100644 --- a/spring-boot-artifacts/pom.xml +++ b/spring-boot-artifacts/pom.xml @@ -101,15 +101,6 @@ ${project.artifactId} - - - src/main/resources - true - - **/conf.properties - - - org.springframework.boot @@ -126,28 +117,28 @@ - org.apache.maven.plugins - maven-failsafe-plugin - 2.18 - - - - integration-tests - - integration-test - verify - - - - - **/ExternalPropertyFileLoaderIntegrationTest.java - - - - - + org.apache.maven.plugins + maven-failsafe-plugin + 2.18 + + + + integration-tests + + integration-test + verify + + + + + **/ExternalPropertyFileLoaderIntegrationTest.java + + + + + diff --git a/spring-boot-deployment/README.md b/spring-boot-deployment/README.md index 90c5d05e33..6171decf2d 100644 --- a/spring-boot-deployment/README.md +++ b/spring-boot-deployment/README.md @@ -1,5 +1,9 @@ +## Spring Boot Deployment + +This module contains articles about deployment of a Spring Boot Application + ### Relevant Articles: - [Deploy a Spring Boot WAR into a Tomcat Server](https://www.baeldung.com/spring-boot-war-tomcat-deploy) - [Spring Boot Console Application](https://www.baeldung.com/spring-boot-console-app) - [How to Configure Spring Boot Tomcat](https://www.baeldung.com/spring-boot-configure-tomcat) - - [Spring Boot Embedded Tomcat Logs](https://www.baeldung.com/spring-boot-embedded-tomcat-logs) + - [Comparing Embedded Servlet Containers in Spring Boot](https://www.baeldung.com/spring-boot-servlet-containers) \ No newline at end of file diff --git a/spring-boot-deployment/pom.xml b/spring-boot-deployment/pom.xml index 6802452ddf..69a54fd482 100644 --- a/spring-boot-deployment/pom.xml +++ b/spring-boot-deployment/pom.xml @@ -102,14 +102,14 @@ ${project.artifactId} - - src/main/resources - true - - **/conf.properties - - - + + src/main/resources + true + + **/conf.properties + + + org.springframework.boot @@ -126,28 +126,28 @@ - org.apache.maven.plugins - maven-failsafe-plugin - 2.18 - - - - integration-tests - - integration-test - verify - - - - - **/ExternalPropertyFileLoaderIntegrationTest.java - - - - - + org.apache.maven.plugins + maven-failsafe-plugin + 2.18 + + + + integration-tests + + integration-test + verify + + + + + **/ExternalPropertyFileLoaderIntegrationTest.java + + + + + diff --git a/spring-boot-runtime/src/main/java/com/baeldung/compare/ComparisonApplication.java b/spring-boot-deployment/src/main/java/com/baeldung/compare/ComparisonApplication.java similarity index 100% rename from spring-boot-runtime/src/main/java/com/baeldung/compare/ComparisonApplication.java rename to spring-boot-deployment/src/main/java/com/baeldung/compare/ComparisonApplication.java diff --git a/spring-boot-runtime/src/main/java/com/baeldung/compare/StartupEventHandler.java b/spring-boot-deployment/src/main/java/com/baeldung/compare/StartupEventHandler.java similarity index 100% rename from spring-boot-runtime/src/main/java/com/baeldung/compare/StartupEventHandler.java rename to spring-boot-deployment/src/main/java/com/baeldung/compare/StartupEventHandler.java diff --git a/spring-boot-deployment/src/main/resources/application.properties b/spring-boot-deployment/src/main/resources/application.properties index 709574239b..27b7915cff 100644 --- a/spring-boot-deployment/src/main/resources/application.properties +++ b/spring-boot-deployment/src/main/resources/application.properties @@ -1 +1,7 @@ -spring.main.allow-bean-definition-overriding=true \ No newline at end of file +management.endpoints.web.exposure.include=* +management.metrics.enable.root=true +management.metrics.enable.jvm=true +management.endpoint.restart.enabled=true +spring.datasource.jmx-enabled=false +spring.main.allow-bean-definition-overriding=true +management.endpoint.shutdown.enabled=true \ No newline at end of file diff --git a/spring-boot-environment/README.md b/spring-boot-environment/README.md index 57cf8b2461..e916c503bc 100644 --- a/spring-boot-environment/README.md +++ b/spring-boot-environment/README.md @@ -1,2 +1,7 @@ +## Spring Boot Environment + +This module contains articles about configuring the Spring Boot `Environment` + ### Relevant Articles: - [EnvironmentPostProcessor in Spring Boot](https://www.baeldung.com/spring-boot-environmentpostprocessor) + - [Spring Properties File Outside jar](https://www.baeldung.com/spring-properties-file-outside-jar) \ No newline at end of file diff --git a/spring-boot-environment/pom.xml b/spring-boot-environment/pom.xml index a957dcde1b..4e4a363fee 100644 --- a/spring-boot-environment/pom.xml +++ b/spring-boot-environment/pom.xml @@ -90,14 +90,14 @@ ${project.artifactId} - - src/main/resources - true - - **/conf.properties - - - + + src/main/resources + true + + **/conf.properties + + + diff --git a/spring-boot-artifacts/src/main/java/com/baeldung/properties/ConfProperties.java b/spring-boot-environment/src/main/java/com/baeldung/properties/ConfProperties.java similarity index 100% rename from spring-boot-artifacts/src/main/java/com/baeldung/properties/ConfProperties.java rename to spring-boot-environment/src/main/java/com/baeldung/properties/ConfProperties.java diff --git a/spring-boot-artifacts/src/main/java/com/baeldung/properties/ExternalPropertyConfigurer.java b/spring-boot-environment/src/main/java/com/baeldung/properties/ExternalPropertyConfigurer.java similarity index 100% rename from spring-boot-artifacts/src/main/java/com/baeldung/properties/ExternalPropertyConfigurer.java rename to spring-boot-environment/src/main/java/com/baeldung/properties/ExternalPropertyConfigurer.java diff --git a/spring-boot-artifacts/src/main/java/com/baeldung/properties/ExternalPropertyFileLoader.java b/spring-boot-environment/src/main/java/com/baeldung/properties/ExternalPropertyFileLoader.java similarity index 100% rename from spring-boot-artifacts/src/main/java/com/baeldung/properties/ExternalPropertyFileLoader.java rename to spring-boot-environment/src/main/java/com/baeldung/properties/ExternalPropertyFileLoader.java diff --git a/spring-boot-artifacts/src/main/resources/external/conf.properties b/spring-boot-environment/src/main/resources/external/conf.properties similarity index 100% rename from spring-boot-artifacts/src/main/resources/external/conf.properties rename to spring-boot-environment/src/main/resources/external/conf.properties diff --git a/spring-boot-artifacts/src/test/java/com/baeldung/properties/ExternalPropertyFileLoaderIntegrationTest.java b/spring-boot-environment/src/test/java/com/baeldung/properties/ExternalPropertyFileLoaderIntegrationTest.java similarity index 100% rename from spring-boot-artifacts/src/test/java/com/baeldung/properties/ExternalPropertyFileLoaderIntegrationTest.java rename to spring-boot-environment/src/test/java/com/baeldung/properties/ExternalPropertyFileLoaderIntegrationTest.java diff --git a/spring-boot-runtime/README.md b/spring-boot-runtime/README.md index f9ca12c605..d3dc19493d 100644 --- a/spring-boot-runtime/README.md +++ b/spring-boot-runtime/README.md @@ -1,6 +1,10 @@ +## Spring Boot Runtime + +This module contains articles about administering a Spring Boot runtime + ### Relevant Articles: - [Shutdown a Spring Boot Application](https://www.baeldung.com/spring-boot-shutdown) - - [Comparing Embedded Servlet Containers in Spring Boot](https://www.baeldung.com/spring-boot-servlet-containers) - [Programmatically Restarting a Spring Boot Application](https://www.baeldung.com/java-restart-spring-boot-app) - [Logging HTTP Requests with Spring Boot Actuator HTTP Tracing](https://www.baeldung.com/spring-boot-actuator-http) - - [How to Disable Console Logging in Spring Boot](https://www.baeldung.com/spring-boot-disable-console-logging) \ No newline at end of file + - [How to Disable Console Logging in Spring Boot](https://www.baeldung.com/spring-boot-disable-console-logging) + - [Spring Boot Embedded Tomcat Logs](https://www.baeldung.com/spring-boot-embedded-tomcat-logs) \ No newline at end of file diff --git a/spring-boot-runtime/pom.xml b/spring-boot-runtime/pom.xml index eab8ca3cc2..dca9b47410 100644 --- a/spring-boot-runtime/pom.xml +++ b/spring-boot-runtime/pom.xml @@ -100,14 +100,14 @@ ${project.artifactId} - - src/main/resources - true - - **/conf.properties - - - + + src/main/resources + true + + **/conf.properties + + + diff --git a/spring-boot-deployment/src/main/resources/application-tomcat.properties b/spring-boot-runtime/src/main/resources/application-tomcat.properties similarity index 100% rename from spring-boot-deployment/src/main/resources/application-tomcat.properties rename to spring-boot-runtime/src/main/resources/application-tomcat.properties From b927b33465523259daf3ab38f7dec45cffb70186 Mon Sep 17 00:00:00 2001 From: amit2103 Date: Sun, 6 Oct 2019 12:30:15 +0530 Subject: [PATCH 32/59] [BAEL-17473] - Formatted spring-mvc-simple-2 pom.xml --- spring-mvc-simple-2/pom.xml | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/spring-mvc-simple-2/pom.xml b/spring-mvc-simple-2/pom.xml index 3ae577cb03..7faa832552 100644 --- a/spring-mvc-simple-2/pom.xml +++ b/spring-mvc-simple-2/pom.xml @@ -20,7 +20,7 @@ org.springframework.boot spring-boot-starter-web - + org.springframework.boot spring-boot-starter-test @@ -89,14 +89,14 @@ ${project.artifactId} - - src/main/resources - true - - **/conf.properties - - - + + src/main/resources + true + + **/conf.properties + + + From 1d611db82b2db3d512166812e879d5336e9a9388 Mon Sep 17 00:00:00 2001 From: Alessio Stalla Date: Sun, 6 Oct 2019 10:43:46 +0200 Subject: [PATCH 33/59] #BAEL-17525 add README descriptions --- maven-all/versions-maven-plugin/README.md | 2 +- metrics/README.md | 6 +++++- micronaut/README.md | 4 ++++ microprofile/README.md | 4 ++++ ml/README.md | 5 +++-- msf4j/README.md | 4 ++++ muleesb/README.md | 4 ++++ mustache/README.md | 4 ++++ mybatis/README.md | 4 ++++ optaplanner/README.md | 4 ++++ orika/README.md | 4 ++++ 11 files changed, 41 insertions(+), 4 deletions(-) diff --git a/maven-all/versions-maven-plugin/README.md b/maven-all/versions-maven-plugin/README.md index 8f5670f802..1423fe1131 100644 --- a/maven-all/versions-maven-plugin/README.md +++ b/maven-all/versions-maven-plugin/README.md @@ -1,3 +1,3 @@ ### Relevant Articles -- [Use the Latest Version of a Dependency in Maven](https://www.baeldung.com/maven-dependency-latest-version) \ No newline at end of file +- [Use the Latest Version of a Dependency in Maven](https://www.baeldung.com/maven-dependency-latest-version) diff --git a/metrics/README.md b/metrics/README.md index d344a2707f..f27f5fb795 100644 --- a/metrics/README.md +++ b/metrics/README.md @@ -1,4 +1,8 @@ -## Relevant articles: +## Metrics + +This module contains articles about metrics. + +### Relevant articles: - [Intro to Dropwizard Metrics](https://www.baeldung.com/dropwizard-metrics) - [Introduction to Netflix Servo](https://www.baeldung.com/netflix-servo) diff --git a/micronaut/README.md b/micronaut/README.md index 0a39cf9e33..86ed705a9f 100644 --- a/micronaut/README.md +++ b/micronaut/README.md @@ -1,2 +1,6 @@ +## Micronaut + +This module contains articles about Micronaut. + ### Relevant Articles: - [Introduction to Micronaut Framework](https://www.baeldung.com/micronaut) diff --git a/microprofile/README.md b/microprofile/README.md index 7525ee5bff..faa1e59af0 100644 --- a/microprofile/README.md +++ b/microprofile/README.md @@ -1,3 +1,7 @@ +## Eclipse MicroProfile + +This module contains articles about Eclipse MicroProfile. + ### Relevant articles: - [Building Microservices with Eclipse MicroProfile](https://www.baeldung.com/eclipse-microprofile) diff --git a/ml/README.md b/ml/README.md index 1362f2840c..5fd32012b4 100644 --- a/ml/README.md +++ b/ml/README.md @@ -1,5 +1,6 @@ -### Logistic Regression in Java -This is a soft introduction to ML using [deeplearning4j](https://deeplearning4j.org) library +## Machine Learning + +This module contains articles about Machine Learning (ML) in Java with [deeplearning4j](https://deeplearning4j.org). ### Relevant Articles: - [Logistic Regression in Java](https://www.baeldung.com/) diff --git a/msf4j/README.md b/msf4j/README.md index b7f2c5a546..7655addbc5 100644 --- a/msf4j/README.md +++ b/msf4j/README.md @@ -1,3 +1,7 @@ +## MSF4J + +This module contains articles about MSF4J. + ### Relevant Articles: - [Introduction to Java Microservices with MSF4J](https://www.baeldung.com/msf4j) diff --git a/muleesb/README.md b/muleesb/README.md index 555a10b5cc..8e45d8bc53 100644 --- a/muleesb/README.md +++ b/muleesb/README.md @@ -1,3 +1,7 @@ +## Mule ESB + +This module contains articles about the Mule Enterprise Service Bus (ESB). + ### Relevant Articles: - [Getting Started With Mule ESB](https://www.baeldung.com/mule-esb) diff --git a/mustache/README.md b/mustache/README.md index c36080b56f..e0fd642fda 100644 --- a/mustache/README.md +++ b/mustache/README.md @@ -1,3 +1,7 @@ +## Mustache + +This module contains articles about Mustache. + ### Relevant Articles: - [Introduction to Mustache](https://www.baeldung.com/mustache) - [Guide to Mustache with Spring Boot](https://www.baeldung.com/spring-boot-mustache) diff --git a/mybatis/README.md b/mybatis/README.md index 57687d3da1..2c3a9085e4 100644 --- a/mybatis/README.md +++ b/mybatis/README.md @@ -1,2 +1,6 @@ +## MyBatis + +This module contains articles about MyBatis. + ### Relevant Articles: - [Quick Guide to MyBatis](https://www.baeldung.com/mybatis) diff --git a/optaplanner/README.md b/optaplanner/README.md index 1568a615c0..b7a2dbe14b 100644 --- a/optaplanner/README.md +++ b/optaplanner/README.md @@ -1,3 +1,7 @@ +## OptaPlanner + +This module contains articles about OptaPlanner. + ### Relevant articles - [A Guide to OptaPlanner](https://www.baeldung.com/opta-planner) diff --git a/orika/README.md b/orika/README.md index 0096793507..094a60aa51 100644 --- a/orika/README.md +++ b/orika/README.md @@ -1,2 +1,6 @@ +## Orika + +This module contains articles about Orika. + ### Relevant Articles: - [Mapping with Orika](https://www.baeldung.com/orika-mapping) From 750aab063e2c2da5d6f9cfdb110a24ed9c1b38e3 Mon Sep 17 00:00:00 2001 From: Afshin Date: Sun, 6 Oct 2019 11:07:21 +0200 Subject: [PATCH 34/59] indentations are adjusted --- .../CharacterEncodingExamplesUnitTest.java | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/core-java-modules/core-java/src/test/java/com/baeldung/encoding/CharacterEncodingExamplesUnitTest.java b/core-java-modules/core-java/src/test/java/com/baeldung/encoding/CharacterEncodingExamplesUnitTest.java index d87eafcee9..a8cee6881d 100644 --- a/core-java-modules/core-java/src/test/java/com/baeldung/encoding/CharacterEncodingExamplesUnitTest.java +++ b/core-java-modules/core-java/src/test/java/com/baeldung/encoding/CharacterEncodingExamplesUnitTest.java @@ -76,37 +76,37 @@ public class CharacterEncodingExamplesUnitTest { @Test public void givenUTF8String_decodeByUS_ASCII_ReplaceMalformedInputSequence() throws IOException { String input = "The façade pattern is a software design pattern."; - Assertions.assertEquals(CharacterEncodingExamples.decodeText(input, StandardCharsets.US_ASCII, CodingErrorAction.REPLACE), - "The fa��ade pattern is a software design pattern."); + Assertions.assertEquals("The fa��ade pattern is a software design pattern.", + CharacterEncodingExamples.decodeText(input, StandardCharsets.US_ASCII, CodingErrorAction.REPLACE)); } @Test public void givenUTF8String_decodeByUS_ASCII_IgnoreMalformedInputSequence() throws IOException { String input = "The façade pattern is a software design pattern."; Assertions.assertEquals( - CharacterEncodingExamples.decodeText(input, StandardCharsets.US_ASCII, CodingErrorAction.IGNORE), - "The faade pattern is a software design pattern."); + "The faade pattern is a software design pattern.", + CharacterEncodingExamples.decodeText(input, StandardCharsets.US_ASCII, CodingErrorAction.IGNORE)); } @Test public void givenUTF8String_decodeByUS_ASCII_ReportMalformedInputSequence() { String input = "The façade pattern is a software design pattern."; Assertions.assertThrows(MalformedInputException.class, - () -> CharacterEncodingExamples.decodeText(input, StandardCharsets.US_ASCII, CodingErrorAction.REPORT)); + () -> CharacterEncodingExamples.decodeText(input, StandardCharsets.US_ASCII, CodingErrorAction.REPORT)); } @Test public void givenTextFile_FindSuitableCandidateEncodings() { Path path = Paths.get("src/test/resources/encoding.txt"); - List allCandidateCharSets = Arrays.asList(StandardCharsets.US_ASCII, StandardCharsets.UTF_8, StandardCharsets.ISO_8859_1); + List allCandidateCharSets = Arrays.asList( + StandardCharsets.US_ASCII, StandardCharsets.UTF_8, StandardCharsets.ISO_8859_1); List suitableCharsets = new ArrayList<>(); allCandidateCharSets.forEach(charset -> { try { CharsetDecoder charsetDecoder = charset.newDecoder().onMalformedInput(CodingErrorAction.REPORT); Reader reader = new InputStreamReader(Files.newInputStream(path), charsetDecoder); BufferedReader bufferedReader = new BufferedReader(reader); - while (bufferedReader.readLine() != null) { - } + bufferedReader.readLine(); suitableCharsets.add(charset); } catch (MalformedInputException ignored) { } catch (IOException ex) { From da1ac659fb1ae9c982fe3226a0906c5bdfb06a10 Mon Sep 17 00:00:00 2001 From: Afshin Date: Sun, 6 Oct 2019 11:22:18 +0200 Subject: [PATCH 35/59] decodeText implementation is reformatted --- .../com/baeldung/encoding/CharacterEncodingExamples.java | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/core-java-modules/core-java/src/main/java/com/baeldung/encoding/CharacterEncodingExamples.java b/core-java-modules/core-java/src/main/java/com/baeldung/encoding/CharacterEncodingExamples.java index c1898a6723..1ed5f9e62a 100644 --- a/core-java-modules/core-java/src/main/java/com/baeldung/encoding/CharacterEncodingExamples.java +++ b/core-java-modules/core-java/src/main/java/com/baeldung/encoding/CharacterEncodingExamples.java @@ -39,10 +39,7 @@ public class CharacterEncodingExamples { CharsetDecoder charsetDecoder = charset.newDecoder(); charsetDecoder.onMalformedInput(codingErrorAction); return new BufferedReader( - new InputStreamReader( - new ByteArrayInputStream(input.getBytes()), - charsetDecoder)) - .readLine(); - + new InputStreamReader( + new ByteArrayInputStream(input.getBytes()), charsetDecoder)).readLine(); } } From 09195b50c6b4899d478989b209b6f58944c7ed4a Mon Sep 17 00:00:00 2001 From: Sjmillington Date: Sun, 6 Oct 2019 11:28:39 +0100 Subject: [PATCH 36/59] added fullstop to end of spring security thymeleaf description --- spring-security-thymeleaf/README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/spring-security-thymeleaf/README.md b/spring-security-thymeleaf/README.md index 2ad7b9d2bd..e0fca4067c 100644 --- a/spring-security-thymeleaf/README.md +++ b/spring-security-thymeleaf/README.md @@ -1,7 +1,7 @@ ## Spring Security Thymeleaf -This module contains articles about Spring Security with Thymeleaf +This module contains articles about Spring Security with Thymeleaf. ### Relevant Articles: -- [Spring Security with Thymeleaf](https://www.baeldung.com/spring-security-thymeleaf) +- [Spring Security with Thymeleaf](https://www.baeldung.com/spring-security-thymeleaf) \ No newline at end of file From 6e8084b36c5e83dcffc90b6e9d2f4fc1ac473a5c Mon Sep 17 00:00:00 2001 From: Sjmillington Date: Sun, 6 Oct 2019 11:30:15 +0100 Subject: [PATCH 37/59] Renamed README.md to README.MD --- jgit/src/main/java/com/baeldung/jgit/porcelain/Log.java | 4 ++-- spring-security-thymeleaf/{README.md => README.MD} | 0 2 files changed, 2 insertions(+), 2 deletions(-) rename spring-security-thymeleaf/{README.md => README.MD} (100%) diff --git a/jgit/src/main/java/com/baeldung/jgit/porcelain/Log.java b/jgit/src/main/java/com/baeldung/jgit/porcelain/Log.java index a50028a9ae..7b2fe3a0f2 100644 --- a/jgit/src/main/java/com/baeldung/jgit/porcelain/Log.java +++ b/jgit/src/main/java/com/baeldung/jgit/porcelain/Log.java @@ -49,14 +49,14 @@ public class Log { logs = git.log() // for all log.all() - .addPath("README.md") + .addPath("README.MD") .call(); count = 0; for (RevCommit rev : logs) { //System.out.println("Commit: " + rev /* + ", name: " + rev.getName() + ", id: " + rev.getId().getName() */); count++; } - System.out.println("Had " + count + " commits on README.md"); + System.out.println("Had " + count + " commits on README.MD"); logs = git.log() // for all log.all() diff --git a/spring-security-thymeleaf/README.md b/spring-security-thymeleaf/README.MD similarity index 100% rename from spring-security-thymeleaf/README.md rename to spring-security-thymeleaf/README.MD From 322ca0d57896e30d07d234a8559a58959420f3d1 Mon Sep 17 00:00:00 2001 From: Maciej Andrearczyk Date: Sun, 6 Oct 2019 16:59:40 +0200 Subject: [PATCH 38/59] BAEL-3285 | Removed block() calls --- .../reactive/webclient/simultaneous/Client.java | 15 ++++++--------- .../simultaneous/ClientIntegrationTest.java | 4 +++- 2 files changed, 9 insertions(+), 10 deletions(-) diff --git a/spring-5-reactive-client/src/main/java/com/baeldung/reactive/webclient/simultaneous/Client.java b/spring-5-reactive-client/src/main/java/com/baeldung/reactive/webclient/simultaneous/Client.java index 9afe50af58..bbfc88322b 100644 --- a/spring-5-reactive-client/src/main/java/com/baeldung/reactive/webclient/simultaneous/Client.java +++ b/spring-5-reactive-client/src/main/java/com/baeldung/reactive/webclient/simultaneous/Client.java @@ -41,28 +41,25 @@ public class Client { .bodyToMono(User.class); } - public List fetchUsers(List userIds) { + public Flux fetchUsers(List userIds) { return Flux.fromIterable(userIds) .parallel() .runOn(Schedulers.elastic()) .flatMap(this::getUser) - .collectSortedList((u1, u2) -> u2.id() - u1.id()) - .block(); + .ordered((u1, u2) -> u2.id() - u1.id()); } - public List fetchUserAndOtherUser(int id) { + public Flux fetchUserAndOtherUser(int id) { return Flux.merge(getUser(id), getOtherUser(id)) .parallel() .runOn(Schedulers.elastic()) - .collectSortedList((u1, u2) -> u2.id() - u1.id()) - .block(); + .ordered((u1, u2) -> u2.id() - u1.id()); } - public UserWithItem fetchUserAndItem(int userId, int itemId) { + public Mono fetchUserAndItem(int userId, int itemId) { Mono user = getUser(userId).subscribeOn(Schedulers.elastic()); Mono item = getItem(itemId).subscribeOn(Schedulers.elastic()); - return Mono.zip(user, item, UserWithItem::new) - .block(); + return Mono.zip(user, item, UserWithItem::new); } } diff --git a/spring-5-reactive-client/src/test/java/com/baeldung/reactive/webclient/simultaneous/ClientIntegrationTest.java b/spring-5-reactive-client/src/test/java/com/baeldung/reactive/webclient/simultaneous/ClientIntegrationTest.java index 0acedf15b0..d74a64d9c9 100644 --- a/spring-5-reactive-client/src/test/java/com/baeldung/reactive/webclient/simultaneous/ClientIntegrationTest.java +++ b/spring-5-reactive-client/src/test/java/com/baeldung/reactive/webclient/simultaneous/ClientIntegrationTest.java @@ -56,7 +56,9 @@ public class ClientIntegrationTest { // Act long start = System.currentTimeMillis(); - List users = client.fetchUsers(userIds); + List users = client.fetchUsers(userIds) + .collectList() + .block(); long end = System.currentTimeMillis(); // Assert From 3e56a168b195f5ef7aaf363f432e52b5aede8130 Mon Sep 17 00:00:00 2001 From: fejera Date: Mon, 7 Oct 2019 08:33:59 +0200 Subject: [PATCH 39/59] removed links from README in core-java-concurrency-advanced-3 --- .../README.md | 20 ------------------- 1 file changed, 20 deletions(-) diff --git a/core-java-modules/core-java-concurrency-advanced-3/README.md b/core-java-modules/core-java-concurrency-advanced-3/README.md index 6222af8a82..857a3e253c 100644 --- a/core-java-modules/core-java-concurrency-advanced-3/README.md +++ b/core-java-modules/core-java-concurrency-advanced-3/README.md @@ -3,24 +3,4 @@ ## Core Java Concurrency Advanced Examples ### Relevant Articles: -- [Introduction to Thread Pools in Java](https://www.baeldung.com/thread-pool-java-and-guava) -- [Guide to CountDownLatch in Java](https://www.baeldung.com/java-countdown-latch) -- [Guide to java.util.concurrent.Locks](https://www.baeldung.com/java-concurrent-locks) -- [An Introduction to ThreadLocal in Java](https://www.baeldung.com/java-threadlocal) -- [LongAdder and LongAccumulator in Java](https://www.baeldung.com/java-longadder-and-longaccumulator) -- [The Dining Philosophers Problem in Java](https://www.baeldung.com/java-dining-philoshophers) -- [Guide to the Java Phaser](https://www.baeldung.com/java-phaser) -- [An Introduction to Atomic Variables in Java](https://www.baeldung.com/java-atomic-variables) -- [CyclicBarrier in Java](https://www.baeldung.com/java-cyclic-barrier) -- [Guide to the Volatile Keyword in Java](https://www.baeldung.com/java-volatile) -- [Semaphores in Java](https://www.baeldung.com/java-semaphore) -- [Daemon Threads in Java](https://www.baeldung.com/java-daemon-thread) -- [Priority-based Job Scheduling in Java](https://www.baeldung.com/java-priority-job-schedule) -- [Brief Introduction to Java Thread.yield()](https://www.baeldung.com/java-thread-yield) -- [Print Even and Odd Numbers Using 2 Threads](https://www.baeldung.com/java-even-odd-numbers-with-2-threads) -- [Java CyclicBarrier vs CountDownLatch](https://www.baeldung.com/java-cyclicbarrier-countdownlatch) -- [Guide to the Fork/Join Framework in Java](https://www.baeldung.com/java-fork-join) -- [Guide to ThreadLocalRandom in Java](https://www.baeldung.com/java-thread-local-random) -- [The Thread.join() Method in Java](https://www.baeldung.com/java-thread-join) -- [Passing Parameters to Java Threads](https://www.baeldung.com/java-thread-parameters) From dad6373190da697d8f571b515249c86454e6b94d Mon Sep 17 00:00:00 2001 From: fejera Date: Mon, 7 Oct 2019 08:36:35 +0200 Subject: [PATCH 40/59] added description to READMEs in core-java-concurrency-advanced* modules --- core-java-modules/core-java-concurrency-advanced-2/README.md | 2 ++ core-java-modules/core-java-concurrency-advanced-3/README.md | 2 ++ core-java-modules/core-java-concurrency-advanced/README.md | 2 ++ 3 files changed, 6 insertions(+) diff --git a/core-java-modules/core-java-concurrency-advanced-2/README.md b/core-java-modules/core-java-concurrency-advanced-2/README.md index 8db1b89468..cdd8f86b60 100644 --- a/core-java-modules/core-java-concurrency-advanced-2/README.md +++ b/core-java-modules/core-java-concurrency-advanced-2/README.md @@ -2,6 +2,8 @@ ## Core Java Concurrency Advanced Examples +This module contains articles about advanced topics about multithreading with core Java. + ### Relevant Articles: - [Semaphores in Java](https://www.baeldung.com/java-semaphore) - [Daemon Threads in Java](https://www.baeldung.com/java-daemon-thread) diff --git a/core-java-modules/core-java-concurrency-advanced-3/README.md b/core-java-modules/core-java-concurrency-advanced-3/README.md index 857a3e253c..37d9099b0f 100644 --- a/core-java-modules/core-java-concurrency-advanced-3/README.md +++ b/core-java-modules/core-java-concurrency-advanced-3/README.md @@ -2,5 +2,7 @@ ## Core Java Concurrency Advanced Examples +This module contains articles about advanced topics about multithreading with core Java. + ### Relevant Articles: diff --git a/core-java-modules/core-java-concurrency-advanced/README.md b/core-java-modules/core-java-concurrency-advanced/README.md index 5c4a9889e2..37b11847a6 100644 --- a/core-java-modules/core-java-concurrency-advanced/README.md +++ b/core-java-modules/core-java-concurrency-advanced/README.md @@ -2,6 +2,8 @@ ## Core Java Concurrency Advanced Examples +This module contains articles about advanced topics about multithreading with core Java. + ### Relevant Articles: - [Introduction to Thread Pools in Java](https://www.baeldung.com/thread-pool-java-and-guava) - [Guide to CountDownLatch in Java](https://www.baeldung.com/java-countdown-latch) From 7d7b58b1cb1e96b3be28a0bf223d1dda0c51c5cb Mon Sep 17 00:00:00 2001 From: fejera Date: Mon, 7 Oct 2019 08:40:03 +0200 Subject: [PATCH 41/59] added more and previous links to READMEs in core-java-concurrency-advanced* modules --- core-java-modules/core-java-concurrency-advanced-2/README.md | 2 ++ core-java-modules/core-java-concurrency-advanced-3/README.md | 1 + core-java-modules/core-java-concurrency-advanced/README.md | 2 ++ 3 files changed, 5 insertions(+) diff --git a/core-java-modules/core-java-concurrency-advanced-2/README.md b/core-java-modules/core-java-concurrency-advanced-2/README.md index cdd8f86b60..988ada9e4a 100644 --- a/core-java-modules/core-java-concurrency-advanced-2/README.md +++ b/core-java-modules/core-java-concurrency-advanced-2/README.md @@ -15,3 +15,5 @@ This module contains articles about advanced topics about multithreading with co - [Guide to ThreadLocalRandom in Java](https://www.baeldung.com/java-thread-local-random) - [The Thread.join() Method in Java](https://www.baeldung.com/java-thread-join) - [Passing Parameters to Java Threads](https://www.baeldung.com/java-thread-parameters) + +[[<-- previous]](/core-java-modules/core-java-concurrency-advanced)[[next -->]](/core-java-modules/core-java-concurrency-advanced-3) diff --git a/core-java-modules/core-java-concurrency-advanced-3/README.md b/core-java-modules/core-java-concurrency-advanced-3/README.md index 37d9099b0f..d1622b5fe1 100644 --- a/core-java-modules/core-java-concurrency-advanced-3/README.md +++ b/core-java-modules/core-java-concurrency-advanced-3/README.md @@ -6,3 +6,4 @@ This module contains articles about advanced topics about multithreading with co ### Relevant Articles: +[[<-- previous]](/core-java-modules/core-java-concurrency-advanced-2) diff --git a/core-java-modules/core-java-concurrency-advanced/README.md b/core-java-modules/core-java-concurrency-advanced/README.md index 37b11847a6..bc970c823e 100644 --- a/core-java-modules/core-java-concurrency-advanced/README.md +++ b/core-java-modules/core-java-concurrency-advanced/README.md @@ -15,3 +15,5 @@ This module contains articles about advanced topics about multithreading with co - [An Introduction to Atomic Variables in Java](https://www.baeldung.com/java-atomic-variables) - [CyclicBarrier in Java](https://www.baeldung.com/java-cyclic-barrier) - [Guide to the Volatile Keyword in Java](https://www.baeldung.com/java-volatile) + +[[next -->]](/core-java-modules/core-java-concurrency-advanced-2) From cf1a2505ee99c32760a917c492d31dec70da8a79 Mon Sep 17 00:00:00 2001 From: fejera Date: Mon, 7 Oct 2019 08:42:37 +0200 Subject: [PATCH 42/59] removed .gitignore files from core-java-concurrency-advanced* modules --- .../.gitignore | 26 ------------------- .../.gitignore | 26 ------------------- .../core-java-concurrency-advanced/.gitignore | 26 ------------------- 3 files changed, 78 deletions(-) delete mode 100644 core-java-modules/core-java-concurrency-advanced-2/.gitignore delete mode 100644 core-java-modules/core-java-concurrency-advanced-3/.gitignore delete mode 100644 core-java-modules/core-java-concurrency-advanced/.gitignore diff --git a/core-java-modules/core-java-concurrency-advanced-2/.gitignore b/core-java-modules/core-java-concurrency-advanced-2/.gitignore deleted file mode 100644 index 3de4cc647e..0000000000 --- a/core-java-modules/core-java-concurrency-advanced-2/.gitignore +++ /dev/null @@ -1,26 +0,0 @@ -*.class - -0.* - -#folders# -/target -/neoDb* -/data -/src/main/webapp/WEB-INF/classes -*/META-INF/* -.resourceCache - -# Packaged files # -*.jar -*.war -*.ear - -# Files generated by integration tests -*.txt -backup-pom.xml -/bin/ -/temp - -#IntelliJ specific -.idea/ -*.iml \ No newline at end of file diff --git a/core-java-modules/core-java-concurrency-advanced-3/.gitignore b/core-java-modules/core-java-concurrency-advanced-3/.gitignore deleted file mode 100644 index 3de4cc647e..0000000000 --- a/core-java-modules/core-java-concurrency-advanced-3/.gitignore +++ /dev/null @@ -1,26 +0,0 @@ -*.class - -0.* - -#folders# -/target -/neoDb* -/data -/src/main/webapp/WEB-INF/classes -*/META-INF/* -.resourceCache - -# Packaged files # -*.jar -*.war -*.ear - -# Files generated by integration tests -*.txt -backup-pom.xml -/bin/ -/temp - -#IntelliJ specific -.idea/ -*.iml \ No newline at end of file diff --git a/core-java-modules/core-java-concurrency-advanced/.gitignore b/core-java-modules/core-java-concurrency-advanced/.gitignore deleted file mode 100644 index 3de4cc647e..0000000000 --- a/core-java-modules/core-java-concurrency-advanced/.gitignore +++ /dev/null @@ -1,26 +0,0 @@ -*.class - -0.* - -#folders# -/target -/neoDb* -/data -/src/main/webapp/WEB-INF/classes -*/META-INF/* -.resourceCache - -# Packaged files # -*.jar -*.war -*.ear - -# Files generated by integration tests -*.txt -backup-pom.xml -/bin/ -/temp - -#IntelliJ specific -.idea/ -*.iml \ No newline at end of file From 78cb7a3a3fe59c25d491d6abc5965f77d1981ad4 Mon Sep 17 00:00:00 2001 From: Afshin Date: Mon, 7 Oct 2019 11:52:22 +0200 Subject: [PATCH 43/59] Enhanced: given_when_then pattern naming and formatting problems are resolved --- .../CharacterEncodingExamplesUnitTest.java | 30 +++++++++---------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/core-java-modules/core-java/src/test/java/com/baeldung/encoding/CharacterEncodingExamplesUnitTest.java b/core-java-modules/core-java/src/test/java/com/baeldung/encoding/CharacterEncodingExamplesUnitTest.java index a8cee6881d..821c434117 100644 --- a/core-java-modules/core-java/src/test/java/com/baeldung/encoding/CharacterEncodingExamplesUnitTest.java +++ b/core-java-modules/core-java/src/test/java/com/baeldung/encoding/CharacterEncodingExamplesUnitTest.java @@ -74,29 +74,28 @@ public class CharacterEncodingExamplesUnitTest { } @Test - public void givenUTF8String_decodeByUS_ASCII_ReplaceMalformedInputSequence() throws IOException { - String input = "The façade pattern is a software design pattern."; + public void givenUTF8String_whenDecodeByUS_ASCII_thenIgnoreMalformedInputSequence() throws IOException { + Assertions.assertEquals("The faade pattern is a software design pattern.", + CharacterEncodingExamples.decodeText( + "The façade pattern is a software design pattern.", StandardCharsets.US_ASCII, CodingErrorAction.IGNORE)); + } + + @Test + public void givenUTF8String_whenDecodeByUS_ASCII_thenReplaceMalformedInputSequence() throws IOException { Assertions.assertEquals("The fa��ade pattern is a software design pattern.", - CharacterEncodingExamples.decodeText(input, StandardCharsets.US_ASCII, CodingErrorAction.REPLACE)); + CharacterEncodingExamples.decodeText( + "The façade pattern is a software design pattern.", StandardCharsets.US_ASCII, CodingErrorAction.REPLACE)); } @Test - public void givenUTF8String_decodeByUS_ASCII_IgnoreMalformedInputSequence() throws IOException { - String input = "The façade pattern is a software design pattern."; - Assertions.assertEquals( - "The faade pattern is a software design pattern.", - CharacterEncodingExamples.decodeText(input, StandardCharsets.US_ASCII, CodingErrorAction.IGNORE)); - } - - @Test - public void givenUTF8String_decodeByUS_ASCII_ReportMalformedInputSequence() { - String input = "The façade pattern is a software design pattern."; + public void givenUTF8String_whenDecodeByUS_ASCII_thenReportMalformedInputSequence() { Assertions.assertThrows(MalformedInputException.class, - () -> CharacterEncodingExamples.decodeText(input, StandardCharsets.US_ASCII, CodingErrorAction.REPORT)); + () -> CharacterEncodingExamples.decodeText( + "The façade pattern is a software design pattern.", StandardCharsets.US_ASCII, CodingErrorAction.REPORT)); } @Test - public void givenTextFile_FindSuitableCandidateEncodings() { + public void givenTextFile_whenFindSuitableCandidateEncodings_thenProduceSuitableCandidateEncodings() { Path path = Paths.get("src/test/resources/encoding.txt"); List allCandidateCharSets = Arrays.asList( StandardCharsets.US_ASCII, StandardCharsets.UTF_8, StandardCharsets.ISO_8859_1); @@ -113,6 +112,7 @@ public class CharacterEncodingExamplesUnitTest { ex.printStackTrace(); } }); + Assertions.assertEquals(suitableCharsets, Arrays.asList(StandardCharsets.UTF_8, StandardCharsets.ISO_8859_1)); } From 7a9738b4bb1870bf3445c91e5810fbc3093251ba Mon Sep 17 00:00:00 2001 From: Afshin Date: Mon, 7 Oct 2019 12:20:54 +0200 Subject: [PATCH 44/59] Enhanced: reformatted code to synchronized it with the article --- .../CharacterEncodingExamplesUnitTest.java | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/core-java-modules/core-java/src/test/java/com/baeldung/encoding/CharacterEncodingExamplesUnitTest.java b/core-java-modules/core-java/src/test/java/com/baeldung/encoding/CharacterEncodingExamplesUnitTest.java index 821c434117..39152c6fb1 100644 --- a/core-java-modules/core-java/src/test/java/com/baeldung/encoding/CharacterEncodingExamplesUnitTest.java +++ b/core-java-modules/core-java/src/test/java/com/baeldung/encoding/CharacterEncodingExamplesUnitTest.java @@ -75,23 +75,27 @@ public class CharacterEncodingExamplesUnitTest { @Test public void givenUTF8String_whenDecodeByUS_ASCII_thenIgnoreMalformedInputSequence() throws IOException { - Assertions.assertEquals("The faade pattern is a software design pattern.", - CharacterEncodingExamples.decodeText( - "The façade pattern is a software design pattern.", StandardCharsets.US_ASCII, CodingErrorAction.IGNORE)); + Assertions.assertEquals("The faade pattern is a software design pattern.", CharacterEncodingExamples.decodeText("The façade pattern is a software design pattern.", StandardCharsets.US_ASCII, CodingErrorAction.IGNORE)); } @Test public void givenUTF8String_whenDecodeByUS_ASCII_thenReplaceMalformedInputSequence() throws IOException { - Assertions.assertEquals("The fa��ade pattern is a software design pattern.", + Assertions.assertEquals( + "The fa��ade pattern is a software design pattern.", CharacterEncodingExamples.decodeText( - "The façade pattern is a software design pattern.", StandardCharsets.US_ASCII, CodingErrorAction.REPLACE)); + "The façade pattern is a software design pattern.", + StandardCharsets.US_ASCII, + CodingErrorAction.REPLACE)); } @Test public void givenUTF8String_whenDecodeByUS_ASCII_thenReportMalformedInputSequence() { - Assertions.assertThrows(MalformedInputException.class, + Assertions.assertThrows( + MalformedInputException.class, () -> CharacterEncodingExamples.decodeText( - "The façade pattern is a software design pattern.", StandardCharsets.US_ASCII, CodingErrorAction.REPORT)); + "The façade pattern is a software design pattern.", + StandardCharsets.US_ASCII, + CodingErrorAction.REPORT)); } @Test @@ -99,6 +103,7 @@ public class CharacterEncodingExamplesUnitTest { Path path = Paths.get("src/test/resources/encoding.txt"); List allCandidateCharSets = Arrays.asList( StandardCharsets.US_ASCII, StandardCharsets.UTF_8, StandardCharsets.ISO_8859_1); + List suitableCharsets = new ArrayList<>(); allCandidateCharSets.forEach(charset -> { try { From 3997dcc8e20b27063890d43961abcc5c27df3a7e Mon Sep 17 00:00:00 2001 From: Afshin Date: Mon, 7 Oct 2019 12:22:05 +0200 Subject: [PATCH 45/59] Enhanced: renamed a function --- .../baeldung/encoding/CharacterEncodingExamplesUnitTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core-java-modules/core-java/src/test/java/com/baeldung/encoding/CharacterEncodingExamplesUnitTest.java b/core-java-modules/core-java/src/test/java/com/baeldung/encoding/CharacterEncodingExamplesUnitTest.java index 39152c6fb1..fe3867a3c3 100644 --- a/core-java-modules/core-java/src/test/java/com/baeldung/encoding/CharacterEncodingExamplesUnitTest.java +++ b/core-java-modules/core-java/src/test/java/com/baeldung/encoding/CharacterEncodingExamplesUnitTest.java @@ -99,7 +99,7 @@ public class CharacterEncodingExamplesUnitTest { } @Test - public void givenTextFile_whenFindSuitableCandidateEncodings_thenProduceSuitableCandidateEncodings() { + public void givenTextFile_whenLoopOverAllCandidateEncodings_thenProduceSuitableCandidateEncodings() { Path path = Paths.get("src/test/resources/encoding.txt"); List allCandidateCharSets = Arrays.asList( StandardCharsets.US_ASCII, StandardCharsets.UTF_8, StandardCharsets.ISO_8859_1); From 07fae6db143b5bcb889c3e4b6714d29d3beeaab2 Mon Sep 17 00:00:00 2001 From: Rui Vilao Date: Mon, 7 Oct 2019 18:20:12 +0200 Subject: [PATCH 46/59] Renames backoff-jitter to a broader name: design-pattern-cloud. --- .../{backoff-jitter => design-patterns-cloud}/README.md | 0 patterns/{backoff-jitter => design-patterns-cloud}/pom.xml | 6 +++--- .../com/baeldung/backoff/jitter/BackoffWithJitterTest.java | 0 patterns/pom.xml | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) rename patterns/{backoff-jitter => design-patterns-cloud}/README.md (100%) rename patterns/{backoff-jitter => design-patterns-cloud}/pom.xml (95%) rename patterns/{backoff-jitter => design-patterns-cloud}/src/test/java/com/baeldung/backoff/jitter/BackoffWithJitterTest.java (100%) diff --git a/patterns/backoff-jitter/README.md b/patterns/design-patterns-cloud/README.md similarity index 100% rename from patterns/backoff-jitter/README.md rename to patterns/design-patterns-cloud/README.md diff --git a/patterns/backoff-jitter/pom.xml b/patterns/design-patterns-cloud/pom.xml similarity index 95% rename from patterns/backoff-jitter/pom.xml rename to patterns/design-patterns-cloud/pom.xml index 739aa87873..b5265a1f94 100644 --- a/patterns/backoff-jitter/pom.xml +++ b/patterns/design-patterns-cloud/pom.xml @@ -4,10 +4,10 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 com.baeldung - backoff-jitter + design-patterns-cloud 1.0.0-SNAPSHOT pom - backoff-jitter + design-patterns-cloud @@ -52,4 +52,4 @@ 0.16.0 - \ No newline at end of file + diff --git a/patterns/backoff-jitter/src/test/java/com/baeldung/backoff/jitter/BackoffWithJitterTest.java b/patterns/design-patterns-cloud/src/test/java/com/baeldung/backoff/jitter/BackoffWithJitterTest.java similarity index 100% rename from patterns/backoff-jitter/src/test/java/com/baeldung/backoff/jitter/BackoffWithJitterTest.java rename to patterns/design-patterns-cloud/src/test/java/com/baeldung/backoff/jitter/BackoffWithJitterTest.java diff --git a/patterns/pom.xml b/patterns/pom.xml index 196c3c3319..331415bf5b 100644 --- a/patterns/pom.xml +++ b/patterns/pom.xml @@ -24,7 +24,7 @@ design-patterns-structural solid dip - backoff-jitter + design-patterns-cloud From f6e74736069431da9802b99a3260c40b88ac71d9 Mon Sep 17 00:00:00 2001 From: dupirefr Date: Mon, 2 Sep 2019 07:05:01 +0200 Subject: [PATCH 47/59] [BAEL-3128] Code for Breadth-First Search in Java Article * Added Tree and algorithm tests for trees * Implemented algorithm for trees * Added algorithm for graphs * Bidirectional graph * Minor updates * Readibility changes --- .../BreadthFirstSearchAlgorithm.java | 61 +++++++++++++ .../algorithms/breadthfirstsearch/Node.java | 31 +++++++ .../algorithms/breadthfirstsearch/Tree.java | 34 ++++++++ .../BreadthFirstSearchAlgorithmUnitTest.java | 85 +++++++++++++++++++ 4 files changed, 211 insertions(+) create mode 100644 algorithms-miscellaneous-3/src/main/java/com/baeldung/algorithms/breadthfirstsearch/BreadthFirstSearchAlgorithm.java create mode 100644 algorithms-miscellaneous-3/src/main/java/com/baeldung/algorithms/breadthfirstsearch/Node.java create mode 100644 algorithms-miscellaneous-3/src/main/java/com/baeldung/algorithms/breadthfirstsearch/Tree.java create mode 100644 algorithms-miscellaneous-3/src/test/java/com/baeldung/algorithms/breadthfirstsearch/BreadthFirstSearchAlgorithmUnitTest.java diff --git a/algorithms-miscellaneous-3/src/main/java/com/baeldung/algorithms/breadthfirstsearch/BreadthFirstSearchAlgorithm.java b/algorithms-miscellaneous-3/src/main/java/com/baeldung/algorithms/breadthfirstsearch/BreadthFirstSearchAlgorithm.java new file mode 100644 index 0000000000..4331b2fc94 --- /dev/null +++ b/algorithms-miscellaneous-3/src/main/java/com/baeldung/algorithms/breadthfirstsearch/BreadthFirstSearchAlgorithm.java @@ -0,0 +1,61 @@ +package com.baeldung.algorithms.breadthfirstsearch; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.util.*; + +public class BreadthFirstSearchAlgorithm { + + private static final Logger LOGGER = LoggerFactory.getLogger(BreadthFirstSearchAlgorithm.class); + + public static Optional> search(T value, Tree root) { + Queue> queue = new ArrayDeque<>(); + queue.add(root); + + return searchTreeQueue(value, queue); + } + + private static Optional> searchTreeQueue(T value, Queue> queue) { + Tree currentNode; + while (!queue.isEmpty()) { + currentNode = queue.remove(); + LOGGER.info("Visited node with value: {}", currentNode.getValue()); + + if (currentNode.getValue().equals(value)) { + return Optional.of(currentNode); + } else { + queue.addAll(currentNode.getChildren()); + } + } + + return Optional.empty(); + } + + public static Optional> search(T value, Node start) { + Queue> queue = new ArrayDeque<>(); + queue.add(start); + + return searchNodeQueue(value, queue); + } + + private static Optional> searchNodeQueue(T value, Queue> queue) { + Node currentNode; + Set> alreadyVisited = new HashSet<>(); + + while (!queue.isEmpty()) { + currentNode = queue.remove(); + LOGGER.info("Visited node with value: {}", currentNode.getValue()); + + if (currentNode.getValue().equals(value)) { + return Optional.of(currentNode); + } else { + alreadyVisited.add(currentNode); + queue.addAll(currentNode.getNeighbours()); + queue.removeAll(alreadyVisited); + } + } + + return Optional.empty(); + } +} diff --git a/algorithms-miscellaneous-3/src/main/java/com/baeldung/algorithms/breadthfirstsearch/Node.java b/algorithms-miscellaneous-3/src/main/java/com/baeldung/algorithms/breadthfirstsearch/Node.java new file mode 100644 index 0000000000..bfa879f0b7 --- /dev/null +++ b/algorithms-miscellaneous-3/src/main/java/com/baeldung/algorithms/breadthfirstsearch/Node.java @@ -0,0 +1,31 @@ +package com.baeldung.algorithms.breadthfirstsearch; + +import java.util.Collections; +import java.util.HashSet; +import java.util.Set; + +public class Node { + + private T value; + private Set> neighbours; + + public Node(T value) { + this.value = value; + this.neighbours = new HashSet<>(); + } + + public T getValue() { + return value; + } + + public Set> getNeighbours() { + return Collections.unmodifiableSet(neighbours); + } + + public void connect(Node node) { + if (this == node) throw new IllegalArgumentException("Can't connect node to itself"); + this.neighbours.add(node); + node.neighbours.add(this); + } + +} diff --git a/algorithms-miscellaneous-3/src/main/java/com/baeldung/algorithms/breadthfirstsearch/Tree.java b/algorithms-miscellaneous-3/src/main/java/com/baeldung/algorithms/breadthfirstsearch/Tree.java new file mode 100644 index 0000000000..842d2837ff --- /dev/null +++ b/algorithms-miscellaneous-3/src/main/java/com/baeldung/algorithms/breadthfirstsearch/Tree.java @@ -0,0 +1,34 @@ +package com.baeldung.algorithms.breadthfirstsearch; + +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; + +public class Tree { + + private T value; + private List> children; + + private Tree(T value) { + this.value = value; + this.children = new ArrayList<>(); + } + + public static Tree of(T value) { + return new Tree<>(value); + } + + public T getValue() { + return value; + } + + public List> getChildren() { + return Collections.unmodifiableList(children); + } + + public Tree addChild(T value) { + Tree newChild = new Tree<>(value); + children.add(newChild); + return newChild; + } +} diff --git a/algorithms-miscellaneous-3/src/test/java/com/baeldung/algorithms/breadthfirstsearch/BreadthFirstSearchAlgorithmUnitTest.java b/algorithms-miscellaneous-3/src/test/java/com/baeldung/algorithms/breadthfirstsearch/BreadthFirstSearchAlgorithmUnitTest.java new file mode 100644 index 0000000000..188cc32c3e --- /dev/null +++ b/algorithms-miscellaneous-3/src/test/java/com/baeldung/algorithms/breadthfirstsearch/BreadthFirstSearchAlgorithmUnitTest.java @@ -0,0 +1,85 @@ +package com.baeldung.algorithms.breadthfirstsearch; + +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; + +import static org.assertj.core.api.Assertions.assertThat; + +class BreadthFirstSearchAlgorithmUnitTest { + + private Tree root; + private Tree rootFirstChild; + private Tree depthMostChild; + private Tree rootSecondChild; + + private Node start; + private Node firstNeighbour; + private Node firstNeighbourNeighbour; + private Node secondNeighbour; + + @BeforeEach + void beforeEach() { + initTree(); + initNode(); + } + + private void initTree() { + root = Tree.of(10); + rootFirstChild = root.addChild(2); + depthMostChild = rootFirstChild.addChild(3); + rootSecondChild = root.addChild(4); + } + + private void initNode() { + start = new Node<>(10); + firstNeighbour = new Node<>(2); + start.connect(firstNeighbour); + + firstNeighbourNeighbour = new Node<>(3); + firstNeighbour.connect(firstNeighbourNeighbour); + firstNeighbourNeighbour.connect(start); + + secondNeighbour = new Node<>(4); + start.connect(secondNeighbour); + } + + @Test + void givenTree_whenSearchTen_thenRoot() { + assertThat(BreadthFirstSearchAlgorithm.search(10, root)).isPresent().contains(root); + } + + @Test + void givenTree_whenSearchThree_thenDepthMostValue() { + assertThat(BreadthFirstSearchAlgorithm.search(3, root)).isPresent().contains(depthMostChild); + } + + @Test + void givenTree_whenSearchFour_thenRootSecondChild() { + assertThat(BreadthFirstSearchAlgorithm.search(4, root)).isPresent().contains(rootSecondChild); + } + + @Test + void givenTree_whenSearchFive_thenNotFound() { + assertThat(BreadthFirstSearchAlgorithm.search(5, root)).isEmpty(); + } + + @Test + void givenNode_whenSearchTen_thenStart() { + assertThat(BreadthFirstSearchAlgorithm.search(10, firstNeighbourNeighbour)).isPresent().contains(start); + } + + @Test + void givenNode_whenSearchThree_thenNeighbourNeighbour() { + assertThat(BreadthFirstSearchAlgorithm.search(3, firstNeighbourNeighbour)).isPresent().contains(firstNeighbourNeighbour); + } + + @Test + void givenNode_whenSearchFour_thenSecondNeighbour() { + assertThat(BreadthFirstSearchAlgorithm.search(4, firstNeighbourNeighbour)).isPresent().contains(secondNeighbour); + } + + @Test + void givenNode_whenSearchFive_thenNotFound() { + assertThat(BreadthFirstSearchAlgorithm.search(5, firstNeighbourNeighbour)).isEmpty(); + } +} \ No newline at end of file From 223a767d0149e76c96ab5def32e461aac286daa3 Mon Sep 17 00:00:00 2001 From: dupirefr Date: Wed, 9 Oct 2019 05:15:45 +0200 Subject: [PATCH 48/59] [BAERL-3128] Fixes from editor review --- .../BreadthFirstSearchAlgorithm.java | 11 +-- .../algorithms/breadthfirstsearch/Node.java | 12 +-- .../BreadthFirstSearchAlgorithmUnitTest.java | 93 ++++++++++--------- 3 files changed, 55 insertions(+), 61 deletions(-) diff --git a/algorithms-miscellaneous-3/src/main/java/com/baeldung/algorithms/breadthfirstsearch/BreadthFirstSearchAlgorithm.java b/algorithms-miscellaneous-3/src/main/java/com/baeldung/algorithms/breadthfirstsearch/BreadthFirstSearchAlgorithm.java index 4331b2fc94..9d301f9578 100644 --- a/algorithms-miscellaneous-3/src/main/java/com/baeldung/algorithms/breadthfirstsearch/BreadthFirstSearchAlgorithm.java +++ b/algorithms-miscellaneous-3/src/main/java/com/baeldung/algorithms/breadthfirstsearch/BreadthFirstSearchAlgorithm.java @@ -13,10 +13,6 @@ public class BreadthFirstSearchAlgorithm { Queue> queue = new ArrayDeque<>(); queue.add(root); - return searchTreeQueue(value, queue); - } - - private static Optional> searchTreeQueue(T value, Queue> queue) { Tree currentNode; while (!queue.isEmpty()) { currentNode = queue.remove(); @@ -36,10 +32,6 @@ public class BreadthFirstSearchAlgorithm { Queue> queue = new ArrayDeque<>(); queue.add(start); - return searchNodeQueue(value, queue); - } - - private static Optional> searchNodeQueue(T value, Queue> queue) { Node currentNode; Set> alreadyVisited = new HashSet<>(); @@ -51,11 +43,12 @@ public class BreadthFirstSearchAlgorithm { return Optional.of(currentNode); } else { alreadyVisited.add(currentNode); - queue.addAll(currentNode.getNeighbours()); + queue.addAll(currentNode.getNeighbors()); queue.removeAll(alreadyVisited); } } return Optional.empty(); } + } diff --git a/algorithms-miscellaneous-3/src/main/java/com/baeldung/algorithms/breadthfirstsearch/Node.java b/algorithms-miscellaneous-3/src/main/java/com/baeldung/algorithms/breadthfirstsearch/Node.java index bfa879f0b7..54a589ae26 100644 --- a/algorithms-miscellaneous-3/src/main/java/com/baeldung/algorithms/breadthfirstsearch/Node.java +++ b/algorithms-miscellaneous-3/src/main/java/com/baeldung/algorithms/breadthfirstsearch/Node.java @@ -7,25 +7,25 @@ import java.util.Set; public class Node { private T value; - private Set> neighbours; + private Set> neighbors; public Node(T value) { this.value = value; - this.neighbours = new HashSet<>(); + this.neighbors = new HashSet<>(); } public T getValue() { return value; } - public Set> getNeighbours() { - return Collections.unmodifiableSet(neighbours); + public Set> getNeighbors() { + return Collections.unmodifiableSet(neighbors); } public void connect(Node node) { if (this == node) throw new IllegalArgumentException("Can't connect node to itself"); - this.neighbours.add(node); - node.neighbours.add(this); + this.neighbors.add(node); + node.neighbors.add(this); } } diff --git a/algorithms-miscellaneous-3/src/test/java/com/baeldung/algorithms/breadthfirstsearch/BreadthFirstSearchAlgorithmUnitTest.java b/algorithms-miscellaneous-3/src/test/java/com/baeldung/algorithms/breadthfirstsearch/BreadthFirstSearchAlgorithmUnitTest.java index 188cc32c3e..aa22fc5353 100644 --- a/algorithms-miscellaneous-3/src/test/java/com/baeldung/algorithms/breadthfirstsearch/BreadthFirstSearchAlgorithmUnitTest.java +++ b/algorithms-miscellaneous-3/src/test/java/com/baeldung/algorithms/breadthfirstsearch/BreadthFirstSearchAlgorithmUnitTest.java @@ -1,6 +1,5 @@ package com.baeldung.algorithms.breadthfirstsearch; -import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import static org.assertj.core.api.Assertions.assertThat; @@ -13,14 +12,32 @@ class BreadthFirstSearchAlgorithmUnitTest { private Tree rootSecondChild; private Node start; - private Node firstNeighbour; - private Node firstNeighbourNeighbour; - private Node secondNeighbour; + private Node firstNeighbor; + private Node firstNeighborNeighbor; + private Node secondNeighbor; - @BeforeEach - void beforeEach() { + @Test + void givenTree_whenSearchTen_thenRoot() { initTree(); - initNode(); + assertThat(BreadthFirstSearchAlgorithm.search(10, root)).isPresent().contains(root); + } + + @Test + void givenTree_whenSearchThree_thenDepthMostValue() { + initTree(); + assertThat(BreadthFirstSearchAlgorithm.search(3, root)).isPresent().contains(depthMostChild); + } + + @Test + void givenTree_whenSearchFour_thenRootSecondChild() { + initTree(); + assertThat(BreadthFirstSearchAlgorithm.search(4, root)).isPresent().contains(rootSecondChild); + } + + @Test + void givenTree_whenSearchFive_thenNotFound() { + initTree(); + assertThat(BreadthFirstSearchAlgorithm.search(5, root)).isEmpty(); } private void initTree() { @@ -30,56 +47,40 @@ class BreadthFirstSearchAlgorithmUnitTest { rootSecondChild = root.addChild(4); } - private void initNode() { - start = new Node<>(10); - firstNeighbour = new Node<>(2); - start.connect(firstNeighbour); - - firstNeighbourNeighbour = new Node<>(3); - firstNeighbour.connect(firstNeighbourNeighbour); - firstNeighbourNeighbour.connect(start); - - secondNeighbour = new Node<>(4); - start.connect(secondNeighbour); - } - - @Test - void givenTree_whenSearchTen_thenRoot() { - assertThat(BreadthFirstSearchAlgorithm.search(10, root)).isPresent().contains(root); - } - - @Test - void givenTree_whenSearchThree_thenDepthMostValue() { - assertThat(BreadthFirstSearchAlgorithm.search(3, root)).isPresent().contains(depthMostChild); - } - - @Test - void givenTree_whenSearchFour_thenRootSecondChild() { - assertThat(BreadthFirstSearchAlgorithm.search(4, root)).isPresent().contains(rootSecondChild); - } - - @Test - void givenTree_whenSearchFive_thenNotFound() { - assertThat(BreadthFirstSearchAlgorithm.search(5, root)).isEmpty(); - } - @Test void givenNode_whenSearchTen_thenStart() { - assertThat(BreadthFirstSearchAlgorithm.search(10, firstNeighbourNeighbour)).isPresent().contains(start); + initNode(); + assertThat(BreadthFirstSearchAlgorithm.search(10, firstNeighborNeighbor)).isPresent().contains(start); } @Test - void givenNode_whenSearchThree_thenNeighbourNeighbour() { - assertThat(BreadthFirstSearchAlgorithm.search(3, firstNeighbourNeighbour)).isPresent().contains(firstNeighbourNeighbour); + void givenNode_whenSearchThree_thenNeighborNeighbor() { + initNode(); + assertThat(BreadthFirstSearchAlgorithm.search(3, firstNeighborNeighbor)).isPresent().contains(firstNeighborNeighbor); } @Test - void givenNode_whenSearchFour_thenSecondNeighbour() { - assertThat(BreadthFirstSearchAlgorithm.search(4, firstNeighbourNeighbour)).isPresent().contains(secondNeighbour); + void givenNode_whenSearchFour_thenSecondNeighbor() { + initNode(); + assertThat(BreadthFirstSearchAlgorithm.search(4, firstNeighborNeighbor)).isPresent().contains(secondNeighbor); } @Test void givenNode_whenSearchFive_thenNotFound() { - assertThat(BreadthFirstSearchAlgorithm.search(5, firstNeighbourNeighbour)).isEmpty(); + initNode(); + assertThat(BreadthFirstSearchAlgorithm.search(5, firstNeighborNeighbor)).isEmpty(); + } + + private void initNode() { + start = new Node<>(10); + firstNeighbor = new Node<>(2); + start.connect(firstNeighbor); + + firstNeighborNeighbor = new Node<>(3); + firstNeighbor.connect(firstNeighborNeighbor); + firstNeighborNeighbor.connect(start); + + secondNeighbor = new Node<>(4); + start.connect(secondNeighbor); } } \ No newline at end of file From ee13326a2027f44beea7665fb780c3c104a82678 Mon Sep 17 00:00:00 2001 From: catalin-burcea Date: Fri, 11 Oct 2019 12:51:08 +0300 Subject: [PATCH 49/59] Move articles out of core-java-lang part 3 --- .../core-java-lang-math/README.md | 1 + .../doubles/SplitFloatingPointNumbers.java | 0 .../core-java-lang-oop-3/README.md | 5 +++ .../core-java-lang-oop-3/pom.xml | 33 ++++++++++++++++++- .../java/com/baeldung/binding/Animal.java | 0 .../com/baeldung/binding/AnimalActivity.java | 0 .../main/java/com/baeldung/binding/Cat.java | 0 .../CommaSeparatedCustomers.java | 2 +- .../baeldung/innerinterfaces}/Customer.java | 2 +- .../java/com/baeldung/interfaces/Box.java | 0 .../com/baeldung/interfaces/Employee.java | 0 .../interfaces/EmployeeSalaryComparator.java | 0 .../com/baeldung/interfaces/HasColor.java | 0 .../interfaces/multiinheritance/Car.java | 0 .../interfaces/multiinheritance/Fly.java | 0 .../multiinheritance/Transform.java | 0 .../interfaces/multiinheritance/Vehicle.java | 0 .../interfaces/polymorphysim/Circle.java | 0 .../polymorphysim/MainTestClass.java | 0 .../interfaces/polymorphysim/Shape.java | 0 .../interfaces/polymorphysim/Square.java | 0 .../main/java/com/baeldung/objects/Car.java | 0 .../parameterpassing/NonPrimitives.java | 2 +- .../baeldung/parameterpassing/Primitives.java | 0 .../binding/AnimalActivityUnitTest.java | 0 .../com/baeldung/binding/AnimalUnitTest.java | 4 +-- .../com/baeldung/binding/CatUnitTest.java | 0 .../InnerInterfaceUnitTest.java | 8 +++-- .../baeldung/nestedclass/AnonymousInner.java | 0 .../com/baeldung/nestedclass/Enclosing.java | 2 +- .../baeldung/nestedclass/NewEnclosing.java | 0 .../com/baeldung/nestedclass/NewOuter.java | 2 +- .../java/com/baeldung/nestedclass/Outer.java | 2 +- .../baeldung/objects/ObjectsUnitTest.java} | 6 ++-- core-java-modules/core-java-lang/README.md | 8 ----- .../iteration}/DaysOfWeekEnum.java | 2 +- .../iteration}/EnumIterationExamples.java | 2 +- 37 files changed, 56 insertions(+), 25 deletions(-) rename core-java-modules/{core-java-lang => core-java-lang-math}/src/main/java/com/baeldung/doubles/SplitFloatingPointNumbers.java (100%) rename core-java-modules/{core-java-lang => core-java-lang-oop-3}/src/main/java/com/baeldung/binding/Animal.java (100%) rename core-java-modules/{core-java-lang => core-java-lang-oop-3}/src/main/java/com/baeldung/binding/AnimalActivity.java (100%) rename core-java-modules/{core-java-lang => core-java-lang-oop-3}/src/main/java/com/baeldung/binding/Cat.java (100%) rename core-java-modules/{core-java-lang/src/main/java/com/baeldung/interfaces => core-java-lang-oop-3/src/main/java/com/baeldung/innerinterfaces}/CommaSeparatedCustomers.java (92%) rename core-java-modules/{core-java-lang/src/main/java/com/baeldung/interfaces => core-java-lang-oop-3/src/main/java/com/baeldung/innerinterfaces}/Customer.java (88%) rename core-java-modules/{core-java-lang => core-java-lang-oop-3}/src/main/java/com/baeldung/interfaces/Box.java (100%) rename core-java-modules/{core-java-lang => core-java-lang-oop-3}/src/main/java/com/baeldung/interfaces/Employee.java (100%) rename core-java-modules/{core-java-lang => core-java-lang-oop-3}/src/main/java/com/baeldung/interfaces/EmployeeSalaryComparator.java (100%) rename core-java-modules/{core-java-lang => core-java-lang-oop-3}/src/main/java/com/baeldung/interfaces/HasColor.java (100%) rename core-java-modules/{core-java-lang => core-java-lang-oop-3}/src/main/java/com/baeldung/interfaces/multiinheritance/Car.java (100%) rename core-java-modules/{core-java-lang => core-java-lang-oop-3}/src/main/java/com/baeldung/interfaces/multiinheritance/Fly.java (100%) rename core-java-modules/{core-java-lang => core-java-lang-oop-3}/src/main/java/com/baeldung/interfaces/multiinheritance/Transform.java (100%) rename core-java-modules/{core-java-lang => core-java-lang-oop-3}/src/main/java/com/baeldung/interfaces/multiinheritance/Vehicle.java (100%) rename core-java-modules/{core-java-lang => core-java-lang-oop-3}/src/main/java/com/baeldung/interfaces/polymorphysim/Circle.java (100%) rename core-java-modules/{core-java-lang => core-java-lang-oop-3}/src/main/java/com/baeldung/interfaces/polymorphysim/MainTestClass.java (100%) rename core-java-modules/{core-java-lang => core-java-lang-oop-3}/src/main/java/com/baeldung/interfaces/polymorphysim/Shape.java (100%) rename core-java-modules/{core-java-lang => core-java-lang-oop-3}/src/main/java/com/baeldung/interfaces/polymorphysim/Square.java (100%) rename core-java-modules/{core-java-lang => core-java-lang-oop-3}/src/main/java/com/baeldung/objects/Car.java (100%) rename core-java-modules/{core-java-lang => core-java-lang-oop-3}/src/main/java/com/baeldung/parameterpassing/NonPrimitives.java (99%) rename core-java-modules/{core-java-lang => core-java-lang-oop-3}/src/main/java/com/baeldung/parameterpassing/Primitives.java (100%) rename core-java-modules/{core-java-lang => core-java-lang-oop-3}/src/test/java/com/baeldung/binding/AnimalActivityUnitTest.java (100%) rename core-java-modules/{core-java-lang => core-java-lang-oop-3}/src/test/java/com/baeldung/binding/AnimalUnitTest.java (100%) rename core-java-modules/{core-java-lang => core-java-lang-oop-3}/src/test/java/com/baeldung/binding/CatUnitTest.java (100%) rename core-java-modules/{core-java-lang/src/test/java/com/baeldung/interfaces => core-java-lang-oop-3/src/test/java/com/baeldung/innerinterfaces}/InnerInterfaceUnitTest.java (78%) rename core-java-modules/{core-java-lang => core-java-lang-oop-3}/src/test/java/com/baeldung/nestedclass/AnonymousInner.java (100%) rename core-java-modules/{core-java-lang => core-java-lang-oop-3}/src/test/java/com/baeldung/nestedclass/Enclosing.java (81%) rename core-java-modules/{core-java-lang => core-java-lang-oop-3}/src/test/java/com/baeldung/nestedclass/NewEnclosing.java (100%) rename core-java-modules/{core-java-lang => core-java-lang-oop-3}/src/test/java/com/baeldung/nestedclass/NewOuter.java (91%) rename core-java-modules/{core-java-lang => core-java-lang-oop-3}/src/test/java/com/baeldung/nestedclass/Outer.java (86%) rename core-java-modules/{core-java-lang/src/test/java/com/baeldung/objects/CarUnitTest.java => core-java-lang-oop-3/src/test/java/com/baeldung/objects/ObjectsUnitTest.java} (96%) rename core-java-modules/core-java-lang/src/test/java/com/baeldung/{java/enumiteration => enums/iteration}/DaysOfWeekEnum.java (92%) rename core-java-modules/core-java-lang/src/test/java/com/baeldung/{java/enumiteration => enums/iteration}/EnumIterationExamples.java (97%) diff --git a/core-java-modules/core-java-lang-math/README.md b/core-java-modules/core-java-lang-math/README.md index cfa3052f43..b316ed1cfb 100644 --- a/core-java-modules/core-java-lang-math/README.md +++ b/core-java-modules/core-java-lang-math/README.md @@ -5,3 +5,4 @@ ### Relevant Articles: - [Java 8 Math New Methods](https://www.baeldung.com/java-8-math) - [Java 8 Unsigned Arithmetic Support](https://www.baeldung.com/java-unsigned-arithmetic) +- [How to Separate Double into Integer and Decimal Parts](https://www.baeldung.com/java-separate-double-into-integer-decimal-parts) diff --git a/core-java-modules/core-java-lang/src/main/java/com/baeldung/doubles/SplitFloatingPointNumbers.java b/core-java-modules/core-java-lang-math/src/main/java/com/baeldung/doubles/SplitFloatingPointNumbers.java similarity index 100% rename from core-java-modules/core-java-lang/src/main/java/com/baeldung/doubles/SplitFloatingPointNumbers.java rename to core-java-modules/core-java-lang-math/src/main/java/com/baeldung/doubles/SplitFloatingPointNumbers.java diff --git a/core-java-modules/core-java-lang-oop-3/README.md b/core-java-modules/core-java-lang-oop-3/README.md index c3a32124b5..4ac6c3ffe9 100644 --- a/core-java-modules/core-java-lang-oop-3/README.md +++ b/core-java-modules/core-java-lang-oop-3/README.md @@ -9,4 +9,9 @@ This module contains articles about Object-oriented programming (OOP) in Java - [Guide to the this Java Keyword](https://www.baeldung.com/java-this) - [Java Public Access Modifier](https://www.baeldung.com/java-public-keyword) - [Composition, Aggregation and Association in Java](https://www.baeldung.com/java-composition-aggregation-association) +- [Nested Classes in Java](https://www.baeldung.com/java-nested-classes) +- [A Guide to Inner Interfaces in Java](https://www.baeldung.com/java-inner-interfaces) +- [Java Classes and Objects](https://www.baeldung.com/java-classes-objects) +- [Java Interfaces](https://www.baeldung.com/java-interfaces) +- [Static and Dynamic Binding in Java](https://www.baeldung.com/java-static-dynamic-binding) - [[<-- Prev]](/core-java-modules/core-java-lang-oop-2) \ No newline at end of file diff --git a/core-java-modules/core-java-lang-oop-3/pom.xml b/core-java-modules/core-java-lang-oop-3/pom.xml index 29807b5bef..1caf17bef3 100644 --- a/core-java-modules/core-java-lang-oop-3/pom.xml +++ b/core-java-modules/core-java-lang-oop-3/pom.xml @@ -1,7 +1,6 @@ 4.0.0 - com.baeldung core-java-lang-oop-3 0.1.0-SNAPSHOT core-java-lang-oop-3 @@ -15,6 +14,24 @@ + + + log4j + log4j + ${log4j.version} + + + org.slf4j + log4j-over-slf4j + ${org.slf4j.version} + + + + org.assertj + assertj-core + ${assertj-core.version} + test + com.h2database h2 @@ -23,4 +40,18 @@ + + core-java-lang-oop-3 + + + src/main/resources + true + + + + + + 3.10.0 + + diff --git a/core-java-modules/core-java-lang/src/main/java/com/baeldung/binding/Animal.java b/core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/binding/Animal.java similarity index 100% rename from core-java-modules/core-java-lang/src/main/java/com/baeldung/binding/Animal.java rename to core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/binding/Animal.java diff --git a/core-java-modules/core-java-lang/src/main/java/com/baeldung/binding/AnimalActivity.java b/core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/binding/AnimalActivity.java similarity index 100% rename from core-java-modules/core-java-lang/src/main/java/com/baeldung/binding/AnimalActivity.java rename to core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/binding/AnimalActivity.java diff --git a/core-java-modules/core-java-lang/src/main/java/com/baeldung/binding/Cat.java b/core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/binding/Cat.java similarity index 100% rename from core-java-modules/core-java-lang/src/main/java/com/baeldung/binding/Cat.java rename to core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/binding/Cat.java diff --git a/core-java-modules/core-java-lang/src/main/java/com/baeldung/interfaces/CommaSeparatedCustomers.java b/core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/innerinterfaces/CommaSeparatedCustomers.java similarity index 92% rename from core-java-modules/core-java-lang/src/main/java/com/baeldung/interfaces/CommaSeparatedCustomers.java rename to core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/innerinterfaces/CommaSeparatedCustomers.java index 29ed2d3d26..a815720d62 100644 --- a/core-java-modules/core-java-lang/src/main/java/com/baeldung/interfaces/CommaSeparatedCustomers.java +++ b/core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/innerinterfaces/CommaSeparatedCustomers.java @@ -1,4 +1,4 @@ -package com.baeldung.interfaces; +package com.baeldung.innerinterfaces; import java.util.ArrayList; import java.util.List; diff --git a/core-java-modules/core-java-lang/src/main/java/com/baeldung/interfaces/Customer.java b/core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/innerinterfaces/Customer.java similarity index 88% rename from core-java-modules/core-java-lang/src/main/java/com/baeldung/interfaces/Customer.java rename to core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/innerinterfaces/Customer.java index d2f2b48074..ce27460cbb 100644 --- a/core-java-modules/core-java-lang/src/main/java/com/baeldung/interfaces/Customer.java +++ b/core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/innerinterfaces/Customer.java @@ -1,4 +1,4 @@ -package com.baeldung.interfaces; +package com.baeldung.innerinterfaces; public class Customer { public interface List { diff --git a/core-java-modules/core-java-lang/src/main/java/com/baeldung/interfaces/Box.java b/core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/interfaces/Box.java similarity index 100% rename from core-java-modules/core-java-lang/src/main/java/com/baeldung/interfaces/Box.java rename to core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/interfaces/Box.java diff --git a/core-java-modules/core-java-lang/src/main/java/com/baeldung/interfaces/Employee.java b/core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/interfaces/Employee.java similarity index 100% rename from core-java-modules/core-java-lang/src/main/java/com/baeldung/interfaces/Employee.java rename to core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/interfaces/Employee.java diff --git a/core-java-modules/core-java-lang/src/main/java/com/baeldung/interfaces/EmployeeSalaryComparator.java b/core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/interfaces/EmployeeSalaryComparator.java similarity index 100% rename from core-java-modules/core-java-lang/src/main/java/com/baeldung/interfaces/EmployeeSalaryComparator.java rename to core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/interfaces/EmployeeSalaryComparator.java diff --git a/core-java-modules/core-java-lang/src/main/java/com/baeldung/interfaces/HasColor.java b/core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/interfaces/HasColor.java similarity index 100% rename from core-java-modules/core-java-lang/src/main/java/com/baeldung/interfaces/HasColor.java rename to core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/interfaces/HasColor.java diff --git a/core-java-modules/core-java-lang/src/main/java/com/baeldung/interfaces/multiinheritance/Car.java b/core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/interfaces/multiinheritance/Car.java similarity index 100% rename from core-java-modules/core-java-lang/src/main/java/com/baeldung/interfaces/multiinheritance/Car.java rename to core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/interfaces/multiinheritance/Car.java diff --git a/core-java-modules/core-java-lang/src/main/java/com/baeldung/interfaces/multiinheritance/Fly.java b/core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/interfaces/multiinheritance/Fly.java similarity index 100% rename from core-java-modules/core-java-lang/src/main/java/com/baeldung/interfaces/multiinheritance/Fly.java rename to core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/interfaces/multiinheritance/Fly.java diff --git a/core-java-modules/core-java-lang/src/main/java/com/baeldung/interfaces/multiinheritance/Transform.java b/core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/interfaces/multiinheritance/Transform.java similarity index 100% rename from core-java-modules/core-java-lang/src/main/java/com/baeldung/interfaces/multiinheritance/Transform.java rename to core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/interfaces/multiinheritance/Transform.java diff --git a/core-java-modules/core-java-lang/src/main/java/com/baeldung/interfaces/multiinheritance/Vehicle.java b/core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/interfaces/multiinheritance/Vehicle.java similarity index 100% rename from core-java-modules/core-java-lang/src/main/java/com/baeldung/interfaces/multiinheritance/Vehicle.java rename to core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/interfaces/multiinheritance/Vehicle.java diff --git a/core-java-modules/core-java-lang/src/main/java/com/baeldung/interfaces/polymorphysim/Circle.java b/core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/interfaces/polymorphysim/Circle.java similarity index 100% rename from core-java-modules/core-java-lang/src/main/java/com/baeldung/interfaces/polymorphysim/Circle.java rename to core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/interfaces/polymorphysim/Circle.java diff --git a/core-java-modules/core-java-lang/src/main/java/com/baeldung/interfaces/polymorphysim/MainTestClass.java b/core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/interfaces/polymorphysim/MainTestClass.java similarity index 100% rename from core-java-modules/core-java-lang/src/main/java/com/baeldung/interfaces/polymorphysim/MainTestClass.java rename to core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/interfaces/polymorphysim/MainTestClass.java diff --git a/core-java-modules/core-java-lang/src/main/java/com/baeldung/interfaces/polymorphysim/Shape.java b/core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/interfaces/polymorphysim/Shape.java similarity index 100% rename from core-java-modules/core-java-lang/src/main/java/com/baeldung/interfaces/polymorphysim/Shape.java rename to core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/interfaces/polymorphysim/Shape.java diff --git a/core-java-modules/core-java-lang/src/main/java/com/baeldung/interfaces/polymorphysim/Square.java b/core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/interfaces/polymorphysim/Square.java similarity index 100% rename from core-java-modules/core-java-lang/src/main/java/com/baeldung/interfaces/polymorphysim/Square.java rename to core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/interfaces/polymorphysim/Square.java diff --git a/core-java-modules/core-java-lang/src/main/java/com/baeldung/objects/Car.java b/core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/objects/Car.java similarity index 100% rename from core-java-modules/core-java-lang/src/main/java/com/baeldung/objects/Car.java rename to core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/objects/Car.java diff --git a/core-java-modules/core-java-lang/src/main/java/com/baeldung/parameterpassing/NonPrimitives.java b/core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/parameterpassing/NonPrimitives.java similarity index 99% rename from core-java-modules/core-java-lang/src/main/java/com/baeldung/parameterpassing/NonPrimitives.java rename to core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/parameterpassing/NonPrimitives.java index 0e1746fc38..2c6ff3d683 100644 --- a/core-java-modules/core-java-lang/src/main/java/com/baeldung/parameterpassing/NonPrimitives.java +++ b/core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/parameterpassing/NonPrimitives.java @@ -17,7 +17,7 @@ public class NonPrimitives { b1.num++; } } - + class FooClass { public int num; diff --git a/core-java-modules/core-java-lang/src/main/java/com/baeldung/parameterpassing/Primitives.java b/core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/parameterpassing/Primitives.java similarity index 100% rename from core-java-modules/core-java-lang/src/main/java/com/baeldung/parameterpassing/Primitives.java rename to core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/parameterpassing/Primitives.java diff --git a/core-java-modules/core-java-lang/src/test/java/com/baeldung/binding/AnimalActivityUnitTest.java b/core-java-modules/core-java-lang-oop-3/src/test/java/com/baeldung/binding/AnimalActivityUnitTest.java similarity index 100% rename from core-java-modules/core-java-lang/src/test/java/com/baeldung/binding/AnimalActivityUnitTest.java rename to core-java-modules/core-java-lang-oop-3/src/test/java/com/baeldung/binding/AnimalActivityUnitTest.java diff --git a/core-java-modules/core-java-lang/src/test/java/com/baeldung/binding/AnimalUnitTest.java b/core-java-modules/core-java-lang-oop-3/src/test/java/com/baeldung/binding/AnimalUnitTest.java similarity index 100% rename from core-java-modules/core-java-lang/src/test/java/com/baeldung/binding/AnimalUnitTest.java rename to core-java-modules/core-java-lang-oop-3/src/test/java/com/baeldung/binding/AnimalUnitTest.java index a34640b58a..11201965d9 100644 --- a/core-java-modules/core-java-lang/src/test/java/com/baeldung/binding/AnimalUnitTest.java +++ b/core-java-modules/core-java-lang-oop-3/src/test/java/com/baeldung/binding/AnimalUnitTest.java @@ -14,13 +14,13 @@ import org.mockito.Mock; import org.mockito.junit.MockitoJUnitRunner; import org.slf4j.LoggerFactory; +import java.util.List; + import static org.hamcrest.CoreMatchers.is; import static org.junit.Assert.assertThat; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; -import java.util.List; - /** * Created by madhumita.g on 01-08-2018. */ diff --git a/core-java-modules/core-java-lang/src/test/java/com/baeldung/binding/CatUnitTest.java b/core-java-modules/core-java-lang-oop-3/src/test/java/com/baeldung/binding/CatUnitTest.java similarity index 100% rename from core-java-modules/core-java-lang/src/test/java/com/baeldung/binding/CatUnitTest.java rename to core-java-modules/core-java-lang-oop-3/src/test/java/com/baeldung/binding/CatUnitTest.java diff --git a/core-java-modules/core-java-lang/src/test/java/com/baeldung/interfaces/InnerInterfaceUnitTest.java b/core-java-modules/core-java-lang-oop-3/src/test/java/com/baeldung/innerinterfaces/InnerInterfaceUnitTest.java similarity index 78% rename from core-java-modules/core-java-lang/src/test/java/com/baeldung/interfaces/InnerInterfaceUnitTest.java rename to core-java-modules/core-java-lang-oop-3/src/test/java/com/baeldung/innerinterfaces/InnerInterfaceUnitTest.java index 65d7c860a8..65e51ed93d 100644 --- a/core-java-modules/core-java-lang/src/test/java/com/baeldung/interfaces/InnerInterfaceUnitTest.java +++ b/core-java-modules/core-java-lang-oop-3/src/test/java/com/baeldung/innerinterfaces/InnerInterfaceUnitTest.java @@ -1,11 +1,13 @@ -package com.baeldung.interfaces; - -import static org.junit.Assert.assertEquals; +package com.baeldung.innerinterfaces; +import com.baeldung.innerinterfaces.CommaSeparatedCustomers; +import com.baeldung.innerinterfaces.Customer; import org.junit.Test; import org.junit.runner.RunWith; import org.junit.runners.JUnit4; +import static org.junit.Assert.assertEquals; + @RunWith(JUnit4.class) public class InnerInterfaceUnitTest { @Test diff --git a/core-java-modules/core-java-lang/src/test/java/com/baeldung/nestedclass/AnonymousInner.java b/core-java-modules/core-java-lang-oop-3/src/test/java/com/baeldung/nestedclass/AnonymousInner.java similarity index 100% rename from core-java-modules/core-java-lang/src/test/java/com/baeldung/nestedclass/AnonymousInner.java rename to core-java-modules/core-java-lang-oop-3/src/test/java/com/baeldung/nestedclass/AnonymousInner.java diff --git a/core-java-modules/core-java-lang/src/test/java/com/baeldung/nestedclass/Enclosing.java b/core-java-modules/core-java-lang-oop-3/src/test/java/com/baeldung/nestedclass/Enclosing.java similarity index 81% rename from core-java-modules/core-java-lang/src/test/java/com/baeldung/nestedclass/Enclosing.java rename to core-java-modules/core-java-lang-oop-3/src/test/java/com/baeldung/nestedclass/Enclosing.java index 3db33cde9b..a7c0e1b29f 100644 --- a/core-java-modules/core-java-lang/src/test/java/com/baeldung/nestedclass/Enclosing.java +++ b/core-java-modules/core-java-lang-oop-3/src/test/java/com/baeldung/nestedclass/Enclosing.java @@ -15,7 +15,7 @@ public class Enclosing { @Test public void test() { - Enclosing.StaticNested nested = new Enclosing.StaticNested(); + StaticNested nested = new StaticNested(); nested.run(); } } diff --git a/core-java-modules/core-java-lang/src/test/java/com/baeldung/nestedclass/NewEnclosing.java b/core-java-modules/core-java-lang-oop-3/src/test/java/com/baeldung/nestedclass/NewEnclosing.java similarity index 100% rename from core-java-modules/core-java-lang/src/test/java/com/baeldung/nestedclass/NewEnclosing.java rename to core-java-modules/core-java-lang-oop-3/src/test/java/com/baeldung/nestedclass/NewEnclosing.java diff --git a/core-java-modules/core-java-lang/src/test/java/com/baeldung/nestedclass/NewOuter.java b/core-java-modules/core-java-lang-oop-3/src/test/java/com/baeldung/nestedclass/NewOuter.java similarity index 91% rename from core-java-modules/core-java-lang/src/test/java/com/baeldung/nestedclass/NewOuter.java rename to core-java-modules/core-java-lang-oop-3/src/test/java/com/baeldung/nestedclass/NewOuter.java index 260f69fd1b..37c8be7817 100644 --- a/core-java-modules/core-java-lang/src/test/java/com/baeldung/nestedclass/NewOuter.java +++ b/core-java-modules/core-java-lang-oop-3/src/test/java/com/baeldung/nestedclass/NewOuter.java @@ -23,7 +23,7 @@ public class NewOuter { @Test public void test() { NewOuter outer = new NewOuter(); - NewOuter.InnerClass inner = outer.new InnerClass(); + InnerClass inner = outer.new InnerClass(); inner.run(); } diff --git a/core-java-modules/core-java-lang/src/test/java/com/baeldung/nestedclass/Outer.java b/core-java-modules/core-java-lang-oop-3/src/test/java/com/baeldung/nestedclass/Outer.java similarity index 86% rename from core-java-modules/core-java-lang/src/test/java/com/baeldung/nestedclass/Outer.java rename to core-java-modules/core-java-lang-oop-3/src/test/java/com/baeldung/nestedclass/Outer.java index d5e46670c9..196cd6cd38 100644 --- a/core-java-modules/core-java-lang/src/test/java/com/baeldung/nestedclass/Outer.java +++ b/core-java-modules/core-java-lang-oop-3/src/test/java/com/baeldung/nestedclass/Outer.java @@ -14,7 +14,7 @@ public class Outer { @Test public void test() { Outer outer = new Outer(); - Outer.Inner inner = outer.new Inner(); + Inner inner = outer.new Inner(); inner.run(); } } diff --git a/core-java-modules/core-java-lang/src/test/java/com/baeldung/objects/CarUnitTest.java b/core-java-modules/core-java-lang-oop-3/src/test/java/com/baeldung/objects/ObjectsUnitTest.java similarity index 96% rename from core-java-modules/core-java-lang/src/test/java/com/baeldung/objects/CarUnitTest.java rename to core-java-modules/core-java-lang-oop-3/src/test/java/com/baeldung/objects/ObjectsUnitTest.java index a1ef20523e..e0f8766be4 100644 --- a/core-java-modules/core-java-lang/src/test/java/com/baeldung/objects/CarUnitTest.java +++ b/core-java-modules/core-java-lang-oop-3/src/test/java/com/baeldung/objects/ObjectsUnitTest.java @@ -1,11 +1,11 @@ package com.baeldung.objects; -import static org.junit.Assert.*; - import org.junit.Before; import org.junit.Test; -public class CarUnitTest { +import static org.junit.Assert.*; + +public class ObjectsUnitTest { private Car car; diff --git a/core-java-modules/core-java-lang/README.md b/core-java-modules/core-java-lang/README.md index 3c33409e7e..9b485d80e9 100644 --- a/core-java-modules/core-java-lang/README.md +++ b/core-java-modules/core-java-lang/README.md @@ -3,22 +3,14 @@ This module contains articles about core features in the Java language ### Relevant Articles: - - [Generate equals() and hashCode() with Eclipse](https://www.baeldung.com/java-eclipse-equals-and-hashcode) - [Iterating Over Enum Values in Java](https://www.baeldung.com/java-enum-iteration) - [Comparator and Comparable in Java](https://www.baeldung.com/java-comparator-comparable) -- [Nested Classes in Java](https://www.baeldung.com/java-nested-classes) -- [A Guide to Inner Interfaces in Java](https://www.baeldung.com/java-inner-interfaces) - [Recursion In Java](https://www.baeldung.com/java-recursion) - [A Guide to the finalize Method in Java](https://www.baeldung.com/java-finalize) - [Quick Guide to java.lang.System](https://www.baeldung.com/java-lang-system) - [Using Java Assertions](https://www.baeldung.com/java-assert) -- [Static and Dynamic Binding in Java](https://www.baeldung.com/java-static-dynamic-binding) - [Synthetic Constructs in Java](https://www.baeldung.com/java-synthetic) -- [How to Separate Double into Integer and Decimal Parts](https://www.baeldung.com/java-separate-double-into-integer-decimal-parts) - [Retrieving a Class Name in Java](https://www.baeldung.com/java-class-name) -- [Java Interfaces](https://www.baeldung.com/java-interfaces) - [Attaching Values to Java Enum](https://www.baeldung.com/java-enum-values) -- [Java Classes and Objects](https://www.baeldung.com/java-classes-objects) -- [A Guide to Java Enums](https://www.baeldung.com/a-guide-to-java-enums) - [[More --> ]](/core-java-modules/core-java-lang-2) \ No newline at end of file diff --git a/core-java-modules/core-java-lang/src/test/java/com/baeldung/java/enumiteration/DaysOfWeekEnum.java b/core-java-modules/core-java-lang/src/test/java/com/baeldung/enums/iteration/DaysOfWeekEnum.java similarity index 92% rename from core-java-modules/core-java-lang/src/test/java/com/baeldung/java/enumiteration/DaysOfWeekEnum.java rename to core-java-modules/core-java-lang/src/test/java/com/baeldung/enums/iteration/DaysOfWeekEnum.java index 89e718adf3..f25ddfa6dd 100644 --- a/core-java-modules/core-java-lang/src/test/java/com/baeldung/java/enumiteration/DaysOfWeekEnum.java +++ b/core-java-modules/core-java-lang/src/test/java/com/baeldung/enums/iteration/DaysOfWeekEnum.java @@ -1,4 +1,4 @@ -package com.baeldung.java.enumiteration; +package com.baeldung.enums.iteration; import java.util.stream.Stream; diff --git a/core-java-modules/core-java-lang/src/test/java/com/baeldung/java/enumiteration/EnumIterationExamples.java b/core-java-modules/core-java-lang/src/test/java/com/baeldung/enums/iteration/EnumIterationExamples.java similarity index 97% rename from core-java-modules/core-java-lang/src/test/java/com/baeldung/java/enumiteration/EnumIterationExamples.java rename to core-java-modules/core-java-lang/src/test/java/com/baeldung/enums/iteration/EnumIterationExamples.java index 110943e39f..9b058aef83 100644 --- a/core-java-modules/core-java-lang/src/test/java/com/baeldung/java/enumiteration/EnumIterationExamples.java +++ b/core-java-modules/core-java-lang/src/test/java/com/baeldung/enums/iteration/EnumIterationExamples.java @@ -1,4 +1,4 @@ -package com.baeldung.java.enumiteration; +package com.baeldung.enums.iteration; import java.util.ArrayList; import java.util.Arrays; From 83e74e8debc79e36e7509725834dd928277c32a9 Mon Sep 17 00:00:00 2001 From: Rodrigo Graciano Date: Fri, 11 Oct 2019 07:15:00 -0400 Subject: [PATCH 50/59] BAEL-2943 --- .../root/calculator/NthRootCalculator.java | 12 ++++--- .../java/com/baeldung/nth/root/main/Main.java | 2 +- .../calculator/NthRootCalculatorUnitTest.java | 19 ++++++----- .../baeldung/nth/root/main/MainUnitTest.java | 34 ------------------- 4 files changed, 20 insertions(+), 47 deletions(-) delete mode 100644 java-numbers/src/test/java/com/baeldung/nth/root/main/MainUnitTest.java diff --git a/java-numbers/src/main/java/com/baeldung/nth/root/calculator/NthRootCalculator.java b/java-numbers/src/main/java/com/baeldung/nth/root/calculator/NthRootCalculator.java index 217f1e06de..5e9f5bbcb4 100644 --- a/java-numbers/src/main/java/com/baeldung/nth/root/calculator/NthRootCalculator.java +++ b/java-numbers/src/main/java/com/baeldung/nth/root/calculator/NthRootCalculator.java @@ -1,8 +1,12 @@ package com.baeldung.nth.root.calculator; -public class NthRootCalculator -{ - public Double calculate(Double base, Double n) { - return Math.pow(Math.E, Math.log(base)/n); +public class NthRootCalculator { + + public double calculateWithRound(double base, double n) { + return Math.round(calculate(base, n)); + } + + public double calculate(double base, double n) { + return Math.pow(base, 1.0 / n); } } diff --git a/java-numbers/src/main/java/com/baeldung/nth/root/main/Main.java b/java-numbers/src/main/java/com/baeldung/nth/root/main/Main.java index 3fcd36812f..50190da38c 100644 --- a/java-numbers/src/main/java/com/baeldung/nth/root/main/Main.java +++ b/java-numbers/src/main/java/com/baeldung/nth/root/main/Main.java @@ -7,7 +7,7 @@ public class Main { NthRootCalculator calculator = new NthRootCalculator(); Double base = Double.parseDouble(args[0]); Double n = Double.parseDouble(args[1]); - Double result = calculator.calculate(base, n); + Double result = calculator.calculateWithRound(base, n); System.out.println("The " + n + " root of " + base + " equals to " + result + "."); } } diff --git a/java-numbers/src/test/java/com/baeldung/nth/root/calculator/NthRootCalculatorUnitTest.java b/java-numbers/src/test/java/com/baeldung/nth/root/calculator/NthRootCalculatorUnitTest.java index ab962fc150..35970536ed 100644 --- a/java-numbers/src/test/java/com/baeldung/nth/root/calculator/NthRootCalculatorUnitTest.java +++ b/java-numbers/src/test/java/com/baeldung/nth/root/calculator/NthRootCalculatorUnitTest.java @@ -1,19 +1,22 @@ package com.baeldung.nth.root.calculator; -import static org.junit.Assert.assertEquals; - import org.junit.Test; -import org.junit.runner.RunWith; -import org.mockito.InjectMocks; -import org.mockito.junit.MockitoJUnitRunner; + +import static org.junit.Assert.assertEquals; public class NthRootCalculatorUnitTest { private NthRootCalculator nthRootCalculator = new NthRootCalculator(); @Test - public void whenBaseIs125AndNIs3_thenNthRootIs5() { - Double result = nthRootCalculator.calculate(125.0, 3.0); - assertEquals(result, (Double) 5.0d); + public void whenBaseIs125AndNIs3_thenNthIs5() { + double nth = nthRootCalculator.calculateWithRound(125,3); + assertEquals(5, nth, 0); + } + + @Test + public void whenBaseIs625AndNIs4_thenNthIs5() { + double nth = nthRootCalculator.calculate(625,4); + assertEquals(5, nth, 0.00001); } } diff --git a/java-numbers/src/test/java/com/baeldung/nth/root/main/MainUnitTest.java b/java-numbers/src/test/java/com/baeldung/nth/root/main/MainUnitTest.java deleted file mode 100644 index a2fd839ba4..0000000000 --- a/java-numbers/src/test/java/com/baeldung/nth/root/main/MainUnitTest.java +++ /dev/null @@ -1,34 +0,0 @@ -package com.baeldung.nth.root.main; - -import java.io.ByteArrayOutputStream; -import java.io.PrintStream; - -import org.junit.After; -import org.junit.Before; -import org.junit.Test; -import org.mockito.InjectMocks; -import static org.junit.Assert.assertEquals; - -public class MainUnitTest { - @InjectMocks - private Main main; - - private final ByteArrayOutputStream outContent = new ByteArrayOutputStream(); - private final PrintStream originalOut = System.out; - - @Before - public void setUpStreams() { - System.setOut(new PrintStream(outContent)); - } - - @After - public void restoreStreams() { - System.setOut(originalOut); - } - - @Test - public void givenThatTheBaseIs125_andTheExpIs3_whenMainIsCalled_thenTheCorrectResultIsPrinted() { - main.main(new String[]{"125.0", "3.0"}); - assertEquals("The 3.0 root of 125.0 equals to 5.0.\n", outContent.toString().replaceAll("\r", "")); - } -} From f7e594722a6a588c355f66b5d23c17d05522566d Mon Sep 17 00:00:00 2001 From: Sjmillington Date: Fri, 11 Oct 2019 16:20:48 +0100 Subject: [PATCH 51/59] change code back --- jgit/src/main/java/com/baeldung/jgit/porcelain/Log.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jgit/src/main/java/com/baeldung/jgit/porcelain/Log.java b/jgit/src/main/java/com/baeldung/jgit/porcelain/Log.java index 7b2fe3a0f2..9ee82c79e7 100644 --- a/jgit/src/main/java/com/baeldung/jgit/porcelain/Log.java +++ b/jgit/src/main/java/com/baeldung/jgit/porcelain/Log.java @@ -49,7 +49,7 @@ public class Log { logs = git.log() // for all log.all() - .addPath("README.MD") + .addPath("README.md") .call(); count = 0; for (RevCommit rev : logs) { From 6a0c6929543d56ddf7100e3f1456b96b1b9c1a9c Mon Sep 17 00:00:00 2001 From: Sjmillington Date: Fri, 11 Oct 2019 16:26:29 +0100 Subject: [PATCH 52/59] changed MD to md --- jgit/src/main/java/com/baeldung/jgit/porcelain/Log.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jgit/src/main/java/com/baeldung/jgit/porcelain/Log.java b/jgit/src/main/java/com/baeldung/jgit/porcelain/Log.java index 9ee82c79e7..a50028a9ae 100644 --- a/jgit/src/main/java/com/baeldung/jgit/porcelain/Log.java +++ b/jgit/src/main/java/com/baeldung/jgit/porcelain/Log.java @@ -56,7 +56,7 @@ public class Log { //System.out.println("Commit: " + rev /* + ", name: " + rev.getName() + ", id: " + rev.getId().getName() */); count++; } - System.out.println("Had " + count + " commits on README.MD"); + System.out.println("Had " + count + " commits on README.md"); logs = git.log() // for all log.all() From 00c18aa1d05844788b9c509abb23cdf44294ce8a Mon Sep 17 00:00:00 2001 From: Loredana Crusoveanu Date: Fri, 11 Oct 2019 20:13:15 +0300 Subject: [PATCH 53/59] Update README.md --- libraries/README.md | 1 - 1 file changed, 1 deletion(-) diff --git a/libraries/README.md b/libraries/README.md index 627c30e75a..79ba8fe55d 100644 --- a/libraries/README.md +++ b/libraries/README.md @@ -40,7 +40,6 @@ Remember, for advanced libraries like [Jackson](/jackson) and [JUnit](/testing-m - [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) - [Introduction to JavaPoet](https://www.baeldung.com/java-poet) -- [Convert String to Date in Java](https://www.baeldung.com/java-string-to-date) - [Guide to Resilience4j](https://www.baeldung.com/resilience4j) - [Exactly Once Processing in Kafka](https://www.baeldung.com/kafka-exactly-once) - [Implementing a FTP-Client in Java](https://www.baeldung.com/java-ftp-client) From ee48e6a29da67629cdfc8c7550a4f5b26f3c7ac5 Mon Sep 17 00:00:00 2001 From: Loredana Crusoveanu Date: Fri, 11 Oct 2019 20:13:33 +0300 Subject: [PATCH 54/59] Update README.md --- java-dates/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/java-dates/README.md b/java-dates/README.md index 3a215f9094..2c962ece64 100644 --- a/java-dates/README.md +++ b/java-dates/README.md @@ -30,3 +30,4 @@ - [ZoneOffset in Java](https://www.baeldung.com/java-zone-offset) - [Differences Between ZonedDateTime and OffsetDateTime](https://www.baeldung.com/java-zoneddatetime-offsetdatetime) - [Introduction to Joda-Time](https://www.baeldung.com/joda-time) +- [Convert String to Date in Java](https://www.baeldung.com/java-string-to-date) From 26d4229f4dcf98beb8bc82d1ebbf98a59a6b2d1e Mon Sep 17 00:00:00 2001 From: eric-martin Date: Fri, 11 Oct 2019 20:22:14 -0500 Subject: [PATCH 55/59] Fixed method reference examples in labmda article --- .../java8/lambda/methodreference/MethodReferenceUnitTest.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/core-java-modules/core-java-lambdas/src/test/java/com/baeldung/java8/lambda/methodreference/MethodReferenceUnitTest.java b/core-java-modules/core-java-lambdas/src/test/java/com/baeldung/java8/lambda/methodreference/MethodReferenceUnitTest.java index 835815aecd..957294153b 100644 --- a/core-java-modules/core-java-lambdas/src/test/java/com/baeldung/java8/lambda/methodreference/MethodReferenceUnitTest.java +++ b/core-java-modules/core-java-lambdas/src/test/java/com/baeldung/java8/lambda/methodreference/MethodReferenceUnitTest.java @@ -35,9 +35,9 @@ public class MethodReferenceUnitTest { public void referenceToInstanceMethodOfArbitratyObjectOfParticularType() { List numbers = Arrays.asList(5, 3, 50, 24, 40, 2, 9, 18); numbers.stream() - .sorted((a, b) -> Integer.compare(a, b)); + .sorted((a, b) -> a.compareTo(b)); numbers.stream() - .sorted(Integer::compare); + .sorted(Integer::compareTo); } @Test From 2c8354eb512d7e967a300272c0c4220ec95db481 Mon Sep 17 00:00:00 2001 From: Dhawal Kapil Date: Sat, 12 Oct 2019 19:24:18 +0530 Subject: [PATCH 56/59] BAEL-17684 POM Properties Cleanup -Properties cleanup --- animal-sniffer-mvn-plugin/pom.xml | 1 - apache-avro/pom.xml | 17 ----------------- apache-fop/pom.xml | 1 - apache-geode/pom.xml | 19 ------------------- apache-meecrowave/pom.xml | 8 -------- apache-olingo/olingo2/pom.xml | 1 - apache-pulsar/pom.xml | 4 +--- apache-solrj/pom.xml | 1 - apache-spark/pom.xml | 11 ----------- apache-velocity/pom.xml | 1 - aws-lambda/pom.xml | 2 -- aws/pom.xml | 1 - axon/pom.xml | 1 - azure/pom.xml | 1 - parent-java/pom.xml | 1 - parent-kotlin/pom.xml | 10 +++------- parent-spring-4/pom.xml | 1 - parent-spring-5/pom.xml | 1 - 18 files changed, 4 insertions(+), 78 deletions(-) diff --git a/animal-sniffer-mvn-plugin/pom.xml b/animal-sniffer-mvn-plugin/pom.xml index 55e37e2ec4..fd8f6d3d8c 100644 --- a/animal-sniffer-mvn-plugin/pom.xml +++ b/animal-sniffer-mvn-plugin/pom.xml @@ -1,7 +1,6 @@ 4.0.0 - com.baeldung animal-sniffer-mvn-plugin 1.0-SNAPSHOT animal-sniffer-mvn-plugin diff --git a/apache-avro/pom.xml b/apache-avro/pom.xml index e6fb4d24ff..6baae9c541 100644 --- a/apache-avro/pom.xml +++ b/apache-avro/pom.xml @@ -14,12 +14,6 @@ - - junit - junit - ${junit.version} - test - org.slf4j slf4j-simple @@ -46,15 +40,6 @@ - - org.apache.maven.plugins - maven-compiler-plugin - ${compiler-plugin.version} - - ${java.version} - ${java.version} - - org.apache.avro avro-maven-plugin @@ -79,8 +64,6 @@ - UTF-8 - 3.5 1.8.2 1.7.25 diff --git a/apache-fop/pom.xml b/apache-fop/pom.xml index 879eb4f111..150756d51d 100644 --- a/apache-fop/pom.xml +++ b/apache-fop/pom.xml @@ -1,7 +1,6 @@ 4.0.0 - com.baeldung apache-fop 0.1-SNAPSHOT apache-fop diff --git a/apache-geode/pom.xml b/apache-geode/pom.xml index 15c7e04d29..57195a5991 100644 --- a/apache-geode/pom.xml +++ b/apache-geode/pom.xml @@ -17,27 +17,8 @@ org.apache.geode geode-core - ${geode.core} - - - junit - junit - ${junit.version} - - - - - org.apache.maven.plugins - maven-compiler-plugin - - ${java.version} - ${java.version} - - - - 1.6.0 diff --git a/apache-meecrowave/pom.xml b/apache-meecrowave/pom.xml index 4eb1094f94..51c6514992 100644 --- a/apache-meecrowave/pom.xml +++ b/apache-meecrowave/pom.xml @@ -1,7 +1,6 @@ 4.0.0 - com.baeldung apache-meecrowave 0.0.1 apache-meecrowave @@ -38,13 +37,6 @@ ${meecrowave-junit.version} test - - - junit - junit - ${junit.version} - test - diff --git a/apache-olingo/olingo2/pom.xml b/apache-olingo/olingo2/pom.xml index 727e6ca484..95b123efbc 100644 --- a/apache-olingo/olingo2/pom.xml +++ b/apache-olingo/olingo2/pom.xml @@ -5,7 +5,6 @@ 4.0.0 org.baeldung.examples.olingo2 olingo2 - 0.0.1-SNAPSHOT olingo2 Sample Olingo 2 Project diff --git a/apache-pulsar/pom.xml b/apache-pulsar/pom.xml index 8a0882dae1..fdd9ae1e95 100644 --- a/apache-pulsar/pom.xml +++ b/apache-pulsar/pom.xml @@ -24,8 +24,6 @@ - 1.8 - 1.8 - 2.1.1-incubating + 2.1.1-incubating diff --git a/apache-solrj/pom.xml b/apache-solrj/pom.xml index 1227fdca46..b19ceb1e48 100644 --- a/apache-solrj/pom.xml +++ b/apache-solrj/pom.xml @@ -1,7 +1,6 @@ 4.0.0 - com.baeldung apache-solrj 0.0.1-SNAPSHOT apache-solrj diff --git a/apache-spark/pom.xml b/apache-spark/pom.xml index 3df81e5aee..41fd51d9fd 100644 --- a/apache-spark/pom.xml +++ b/apache-spark/pom.xml @@ -2,7 +2,6 @@ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 - com.baeldung apache-spark 1.0-SNAPSHOT apache-spark @@ -59,15 +58,6 @@ - - org.apache.maven.plugins - maven-compiler-plugin - ${maven-compiler-plugin.version} - - ${java.version} - ${java.version} - - maven-assembly-plugin @@ -95,7 +85,6 @@ 2.3.0 2.3.0 1.5.2 - 3.2 diff --git a/apache-velocity/pom.xml b/apache-velocity/pom.xml index 24ab0b861d..b370b11cc1 100644 --- a/apache-velocity/pom.xml +++ b/apache-velocity/pom.xml @@ -1,7 +1,6 @@ 4.0.0 - com.baeldung 0.1-SNAPSHOT apache-velocity apache-velocity diff --git a/aws-lambda/pom.xml b/aws-lambda/pom.xml index c799718e61..1f3c31f87c 100644 --- a/aws-lambda/pom.xml +++ b/aws-lambda/pom.xml @@ -2,7 +2,6 @@ 4.0.0 - com.baeldung aws-lambda 0.1.0-SNAPSHOT aws-lambda @@ -88,7 +87,6 @@ 1.1.1 - 20180130 2.5 1.3.0 1.2.0 diff --git a/aws/pom.xml b/aws/pom.xml index 75d5aac1eb..45a30f96ba 100644 --- a/aws/pom.xml +++ b/aws/pom.xml @@ -1,7 +1,6 @@ 4.0.0 - com.baeldung aws 0.1.0-SNAPSHOT aws diff --git a/axon/pom.xml b/axon/pom.xml index 3d30cceb83..21e21f0ef2 100644 --- a/axon/pom.xml +++ b/axon/pom.xml @@ -30,7 +30,6 @@ org.springframework.boot spring-boot-autoconfigure - ${spring-boot.version} compile diff --git a/azure/pom.xml b/azure/pom.xml index 270b3e4829..3d9c296748 100644 --- a/azure/pom.xml +++ b/azure/pom.xml @@ -2,7 +2,6 @@ 4.0.0 - com.baeldung azure 0.1 azure diff --git a/parent-java/pom.xml b/parent-java/pom.xml index 09e2596d0a..fd3028680d 100644 --- a/parent-java/pom.xml +++ b/parent-java/pom.xml @@ -1,7 +1,6 @@ 4.0.0 - com.baeldung parent-java 0.0.1-SNAPSHOT parent-java diff --git a/parent-kotlin/pom.xml b/parent-kotlin/pom.xml index d993fad3c6..bda5fb70e7 100644 --- a/parent-kotlin/pom.xml +++ b/parent-kotlin/pom.xml @@ -56,18 +56,15 @@ org.jetbrains.kotlin kotlin-stdlib-jdk8 - ${kotlin.version} - + org.jetbrains.kotlin kotlin-stdlib - ${kotlin.version} - + org.jetbrains.kotlin kotlin-reflect - ${kotlin.version} - + org.jetbrains.kotlinx @@ -93,7 +90,6 @@ org.jetbrains.kotlin kotlin-test-junit - ${kotlin.version} test diff --git a/parent-spring-4/pom.xml b/parent-spring-4/pom.xml index 390934ca7b..b98d962580 100644 --- a/parent-spring-4/pom.xml +++ b/parent-spring-4/pom.xml @@ -1,7 +1,6 @@ 4.0.0 - com.baeldung parent-spring-4 0.0.1-SNAPSHOT parent-spring-4 diff --git a/parent-spring-5/pom.xml b/parent-spring-5/pom.xml index e43e129c7f..f126006bcb 100644 --- a/parent-spring-5/pom.xml +++ b/parent-spring-5/pom.xml @@ -2,7 +2,6 @@ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 - com.baeldung parent-spring-5 0.0.1-SNAPSHOT parent-spring-5 From 35905797360b30583f069ce3eb38bfc94a69e48c Mon Sep 17 00:00:00 2001 From: Dhawal Kapil Date: Sat, 12 Oct 2019 19:28:32 +0530 Subject: [PATCH 57/59] BAEL-17684 POM Properties Cleanup -Properties cleanup --- apache-geode/pom.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/apache-geode/pom.xml b/apache-geode/pom.xml index 57195a5991..195dfadd20 100644 --- a/apache-geode/pom.xml +++ b/apache-geode/pom.xml @@ -17,6 +17,7 @@ org.apache.geode geode-core + ${geode.core} From bcb8a6c112d3bffba3ee599148cf890453ce2324 Mon Sep 17 00:00:00 2001 From: Ali Dehghani Date: Sat, 12 Oct 2019 22:43:57 +0330 Subject: [PATCH 58/59] Applied the requested changes. --- core-kotlin/src/main/kotlin/com/baeldung/builder/FoodOrder.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core-kotlin/src/main/kotlin/com/baeldung/builder/FoodOrder.kt b/core-kotlin/src/main/kotlin/com/baeldung/builder/FoodOrder.kt index 1384cd9937..3a8a4b9857 100644 --- a/core-kotlin/src/main/kotlin/com/baeldung/builder/FoodOrder.kt +++ b/core-kotlin/src/main/kotlin/com/baeldung/builder/FoodOrder.kt @@ -1,6 +1,6 @@ package com.baeldung.builder -class FoodOrder( +class FoodOrder private constructor( val bread: String?, val condiments: String?, val meat: String?, From 2f9e9d90c766770eef5898729d757332b9e09da5 Mon Sep 17 00:00:00 2001 From: Martin van Wingerden Date: Sat, 12 Oct 2019 22:57:11 +0200 Subject: [PATCH 59/59] BAEL-2350 - DataJpaTest Configuration not found (#7996) * BAEL-2350 - DataJpaTest Configuration not found Add a simple example to show how the correct (package) structure is for using @DataJpaTest * Removed link as requested --- pom.xml | 2 + spring-boot-configuration/README.md | 5 ++ .../data-jpa-application/pom.xml | 12 ++++ .../baeldung/data/jpa/ApplicationFound.java | 7 +++ .../jpa/application/ApplicationNotFound.java | 7 +++ .../baeldung/data/jpa/DataJpaUnitTest.java | 23 +++++++ .../data-jpa-library/pom.xml | 12 ++++ .../data/jpa/libarary/model/Example.java | 13 ++++ .../baeldung/data/jpa/TestApplication.java | 7 +++ .../data/jpa/libarary/DataJpaUnitTest.java | 24 ++++++++ spring-boot-configuration/pom.xml | 61 +++++++++++++++++++ spring-boot-exceptions/README.md | 4 -- 12 files changed, 173 insertions(+), 4 deletions(-) create mode 100644 spring-boot-configuration/README.md create mode 100644 spring-boot-configuration/data-jpa-application/pom.xml create mode 100644 spring-boot-configuration/data-jpa-application/src/main/java/com/baeldung/data/jpa/ApplicationFound.java create mode 100644 spring-boot-configuration/data-jpa-application/src/main/java/com/baeldung/data/jpa/application/ApplicationNotFound.java create mode 100644 spring-boot-configuration/data-jpa-application/src/test/java/com/baeldung/data/jpa/DataJpaUnitTest.java create mode 100644 spring-boot-configuration/data-jpa-library/pom.xml create mode 100644 spring-boot-configuration/data-jpa-library/src/main/java/com/baeldung/data/jpa/libarary/model/Example.java create mode 100644 spring-boot-configuration/data-jpa-library/src/test/java/com/baeldung/data/jpa/TestApplication.java create mode 100644 spring-boot-configuration/data-jpa-library/src/test/java/com/baeldung/data/jpa/libarary/DataJpaUnitTest.java create mode 100644 spring-boot-configuration/pom.xml delete mode 100644 spring-boot-exceptions/README.md diff --git a/pom.xml b/pom.xml index 02f4e720c0..196870800c 100644 --- a/pom.xml +++ b/pom.xml @@ -594,6 +594,7 @@ tensorflow-java spf4j + spring-boot-configuration spring-boot-flowable spring-boot-mvc-2 spring-boot-performance @@ -681,6 +682,7 @@ spring-boot-bootstrap spring-boot-camel + spring-boot-configuration spring-boot-client spring-boot-crud diff --git a/spring-boot-configuration/README.md b/spring-boot-configuration/README.md new file mode 100644 index 0000000000..c449538a9d --- /dev/null +++ b/spring-boot-configuration/README.md @@ -0,0 +1,5 @@ +# Spring Boot Configuration + +This module contains articles about Spring Boot Configuration. + +### Relevant Articles: diff --git a/spring-boot-configuration/data-jpa-application/pom.xml b/spring-boot-configuration/data-jpa-application/pom.xml new file mode 100644 index 0000000000..b1bf6fda43 --- /dev/null +++ b/spring-boot-configuration/data-jpa-application/pom.xml @@ -0,0 +1,12 @@ + + 4.0.0 + data-jpa-application + 0.0.1-SNAPSHOT + + + com.baeldung.spring-boot-configuration + spring-boot-configuration + 0.0.1-SNAPSHOT + + \ No newline at end of file diff --git a/spring-boot-configuration/data-jpa-application/src/main/java/com/baeldung/data/jpa/ApplicationFound.java b/spring-boot-configuration/data-jpa-application/src/main/java/com/baeldung/data/jpa/ApplicationFound.java new file mode 100644 index 0000000000..50efb42a19 --- /dev/null +++ b/spring-boot-configuration/data-jpa-application/src/main/java/com/baeldung/data/jpa/ApplicationFound.java @@ -0,0 +1,7 @@ +package com.baeldung.data.jpa; + +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class ApplicationFound { +} diff --git a/spring-boot-configuration/data-jpa-application/src/main/java/com/baeldung/data/jpa/application/ApplicationNotFound.java b/spring-boot-configuration/data-jpa-application/src/main/java/com/baeldung/data/jpa/application/ApplicationNotFound.java new file mode 100644 index 0000000000..8e7362f626 --- /dev/null +++ b/spring-boot-configuration/data-jpa-application/src/main/java/com/baeldung/data/jpa/application/ApplicationNotFound.java @@ -0,0 +1,7 @@ +package com.baeldung.data.jpa.application; + +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class ApplicationNotFound { +} diff --git a/spring-boot-configuration/data-jpa-application/src/test/java/com/baeldung/data/jpa/DataJpaUnitTest.java b/spring-boot-configuration/data-jpa-application/src/test/java/com/baeldung/data/jpa/DataJpaUnitTest.java new file mode 100644 index 0000000000..ac7ff8561b --- /dev/null +++ b/spring-boot-configuration/data-jpa-application/src/test/java/com/baeldung/data/jpa/DataJpaUnitTest.java @@ -0,0 +1,23 @@ +package com.baeldung.data.jpa; + +import static org.junit.Assert.assertNotNull; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.autoconfigure.orm.jpa.DataJpaTest; +import org.springframework.boot.test.autoconfigure.orm.jpa.TestEntityManager; +import org.springframework.test.context.junit4.SpringRunner; + +@RunWith(SpringRunner.class) +@DataJpaTest +public class DataJpaUnitTest { + + @Autowired + private TestEntityManager entityManager; + + @Test + public void givenACorrectSetup_thenAnEntityManagerWillBeAvailable() { + assertNotNull(entityManager); + } +} diff --git a/spring-boot-configuration/data-jpa-library/pom.xml b/spring-boot-configuration/data-jpa-library/pom.xml new file mode 100644 index 0000000000..1534e7ed23 --- /dev/null +++ b/spring-boot-configuration/data-jpa-library/pom.xml @@ -0,0 +1,12 @@ + + 4.0.0 + data-jpa-library + 0.0.1-SNAPSHOT + + + com.baeldung.spring-boot-configuration + spring-boot-configuration + 0.0.1-SNAPSHOT + + \ No newline at end of file diff --git a/spring-boot-configuration/data-jpa-library/src/main/java/com/baeldung/data/jpa/libarary/model/Example.java b/spring-boot-configuration/data-jpa-library/src/main/java/com/baeldung/data/jpa/libarary/model/Example.java new file mode 100644 index 0000000000..d5c41d303e --- /dev/null +++ b/spring-boot-configuration/data-jpa-library/src/main/java/com/baeldung/data/jpa/libarary/model/Example.java @@ -0,0 +1,13 @@ +package com.baeldung.data.jpa.libarary.model; + +public class Example { + private String example; + + public String getExample() { + return example; + } + + public void setExample(String example) { + this.example = example; + } +} diff --git a/spring-boot-configuration/data-jpa-library/src/test/java/com/baeldung/data/jpa/TestApplication.java b/spring-boot-configuration/data-jpa-library/src/test/java/com/baeldung/data/jpa/TestApplication.java new file mode 100644 index 0000000000..83f60b388b --- /dev/null +++ b/spring-boot-configuration/data-jpa-library/src/test/java/com/baeldung/data/jpa/TestApplication.java @@ -0,0 +1,7 @@ +package com.baeldung.data.jpa; + +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class TestApplication { +} diff --git a/spring-boot-configuration/data-jpa-library/src/test/java/com/baeldung/data/jpa/libarary/DataJpaUnitTest.java b/spring-boot-configuration/data-jpa-library/src/test/java/com/baeldung/data/jpa/libarary/DataJpaUnitTest.java new file mode 100644 index 0000000000..31f12a6093 --- /dev/null +++ b/spring-boot-configuration/data-jpa-library/src/test/java/com/baeldung/data/jpa/libarary/DataJpaUnitTest.java @@ -0,0 +1,24 @@ +package com.baeldung.data.jpa.libarary; + +import static org.junit.Assert.assertNotNull; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.autoconfigure.orm.jpa.DataJpaTest; +import org.springframework.boot.test.autoconfigure.orm.jpa.TestEntityManager; +import org.springframework.test.context.junit4.SpringRunner; + +@RunWith(SpringRunner.class) +@DataJpaTest +public class DataJpaUnitTest { + + @Autowired + private TestEntityManager entityManager; + + @Test + public void givenACorrectSetup_thenAnEntityManagerWillBeAvailable() { + assertNotNull(entityManager); + } + +} diff --git a/spring-boot-configuration/pom.xml b/spring-boot-configuration/pom.xml new file mode 100644 index 0000000000..e4473c3f2d --- /dev/null +++ b/spring-boot-configuration/pom.xml @@ -0,0 +1,61 @@ + + 4.0.0 + com.baeldung.spring-boot-configuration + spring-boot-configuration + 0.0.1-SNAPSHOT + pom + + + com.baeldung + parent-boot-2 + 0.0.1-SNAPSHOT + ../parent-boot-2/pom.xml + + + + data-jpa-library + data-jpa-application + + + + + + org.springframework.boot + spring-boot-dependencies + ${spring-boot.version} + pom + import + + + + + + + org.springframework.boot + spring-boot-starter-data-jpa + ${spring-boot.version} + + + + org.springframework.boot + spring-boot-starter-test + ${spring-boot.version} + test + + + + com.h2database + h2 + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + \ No newline at end of file diff --git a/spring-boot-exceptions/README.md b/spring-boot-exceptions/README.md deleted file mode 100644 index bbc272aec4..0000000000 --- a/spring-boot-exceptions/README.md +++ /dev/null @@ -1,4 +0,0 @@ - -### Relevant Articles: - -- [Rendering Exceptions in JSON with Spring](https://www.baeldung.com/spring-exceptions-json)