From c7cd7d0744d5b32a55c7230068d9ed55ba723167 Mon Sep 17 00:00:00 2001 From: mherbaghinyan Date: Fri, 18 May 2018 16:10:02 +0400 Subject: [PATCH 01/55] list inject test --- .../baeldung/collection/CollectionConfig.java | 21 +++++++++++++++++++ .../collection/CollectionInjectionDemo.java | 16 ++++++++++++++ .../baeldung/collection/CollectionsBean.java | 18 ++++++++++++++++ 3 files changed, 55 insertions(+) create mode 100644 spring-core/src/main/java/com/baeldung/collection/CollectionConfig.java create mode 100644 spring-core/src/main/java/com/baeldung/collection/CollectionInjectionDemo.java create mode 100644 spring-core/src/main/java/com/baeldung/collection/CollectionsBean.java diff --git a/spring-core/src/main/java/com/baeldung/collection/CollectionConfig.java b/spring-core/src/main/java/com/baeldung/collection/CollectionConfig.java new file mode 100644 index 0000000000..6034ac9e02 --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/collection/CollectionConfig.java @@ -0,0 +1,21 @@ +package com.baeldung.collection; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +import java.util.Arrays; +import java.util.List; + +@Configuration +public class CollectionConfig { + + @Bean + public CollectionsBean getCollectionsBean() { + return new CollectionsBean(); + } + + @Bean + public List nameList(){ + return Arrays.asList("John", "Adam", "Harry"); + } +} diff --git a/spring-core/src/main/java/com/baeldung/collection/CollectionInjectionDemo.java b/spring-core/src/main/java/com/baeldung/collection/CollectionInjectionDemo.java new file mode 100644 index 0000000000..10eb6203a9 --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/collection/CollectionInjectionDemo.java @@ -0,0 +1,16 @@ +package com.baeldung.collection; + +import org.springframework.context.ApplicationContext; +import org.springframework.context.annotation.AnnotationConfigApplicationContext; + +/** + * Created by Gebruiker on 5/18/2018. + */ +public class CollectionInjectionDemo { + + public static void main(String[] args) { + ApplicationContext context = new AnnotationConfigApplicationContext(CollectionConfig.class); + CollectionsBean collectionsBean = (CollectionsBean)context.getBean(CollectionsBean.class); + collectionsBean.printNameList(); + } +} diff --git a/spring-core/src/main/java/com/baeldung/collection/CollectionsBean.java b/spring-core/src/main/java/com/baeldung/collection/CollectionsBean.java new file mode 100644 index 0000000000..80db4ae6c3 --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/collection/CollectionsBean.java @@ -0,0 +1,18 @@ +package com.baeldung.collection; + +import org.springframework.beans.factory.annotation.Autowired; + +import java.util.List; + +/** + * Created by Gebruiker on 5/18/2018. + */ +public class CollectionsBean { + + @Autowired + private List nameList; + + public void printNameList() { + System.out.println(nameList); + } +} From d73f653eb036f39e01d3c32a389ec9e942d6a549 Mon Sep 17 00:00:00 2001 From: mherbaghinyan Date: Sat, 19 May 2018 12:50:48 +0400 Subject: [PATCH 02/55] list, set injection --- .../com/baeldung/collection/CollectionConfig.java | 5 +++-- .../collection/CollectionInjectionDemo.java | 4 +++- .../com/baeldung/collection/CollectionsBean.java | 14 ++++++++++++++ 3 files changed, 20 insertions(+), 3 deletions(-) diff --git a/spring-core/src/main/java/com/baeldung/collection/CollectionConfig.java b/spring-core/src/main/java/com/baeldung/collection/CollectionConfig.java index 6034ac9e02..8ccf76ebc5 100644 --- a/spring-core/src/main/java/com/baeldung/collection/CollectionConfig.java +++ b/spring-core/src/main/java/com/baeldung/collection/CollectionConfig.java @@ -4,6 +4,7 @@ import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import java.util.Arrays; +import java.util.HashSet; import java.util.List; @Configuration @@ -11,11 +12,11 @@ public class CollectionConfig { @Bean public CollectionsBean getCollectionsBean() { - return new CollectionsBean(); + return new CollectionsBean(new HashSet<>(Arrays.asList("John", "Adam", "Harry"))); } @Bean public List nameList(){ - return Arrays.asList("John", "Adam", "Harry"); + return Arrays.asList("John", "Adam", "Harry", null); } } diff --git a/spring-core/src/main/java/com/baeldung/collection/CollectionInjectionDemo.java b/spring-core/src/main/java/com/baeldung/collection/CollectionInjectionDemo.java index 10eb6203a9..81d804bce9 100644 --- a/spring-core/src/main/java/com/baeldung/collection/CollectionInjectionDemo.java +++ b/spring-core/src/main/java/com/baeldung/collection/CollectionInjectionDemo.java @@ -9,8 +9,10 @@ import org.springframework.context.annotation.AnnotationConfigApplicationContext public class CollectionInjectionDemo { public static void main(String[] args) { + ApplicationContext context = new AnnotationConfigApplicationContext(CollectionConfig.class); - CollectionsBean collectionsBean = (CollectionsBean)context.getBean(CollectionsBean.class); + CollectionsBean collectionsBean = context.getBean(CollectionsBean.class); collectionsBean.printNameList(); + collectionsBean.printNameSet(); } } diff --git a/spring-core/src/main/java/com/baeldung/collection/CollectionsBean.java b/spring-core/src/main/java/com/baeldung/collection/CollectionsBean.java index 80db4ae6c3..2d86a45f70 100644 --- a/spring-core/src/main/java/com/baeldung/collection/CollectionsBean.java +++ b/spring-core/src/main/java/com/baeldung/collection/CollectionsBean.java @@ -3,6 +3,7 @@ package com.baeldung.collection; import org.springframework.beans.factory.annotation.Autowired; import java.util.List; +import java.util.Set; /** * Created by Gebruiker on 5/18/2018. @@ -12,7 +13,20 @@ public class CollectionsBean { @Autowired private List nameList; + private Set nameSet; + + public CollectionsBean() { + } + + public CollectionsBean(Set strings) { + this.nameSet = strings; + } + public void printNameList() { System.out.println(nameList); } + + public void printNameSet() { + System.out.println(nameSet); + } } From 4cdf7fe9efdf7345c30449ed24d4243efe1adbf6 Mon Sep 17 00:00:00 2001 From: mherbaghinyan Date: Mon, 21 May 2018 12:15:30 +0400 Subject: [PATCH 03/55] map injection --- .../com/baeldung/collection/CollectionConfig.java | 13 ++++++++++--- .../collection/CollectionInjectionDemo.java | 1 + .../com/baeldung/collection/CollectionsBean.java | 12 ++++++++++++ 3 files changed, 23 insertions(+), 3 deletions(-) diff --git a/spring-core/src/main/java/com/baeldung/collection/CollectionConfig.java b/spring-core/src/main/java/com/baeldung/collection/CollectionConfig.java index 8ccf76ebc5..c1881473e7 100644 --- a/spring-core/src/main/java/com/baeldung/collection/CollectionConfig.java +++ b/spring-core/src/main/java/com/baeldung/collection/CollectionConfig.java @@ -3,9 +3,7 @@ package com.baeldung.collection; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; -import java.util.Arrays; -import java.util.HashSet; -import java.util.List; +import java.util.*; @Configuration public class CollectionConfig { @@ -19,4 +17,13 @@ public class CollectionConfig { public List nameList(){ return Arrays.asList("John", "Adam", "Harry", null); } + + @Bean + public Map nameMap(){ + Map nameMap = new HashMap<>(); + nameMap.put(1, "John"); + nameMap.put(2, "Adam"); + nameMap.put(3, "Harry"); + return nameMap; + } } diff --git a/spring-core/src/main/java/com/baeldung/collection/CollectionInjectionDemo.java b/spring-core/src/main/java/com/baeldung/collection/CollectionInjectionDemo.java index 81d804bce9..9a22ea7c0f 100644 --- a/spring-core/src/main/java/com/baeldung/collection/CollectionInjectionDemo.java +++ b/spring-core/src/main/java/com/baeldung/collection/CollectionInjectionDemo.java @@ -14,5 +14,6 @@ public class CollectionInjectionDemo { CollectionsBean collectionsBean = context.getBean(CollectionsBean.class); collectionsBean.printNameList(); collectionsBean.printNameSet(); + collectionsBean.printNameMap(); } } diff --git a/spring-core/src/main/java/com/baeldung/collection/CollectionsBean.java b/spring-core/src/main/java/com/baeldung/collection/CollectionsBean.java index 2d86a45f70..3083c35d87 100644 --- a/spring-core/src/main/java/com/baeldung/collection/CollectionsBean.java +++ b/spring-core/src/main/java/com/baeldung/collection/CollectionsBean.java @@ -3,6 +3,7 @@ package com.baeldung.collection; import org.springframework.beans.factory.annotation.Autowired; import java.util.List; +import java.util.Map; import java.util.Set; /** @@ -15,6 +16,8 @@ public class CollectionsBean { private Set nameSet; + private Map nameMap; + public CollectionsBean() { } @@ -22,6 +25,11 @@ public class CollectionsBean { this.nameSet = strings; } + @Autowired + public void setNameMap(Map nameMap) { + this.nameMap = nameMap; + } + public void printNameList() { System.out.println(nameList); } @@ -29,4 +37,8 @@ public class CollectionsBean { public void printNameSet() { System.out.println(nameSet); } + + public void printNameMap() { + System.out.println(nameMap); + } } From a6655de20c934644e3835114c8b5be9694f51bf0 Mon Sep 17 00:00:00 2001 From: mherbaghinyan Date: Tue, 22 May 2018 16:33:25 +0400 Subject: [PATCH 04/55] bean reference injection --- .../com/baeldung/collection/BaeldungBean.java | 7 +++++++ .../com/baeldung/collection/CollectionConfig.java | 15 +++++++++++++++ .../collection/CollectionInjectionDemo.java | 1 + .../com/baeldung/collection/CollectionsBean.java | 7 +++++++ 4 files changed, 30 insertions(+) create mode 100644 spring-core/src/main/java/com/baeldung/collection/BaeldungBean.java diff --git a/spring-core/src/main/java/com/baeldung/collection/BaeldungBean.java b/spring-core/src/main/java/com/baeldung/collection/BaeldungBean.java new file mode 100644 index 0000000000..6bdc841e10 --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/collection/BaeldungBean.java @@ -0,0 +1,7 @@ +package com.baeldung.collection; + +/** + * Created by Gebruiker on 5/22/2018. + */ +public class BaeldungBean { +} diff --git a/spring-core/src/main/java/com/baeldung/collection/CollectionConfig.java b/spring-core/src/main/java/com/baeldung/collection/CollectionConfig.java index c1881473e7..f683790ce5 100644 --- a/spring-core/src/main/java/com/baeldung/collection/CollectionConfig.java +++ b/spring-core/src/main/java/com/baeldung/collection/CollectionConfig.java @@ -26,4 +26,19 @@ public class CollectionConfig { nameMap.put(3, "Harry"); return nameMap; } + + @Bean + public BaeldungBean getElement() { + return new BaeldungBean(); + } + + @Bean + public BaeldungBean getAnotherElement() { + return new BaeldungBean(); + } + + @Bean + public BaeldungBean getOneMoreElement() { + return new BaeldungBean(); + } } diff --git a/spring-core/src/main/java/com/baeldung/collection/CollectionInjectionDemo.java b/spring-core/src/main/java/com/baeldung/collection/CollectionInjectionDemo.java index 9a22ea7c0f..2e0d9eb8d8 100644 --- a/spring-core/src/main/java/com/baeldung/collection/CollectionInjectionDemo.java +++ b/spring-core/src/main/java/com/baeldung/collection/CollectionInjectionDemo.java @@ -15,5 +15,6 @@ public class CollectionInjectionDemo { collectionsBean.printNameList(); collectionsBean.printNameSet(); collectionsBean.printNameMap(); + collectionsBean.printBeanList(); } } diff --git a/spring-core/src/main/java/com/baeldung/collection/CollectionsBean.java b/spring-core/src/main/java/com/baeldung/collection/CollectionsBean.java index 3083c35d87..071672f35c 100644 --- a/spring-core/src/main/java/com/baeldung/collection/CollectionsBean.java +++ b/spring-core/src/main/java/com/baeldung/collection/CollectionsBean.java @@ -18,6 +18,9 @@ public class CollectionsBean { private Map nameMap; + @Autowired + private List beanList; + public CollectionsBean() { } @@ -41,4 +44,8 @@ public class CollectionsBean { public void printNameMap() { System.out.println(nameMap); } + + public void printBeanList() { + System.out.println(beanList); + } } From fa60d4e69e869547b15eb334b03bb78e42a71c5b Mon Sep 17 00:00:00 2001 From: mherbaghinyan Date: Tue, 22 May 2018 17:07:08 +0400 Subject: [PATCH 05/55] @order --- .../main/java/com/baeldung/collection/CollectionConfig.java | 6 ++++++ .../main/java/com/baeldung/collection/CollectionsBean.java | 2 ++ 2 files changed, 8 insertions(+) diff --git a/spring-core/src/main/java/com/baeldung/collection/CollectionConfig.java b/spring-core/src/main/java/com/baeldung/collection/CollectionConfig.java index f683790ce5..589517f69d 100644 --- a/spring-core/src/main/java/com/baeldung/collection/CollectionConfig.java +++ b/spring-core/src/main/java/com/baeldung/collection/CollectionConfig.java @@ -1,7 +1,9 @@ package com.baeldung.collection; +import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; +import org.springframework.core.annotation.Order; import java.util.*; @@ -28,16 +30,20 @@ public class CollectionConfig { } @Bean + @Qualifier("CollectionsBean") + @Order(2) public BaeldungBean getElement() { return new BaeldungBean(); } @Bean + @Order(3) public BaeldungBean getAnotherElement() { return new BaeldungBean(); } @Bean + @Order(1) public BaeldungBean getOneMoreElement() { return new BaeldungBean(); } diff --git a/spring-core/src/main/java/com/baeldung/collection/CollectionsBean.java b/spring-core/src/main/java/com/baeldung/collection/CollectionsBean.java index 071672f35c..5c6965b623 100644 --- a/spring-core/src/main/java/com/baeldung/collection/CollectionsBean.java +++ b/spring-core/src/main/java/com/baeldung/collection/CollectionsBean.java @@ -1,6 +1,7 @@ package com.baeldung.collection; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Qualifier; import java.util.List; import java.util.Map; @@ -19,6 +20,7 @@ public class CollectionsBean { private Map nameMap; @Autowired + @Qualifier("CollectionsBean") private List beanList; public CollectionsBean() { From 543c87fa7002f4bb4ebb953da5707884674cb680 Mon Sep 17 00:00:00 2001 From: Chris Oberle Date: Tue, 29 May 2018 09:35:09 -0400 Subject: [PATCH 06/55] initial import of source for BAEL-1786 --- core-java-8/pom.xml | 10 +++++ .../java/com/baeldung/reflect/Person.java | 42 +++++++++++++++++++ .../baeldung/reflect/MethodParamNameTest.java | 33 +++++++++++++++ 3 files changed, 85 insertions(+) create mode 100644 core-java-8/src/main/java/com/baeldung/reflect/Person.java create mode 100644 core-java-8/src/test/java/com/baeldung/reflect/MethodParamNameTest.java diff --git a/core-java-8/pom.xml b/core-java-8/pom.xml index aab349781a..20db1e1146 100644 --- a/core-java-8/pom.xml +++ b/core-java-8/pom.xml @@ -195,6 +195,16 @@ + + org.apache.maven.plugins + maven-compiler-plugin + 3.1 + + 1.8 + 1.8 + -parameters + + org.springframework.boot spring-boot-maven-plugin diff --git a/core-java-8/src/main/java/com/baeldung/reflect/Person.java b/core-java-8/src/main/java/com/baeldung/reflect/Person.java new file mode 100644 index 0000000000..b78536dc2c --- /dev/null +++ b/core-java-8/src/main/java/com/baeldung/reflect/Person.java @@ -0,0 +1,42 @@ +package com.baeldung.reflect; + +public class Person { + + private String firstName; + private String lastName; + private Integer age; + + public Person(String firstName, String lastName, Integer age) { + this.firstName = firstName; + this.lastName = lastName; + this.age = age; + } + + public Person() {} + + public String getFirstName() { + return firstName; + } + + public void setFirstName(String firstName) { + this.firstName = firstName; + } + + public String getLastName() { + return lastName; + } + + public void setLastName(String lastName) { + this.lastName = lastName; + } + + public Integer getAge() { + return age; + } + + public void setAge(Integer age) { + this.age = age; + } + + +} diff --git a/core-java-8/src/test/java/com/baeldung/reflect/MethodParamNameTest.java b/core-java-8/src/test/java/com/baeldung/reflect/MethodParamNameTest.java new file mode 100644 index 0000000000..be72762c1d --- /dev/null +++ b/core-java-8/src/test/java/com/baeldung/reflect/MethodParamNameTest.java @@ -0,0 +1,33 @@ +package com.baeldung.reflect; + +import static org.assertj.core.api.Assertions.assertThat; + +import java.lang.reflect.Parameter; +import java.util.Arrays; +import java.util.List; + +import static java.util.stream.Collectors.toList; +import org.junit.Test; + +public class MethodParamNameTest { + + @Test + public void whenGetConstructorParams_thenOk() throws NoSuchMethodException, SecurityException { + List parameters + = Arrays.asList( + Person.class.getConstructor(String.class, String.class, Integer.class) + .getParameters()); + List parameterNames + = parameters.stream().map(Parameter::getName).collect(toList()); + assertThat(parameterNames) + .containsExactlyInAnyOrder("lastName", "firstName", "age"); + } + + @Test + public void whenGetMethodParams_thenOk() throws NoSuchMethodException, SecurityException { + List parameters + = Arrays.asList( + Person.class.getMethod("setLastName", String.class).getParameters()); + assertThat(parameters.get(0).getName()).isEqualTo("lastName"); + } +} From d683b370f6e579b7873589093299e1769a21164d Mon Sep 17 00:00:00 2001 From: Chris Oberle Date: Wed, 30 May 2018 07:40:26 -0400 Subject: [PATCH 07/55] refactor example --- .../java/com/baeldung/reflect/Person.java | 38 ++++--------------- .../baeldung/reflect/MethodParamNameTest.java | 25 ++++++------ 2 files changed, 20 insertions(+), 43 deletions(-) diff --git a/core-java-8/src/main/java/com/baeldung/reflect/Person.java b/core-java-8/src/main/java/com/baeldung/reflect/Person.java index b78536dc2c..fba25aca8b 100644 --- a/core-java-8/src/main/java/com/baeldung/reflect/Person.java +++ b/core-java-8/src/main/java/com/baeldung/reflect/Person.java @@ -2,41 +2,17 @@ package com.baeldung.reflect; public class Person { - private String firstName; - private String lastName; - private Integer age; + private String fullName; - public Person(String firstName, String lastName, Integer age) { - this.firstName = firstName; - this.lastName = lastName; - this.age = age; + public Person(String fullName) { + this.fullName = fullName; } - public Person() {} - - public String getFirstName() { - return firstName; + public void setFullName(String fullName) { + this.fullName = fullName; } - public void setFirstName(String firstName) { - this.firstName = firstName; + public String getFullName() { + return fullName; } - - public String getLastName() { - return lastName; - } - - public void setLastName(String lastName) { - this.lastName = lastName; - } - - public Integer getAge() { - return age; - } - - public void setAge(Integer age) { - this.age = age; - } - - } diff --git a/core-java-8/src/test/java/com/baeldung/reflect/MethodParamNameTest.java b/core-java-8/src/test/java/com/baeldung/reflect/MethodParamNameTest.java index be72762c1d..46c833cfb1 100644 --- a/core-java-8/src/test/java/com/baeldung/reflect/MethodParamNameTest.java +++ b/core-java-8/src/test/java/com/baeldung/reflect/MethodParamNameTest.java @@ -5,29 +5,30 @@ import static org.assertj.core.api.Assertions.assertThat; import java.lang.reflect.Parameter; import java.util.Arrays; import java.util.List; +import java.util.Optional; -import static java.util.stream.Collectors.toList; import org.junit.Test; public class MethodParamNameTest { @Test - public void whenGetConstructorParams_thenOk() throws NoSuchMethodException, SecurityException { + public void whenGetConstructorParams_thenOk() + throws NoSuchMethodException, SecurityException { List parameters - = Arrays.asList( - Person.class.getConstructor(String.class, String.class, Integer.class) - .getParameters()); - List parameterNames - = parameters.stream().map(Parameter::getName).collect(toList()); - assertThat(parameterNames) - .containsExactlyInAnyOrder("lastName", "firstName", "age"); + = Arrays.asList(Person.class.getConstructor(String.class).getParameters()); + Optional parameter + = parameters.stream().filter(Parameter::isNamePresent).findFirst(); + assertThat(parameter.get().getName()).isEqualTo("fullName"); } @Test - public void whenGetMethodParams_thenOk() throws NoSuchMethodException, SecurityException { + public void whenGetMethodParams_thenOk() + throws NoSuchMethodException, SecurityException { List parameters = Arrays.asList( - Person.class.getMethod("setLastName", String.class).getParameters()); - assertThat(parameters.get(0).getName()).isEqualTo("lastName"); + Person.class.getMethod("setFullName", String.class).getParameters()); + Optional parameter + = parameters.stream().filter(Parameter::isNamePresent).findFirst(); + assertThat(parameter.get().getName()).isEqualTo("fullName"); } } From 722dec76cbfd2277e79043f8ca7b662bc43b8b57 Mon Sep 17 00:00:00 2001 From: araknoid Date: Wed, 30 May 2018 13:50:41 +0200 Subject: [PATCH 08/55] Add java.lang.Module API code --- .../java9/modules/ModuleAPIUnitTest.java | 199 ++++++++++++++++++ 1 file changed, 199 insertions(+) create mode 100644 core-java-9/src/test/java/com/baeldung/java9/modules/ModuleAPIUnitTest.java diff --git a/core-java-9/src/test/java/com/baeldung/java9/modules/ModuleAPIUnitTest.java b/core-java-9/src/test/java/com/baeldung/java9/modules/ModuleAPIUnitTest.java new file mode 100644 index 0000000000..aa2fb34753 --- /dev/null +++ b/core-java-9/src/test/java/com/baeldung/java9/modules/ModuleAPIUnitTest.java @@ -0,0 +1,199 @@ +package com.baeldung.java9.modules; + +import static org.hamcrest.CoreMatchers.is; +import static org.hamcrest.CoreMatchers.nullValue; +import static org.hamcrest.Matchers.contains; +import static org.hamcrest.Matchers.containsInAnyOrder; +import static org.hamcrest.collection.IsEmptyCollection.empty; +import static org.junit.Assert.*; + +import java.lang.module.ModuleDescriptor; +import java.lang.module.ModuleDescriptor.*; +import java.sql.Date; +import java.sql.Driver; +import java.util.HashMap; +import java.util.Set; +import java.util.stream.Collectors; + +import org.junit.Before; +import org.junit.Test; + +public class ModuleAPIUnitTest { + + public static final String JAVA_BASE_MODULE_NAME = "java.base"; + + private Module javaBaseModule; + private Module javaSqlModule; + private Module module; + + @Before + public void setUp() { + Class hashMapClass = HashMap.class; + javaBaseModule = hashMapClass.getModule(); + + Class dateClass = Date.class; + javaSqlModule = dateClass.getModule(); + + Class personClass = Person.class; + module = personClass.getModule(); + } + + @Test + public void whenCheckingIfNamed_thenModuleIsNamed() { + assertThat(javaBaseModule.isNamed(), is(true)); + assertThat(javaBaseModule.getName(), is(JAVA_BASE_MODULE_NAME)); + } + + @Test + public void whenCheckingIfNamed_thenModuleIsUnnamed() { + assertThat(module.isNamed(), is(false)); + assertThat(module.getName(), is(nullValue())); + } + + @Test + public void whenExtractingPackagesContainedInAModule_thenModuleContainsOnlyFewOfThem() { + assertTrue(javaBaseModule.getPackages().contains("java.lang.annotation")); + assertFalse(javaBaseModule.getPackages().contains("java.sql")); + } + + @Test + public void whenRetrievingClassLoader_thenClassLoaderIsReturned() { + assertThat( + module.getClassLoader().getClass().getName(), + is("jdk.internal.loader.ClassLoaders$AppClassLoader") + ); + } + + @Test + public void whenGettingAnnotationsPresentOnAModule_thenNoAnnotationsArePresent() { + assertThat(javaBaseModule.getAnnotations().length, is(0)); + } + + @Test + public void whenGettingLayerOfAModule_thenModuleLayerInformationAreAvailable() { + ModuleLayer javaBaseModuleLayer = javaBaseModule.getLayer(); + + assertTrue(javaBaseModuleLayer.configuration().findModule(JAVA_BASE_MODULE_NAME).isPresent()); + assertThat(javaBaseModuleLayer.configuration().modules().size(), is(78)); + assertTrue(javaBaseModuleLayer.parents().get(0).configuration().parents().isEmpty()); + } + + @Test + public void whenRetrievingModuleDescriptor_thenTypeOfModuleIsInferred() { + ModuleDescriptor javaBaseModuleDescriptor = javaBaseModule.getDescriptor(); + ModuleDescriptor javaSqlModuleDescriptor = javaSqlModule.getDescriptor(); + + assertFalse(javaBaseModuleDescriptor.isAutomatic()); + assertFalse(javaBaseModuleDescriptor.isOpen()); + assertFalse(javaSqlModuleDescriptor.isAutomatic()); + assertFalse(javaSqlModuleDescriptor.isOpen()); + } + + @Test + public void givenModuleName_whenBuildingModuleDescriptor_thenBuilt() { + Builder moduleBuilder = ModuleDescriptor.newModule("baeldung.base"); + + ModuleDescriptor moduleDescriptor = moduleBuilder.build(); + + assertThat(moduleDescriptor.name(), is("baeldung.base")); + } + + @Test + public void givenModules_whenAccessingModuleDescriptorRequires_thenRequiresAreReturned() { + Set javaBaseRequires = javaBaseModule.getDescriptor().requires(); + Set javaSqlRequires = javaSqlModule.getDescriptor().requires(); + + Set javaSqlRequiresNames = javaSqlRequires.stream() + .map(Requires::name) + .collect(Collectors.toSet()); + + assertThat(javaBaseRequires, empty()); + assertThat(javaSqlRequires.size(), is(3)); + assertThat(javaSqlRequiresNames, containsInAnyOrder("java.base", "java.xml", "java.logging")); + } + + @Test + public void givenModules_whenAccessingModuleDescriptorProvides_thenProvidesAreReturned() { + Set javaBaseProvides = javaBaseModule.getDescriptor().provides(); + Set javaSqlProvides = javaSqlModule.getDescriptor().provides(); + + Set javaBaseProvidesService = javaBaseProvides.stream() + .map(Provides::service) + .collect(Collectors.toSet()); + + assertThat(javaBaseProvidesService, contains("java.nio.file.spi.FileSystemProvider")); + assertThat(javaSqlProvides, empty()); + } + + @Test + public void givenModules_whenAccessingModuleDescriptorExports_thenExportsAreReturned() { + Set javaBaseExports = javaBaseModule.getDescriptor().exports(); + Set javaSqlExports = javaSqlModule.getDescriptor().exports(); + + Set javaSqlExportsSource = javaSqlExports.stream() + .map(Exports::source) + .collect(Collectors.toSet()); + + assertThat(javaBaseExports.size(), is(108)); + assertThat(javaSqlExports.size(), is(3)); + assertThat(javaSqlExportsSource, containsInAnyOrder("java.sql", "javax.transaction.xa", "javax.sql")); + } + + @Test + public void givenModules_whenAccessingModuleDescriptorUses_thenUsesAreReturned() { + Set javaBaseUses = javaBaseModule.getDescriptor().uses(); + Set javaSqlUses = javaSqlModule.getDescriptor().uses(); + + assertThat(javaBaseUses.size(), is(34)); + assertThat(javaSqlUses, contains("java.sql.Driver")); + } + + @Test + public void givenModules_whenAccessingModuleDescriptorOpen_thenOpenAreReturned() { + Set javaBaseUses = javaBaseModule.getDescriptor().opens(); + Set javaSqlUses = javaSqlModule.getDescriptor().opens(); + + assertThat(javaBaseUses, empty()); + assertThat(javaSqlUses, empty()); + } + + @Test + public void whenAddingReadsToAModule_thenModuleCanReadNewModule() { + Module updatedModule = module.addReads(javaSqlModule); + + assertTrue(updatedModule.canRead(javaSqlModule)); + } + + @Test + public void whenExportingPackage_thenPackageIsExported() { + Module updatedModule = module.addExports("com.baeldung.java9.modules", javaSqlModule); + + assertTrue(updatedModule.isExported("com.baeldung.java9.modules")); + } + + @Test + public void whenOpeningAModulePackage_thenPackagedIsOpened() { + Module updatedModule = module.addOpens("com.baeldung.java9.modules", javaSqlModule); + + assertTrue(updatedModule.isOpen("com.baeldung.java9.modules", javaSqlModule)); + } + + @Test + public void whenAddingUsesToModule_thenUsesIsAdded() { + Module updatedModule = module.addUses(Driver.class); + + assertTrue(updatedModule.canUse(Driver.class)); + } + + private class Person { + private String name; + + public Person(String name) { + this.name = name; + } + + public String getName() { + return name; + } + } +} From 3925638b7423cd08d1c7284c83d382fee9334f97 Mon Sep 17 00:00:00 2001 From: pauljervis Date: Wed, 30 May 2018 18:32:18 +0100 Subject: [PATCH 09/55] add sample download file and article code (#4370) --- .../baeldung/servlets/DownloadServlet.java | 35 +++++++++++++++++++ javax-servlets/src/main/webapp/sample.txt | 1 + 2 files changed, 36 insertions(+) create mode 100644 javax-servlets/src/main/java/com/baeldung/servlets/DownloadServlet.java create mode 100644 javax-servlets/src/main/webapp/sample.txt diff --git a/javax-servlets/src/main/java/com/baeldung/servlets/DownloadServlet.java b/javax-servlets/src/main/java/com/baeldung/servlets/DownloadServlet.java new file mode 100644 index 0000000000..9bbf8f4095 --- /dev/null +++ b/javax-servlets/src/main/java/com/baeldung/servlets/DownloadServlet.java @@ -0,0 +1,35 @@ +package com.baeldung.servlets; + +import java.io.IOException; +import java.io.InputStream; +import java.io.OutputStream; + +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +@WebServlet("/download") +public class DownloadServlet extends HttpServlet { + private final int ARBITARY_SIZE = 1048; + + @Override + protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { + resp.setContentType("text/plain"); + resp.setHeader("Content-disposition", "attachment; filename=sample.txt"); + + OutputStream out = resp.getOutputStream(); + InputStream in = req.getServletContext().getResourceAsStream("/WEB-INF/sample.txt"); + + byte[] buffer = new byte[ARBITARY_SIZE]; + + int numBytesRead; + while ((numBytesRead = in.read(buffer)) > 0) { + out.write(buffer, 0, numBytesRead); + } + + in.close(); + out.flush(); + } +} diff --git a/javax-servlets/src/main/webapp/sample.txt b/javax-servlets/src/main/webapp/sample.txt new file mode 100644 index 0000000000..bab4636a96 --- /dev/null +++ b/javax-servlets/src/main/webapp/sample.txt @@ -0,0 +1 @@ +nice simple text file \ No newline at end of file From 834be9a7203ed22823feb43e9619f45833760449 Mon Sep 17 00:00:00 2001 From: mherbaghinyan Date: Wed, 30 May 2018 22:19:06 +0400 Subject: [PATCH 10/55] set bean names --- .../java/com/baeldung/collection/BaeldungBean.java | 11 +++++++++++ .../com/baeldung/collection/CollectionConfig.java | 6 +++--- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/spring-core/src/main/java/com/baeldung/collection/BaeldungBean.java b/spring-core/src/main/java/com/baeldung/collection/BaeldungBean.java index 6bdc841e10..6d7351df02 100644 --- a/spring-core/src/main/java/com/baeldung/collection/BaeldungBean.java +++ b/spring-core/src/main/java/com/baeldung/collection/BaeldungBean.java @@ -4,4 +4,15 @@ package com.baeldung.collection; * Created by Gebruiker on 5/22/2018. */ public class BaeldungBean { + + private String name; + + public BaeldungBean(String name) { + this.name = name; + } + + @Override + public String toString() { + return name; + } } diff --git a/spring-core/src/main/java/com/baeldung/collection/CollectionConfig.java b/spring-core/src/main/java/com/baeldung/collection/CollectionConfig.java index 589517f69d..fbae2963e5 100644 --- a/spring-core/src/main/java/com/baeldung/collection/CollectionConfig.java +++ b/spring-core/src/main/java/com/baeldung/collection/CollectionConfig.java @@ -33,18 +33,18 @@ public class CollectionConfig { @Qualifier("CollectionsBean") @Order(2) public BaeldungBean getElement() { - return new BaeldungBean(); + return new BaeldungBean("John"); } @Bean @Order(3) public BaeldungBean getAnotherElement() { - return new BaeldungBean(); + return new BaeldungBean("Adam"); } @Bean @Order(1) public BaeldungBean getOneMoreElement() { - return new BaeldungBean(); + return new BaeldungBean("Harry"); } } From 8e36e2b155494b82f6ecf6be64631da22965d6c1 Mon Sep 17 00:00:00 2001 From: fanatixan Date: Wed, 30 May 2018 21:06:54 +0200 Subject: [PATCH 11/55] spring data jpa annotation examples (#4309) --- .../annotations/MyUtilityRepository.java | 14 +++++ .../java/org/baeldung/annotations/Person.java | 54 +++++++++++++++++++ .../annotations/PersonRepository.java | 32 +++++++++++ 3 files changed, 100 insertions(+) create mode 100644 persistence-modules/spring-jpa/src/main/java/org/baeldung/annotations/MyUtilityRepository.java create mode 100644 persistence-modules/spring-jpa/src/main/java/org/baeldung/annotations/Person.java create mode 100644 persistence-modules/spring-jpa/src/main/java/org/baeldung/annotations/PersonRepository.java diff --git a/persistence-modules/spring-jpa/src/main/java/org/baeldung/annotations/MyUtilityRepository.java b/persistence-modules/spring-jpa/src/main/java/org/baeldung/annotations/MyUtilityRepository.java new file mode 100644 index 0000000000..5fe54b80d9 --- /dev/null +++ b/persistence-modules/spring-jpa/src/main/java/org/baeldung/annotations/MyUtilityRepository.java @@ -0,0 +1,14 @@ +package org.baeldung.annotations; + +import java.io.Serializable; +import java.util.Optional; + +import org.springframework.data.repository.CrudRepository; +import org.springframework.data.repository.NoRepositoryBean; + +@NoRepositoryBean +public interface MyUtilityRepository extends CrudRepository { + + Optional findById(ID id); + +} diff --git a/persistence-modules/spring-jpa/src/main/java/org/baeldung/annotations/Person.java b/persistence-modules/spring-jpa/src/main/java/org/baeldung/annotations/Person.java new file mode 100644 index 0000000000..309a4f43e1 --- /dev/null +++ b/persistence-modules/spring-jpa/src/main/java/org/baeldung/annotations/Person.java @@ -0,0 +1,54 @@ +package org.baeldung.annotations; + +import java.util.Date; + +import javax.persistence.Entity; +import javax.persistence.NamedStoredProcedureQueries; +import javax.persistence.NamedStoredProcedureQuery; +import javax.persistence.ParameterMode; +import javax.persistence.StoredProcedureParameter; + +import org.baeldung.persistence.multiple.model.user.User; +import org.springframework.data.annotation.CreatedBy; +import org.springframework.data.annotation.CreatedDate; +import org.springframework.data.annotation.Id; +import org.springframework.data.annotation.LastModifiedBy; +import org.springframework.data.annotation.Transient; + +@Entity +@NamedStoredProcedureQueries({ + @NamedStoredProcedureQuery( + name = "count_by_name", + procedureName = "person.count_by_name", + parameters = { + @StoredProcedureParameter( + mode = ParameterMode.IN, + name = "name", + type = String.class), + @StoredProcedureParameter( + mode = ParameterMode.OUT, + name = "count", + type = Long.class) + }) +}) +public class Person { + + @Id + private Long id; + + @Transient + private int age; + + @CreatedBy + private User creator; + + @LastModifiedBy + private User modifier; + + @CreatedDate + private Date createdAt; + + @LastModifiedBy + private Date modifiedAt; + +} diff --git a/persistence-modules/spring-jpa/src/main/java/org/baeldung/annotations/PersonRepository.java b/persistence-modules/spring-jpa/src/main/java/org/baeldung/annotations/PersonRepository.java new file mode 100644 index 0000000000..1c9a89bec5 --- /dev/null +++ b/persistence-modules/spring-jpa/src/main/java/org/baeldung/annotations/PersonRepository.java @@ -0,0 +1,32 @@ +package org.baeldung.annotations; + +import javax.persistence.LockModeType; + +import org.springframework.data.jpa.repository.Lock; +import org.springframework.data.jpa.repository.Modifying; +import org.springframework.data.jpa.repository.Query; +import org.springframework.data.jpa.repository.query.Procedure; +import org.springframework.data.repository.query.Param; +import org.springframework.stereotype.Repository; + +@Repository +public interface PersonRepository extends MyUtilityRepository { + + @Lock(LockModeType.NONE) + @Query("SELECT COUNT(*) FROM Person p") + long getPersonCount(); + + @Query("FROM Person p WHERE p.name = :name") + Person findByName(@Param("name") String name); + + @Query(value = "SELECT AVG(p.age) FROM person p", nativeQuery = true) + Person getAverageAge(); + + @Procedure(name = "count_by_name") + long getCountByName(@Param("name") String name); + + @Modifying + @Query("UPDATE Person p SET p.name = :name WHERE p.id = :id") + void changeName(@Param("id") long id, @Param("name") String name); + +} From 6e94f0343c291b1c613b4b96279b3e57d4f7053a Mon Sep 17 00:00:00 2001 From: Eric Goebelbecker Date: Wed, 30 May 2018 22:34:01 -0400 Subject: [PATCH 12/55] BAEL-1800 (#4377) * BAEL-1800 - Code for http://www.baeldung.com/spring-boot-starters and http://www.baeldung.com/spring-mvc-custom-data-binder * BAEL-1800 - Code for http://www.baeldung.com/maven-webjars and http://www.baeldung.com/deployable-fat-jar-spring-boot * BAEL-1800 - Code for http://www.baeldung.com/spring-boot-shutdown * BAEL-1800 - Code for http://www.baeldung.com/spring-boot-shutdown * BAEL-1800 - Code for http://www.baeldung.com/spring-boot-dependency-management-custom-parent --- spring-boot-bootstrap/pom.xml | 19 --- spring-boot-ops/README.MD | 7 + spring-boot-ops/pom.xml | 146 ++++++++++++++++++ .../java/com/baeldung/graphql/Author.java | 31 ++++ .../java/com/baeldung/graphql/AuthorDao.java | 16 ++ .../com/baeldung/graphql/AuthorResolver.java | 17 ++ .../graphql/GraphqlConfiguration.java | 59 +++++++ .../java/com/baeldung/graphql/Mutation.java | 25 +++ .../main/java/com/baeldung/graphql/Post.java | 49 ++++++ .../java/com/baeldung/graphql/PostDao.java | 24 +++ .../com/baeldung/graphql/PostResolver.java | 17 ++ .../main/java/com/baeldung/graphql/Query.java | 17 ++ .../com/baeldung/shutdown/Application.java | 0 .../com/baeldung/shutdown/ShutdownConfig.java | 0 .../com/baeldung/shutdown/TerminateBean.java | 0 .../shutdown/shutdown/ShutdownController.java | 0 .../java/com/baeldung/toggle/Employee.java | 37 +++++ .../baeldung/toggle/EmployeeRepository.java | 7 + .../baeldung/toggle/FeatureAssociation.java | 12 ++ .../com/baeldung/toggle/FeaturesAspect.java | 26 ++++ .../java/com/baeldung/toggle/MyFeatures.java | 23 +++ .../com/baeldung/toggle/SalaryController.java | 20 +++ .../com/baeldung/toggle/SalaryService.java | 19 +++ .../baeldung/toggle/ToggleApplication.java | 15 ++ .../baeldung/toggle/ToggleConfiguration.java | 20 +++ .../com/baeldung/webjar/TestController.java | 0 .../webjar/WebjarsdemoApplication.java | 0 .../java/org/baeldung/boot/Application.java | 14 ++ .../org/baeldung/boot/config/WebConfig.java | 0 .../controller/GenericEntityController.java | 0 .../converter/GenericBigDecimalConverter.java | 0 .../converter/StringToEmployeeConverter.java | 0 .../StringToEnumConverterFactory.java | 0 .../StringToLocalDateTimeConverter.java | 0 .../StringToEmployeeConverterController.java | 0 .../baeldung/boot/domain/GenericEntity.java | 42 +++++ .../java/org/baeldung/boot/domain/Modes.java | 6 + .../repository/GenericEntityRepository.java | 7 + .../HeaderVersionArgumentResolver.java | 0 .../baeldung/boot/web/resolver/Version.java | 0 .../org/baeldung/demo/DemoApplication.java | 18 +++ .../org/baeldung/demo/boottest/Employee.java | 43 ++++++ .../demo/boottest/EmployeeRepository.java | 17 ++ .../demo/boottest/EmployeeRestController.java | 33 ++++ .../demo/boottest/EmployeeService.java | 16 ++ .../demo/boottest/EmployeeServiceImpl.java | 43 ++++++ .../baeldung/demo/components/FooService.java | 21 +++ .../demo/exceptions/CommonException.java | 13 ++ .../demo/exceptions/FooNotFoundException.java | 13 ++ .../java/org/baeldung/demo/model/Foo.java | 45 ++++++ .../demo/repository/FooRepository.java | 8 + .../baeldung/demo/service/FooController.java | 26 ++++ .../src/main/resources/application.properties | 0 .../main/resources/templates/customer.html | 0 .../main/resources/templates/customers.html | 0 .../resources/templates/displayallbeans.html | 0 .../main/resources/templates/error-404.html | 0 .../main/resources/templates/error-500.html | 0 .../src/main/resources/templates/error.html | 0 .../main/resources/templates/error/404.html | 0 .../main/resources/templates/external.html | 0 .../src/main/resources/templates/index.html | 0 .../resources/templates/international.html | 0 .../src/main/resources/templates/layout.html | 0 .../src/main/resources/templates/other.html | 0 .../src/main/resources/templates/utils.html | 0 .../ShutdownApplicationIntegrationTest.java | 0 ...WebjarsdemoApplicationIntegrationTest.java | 0 .../SpringBootApplicationIntegrationTest.java | 0 .../SpringBootJPAIntegrationTest.java | 0 .../SpringBootMailIntegrationTest.java | 0 .../application-integrationtest.properties | 4 + .../src/test/resources/application.properties | 9 ++ spring-boot/README.MD | 2 - spring-boot/pom.xml | 29 ---- 75 files changed, 965 insertions(+), 50 deletions(-) create mode 100644 spring-boot-ops/README.MD create mode 100644 spring-boot-ops/src/main/java/com/baeldung/graphql/Author.java create mode 100644 spring-boot-ops/src/main/java/com/baeldung/graphql/AuthorDao.java create mode 100644 spring-boot-ops/src/main/java/com/baeldung/graphql/AuthorResolver.java create mode 100644 spring-boot-ops/src/main/java/com/baeldung/graphql/GraphqlConfiguration.java create mode 100644 spring-boot-ops/src/main/java/com/baeldung/graphql/Mutation.java create mode 100644 spring-boot-ops/src/main/java/com/baeldung/graphql/Post.java create mode 100644 spring-boot-ops/src/main/java/com/baeldung/graphql/PostDao.java create mode 100644 spring-boot-ops/src/main/java/com/baeldung/graphql/PostResolver.java create mode 100644 spring-boot-ops/src/main/java/com/baeldung/graphql/Query.java rename {spring-boot => spring-boot-ops}/src/main/java/com/baeldung/shutdown/Application.java (100%) rename {spring-boot => spring-boot-ops}/src/main/java/com/baeldung/shutdown/ShutdownConfig.java (100%) rename {spring-boot => spring-boot-ops}/src/main/java/com/baeldung/shutdown/TerminateBean.java (100%) rename {spring-boot => spring-boot-ops}/src/main/java/com/baeldung/shutdown/shutdown/ShutdownController.java (100%) create mode 100644 spring-boot-ops/src/main/java/com/baeldung/toggle/Employee.java create mode 100644 spring-boot-ops/src/main/java/com/baeldung/toggle/EmployeeRepository.java create mode 100644 spring-boot-ops/src/main/java/com/baeldung/toggle/FeatureAssociation.java create mode 100644 spring-boot-ops/src/main/java/com/baeldung/toggle/FeaturesAspect.java create mode 100644 spring-boot-ops/src/main/java/com/baeldung/toggle/MyFeatures.java create mode 100644 spring-boot-ops/src/main/java/com/baeldung/toggle/SalaryController.java create mode 100644 spring-boot-ops/src/main/java/com/baeldung/toggle/SalaryService.java create mode 100644 spring-boot-ops/src/main/java/com/baeldung/toggle/ToggleApplication.java create mode 100644 spring-boot-ops/src/main/java/com/baeldung/toggle/ToggleConfiguration.java rename {spring-boot => spring-boot-ops}/src/main/java/com/baeldung/webjar/TestController.java (100%) rename {spring-boot => spring-boot-ops}/src/main/java/com/baeldung/webjar/WebjarsdemoApplication.java (100%) create mode 100644 spring-boot-ops/src/main/java/org/baeldung/boot/Application.java rename {spring-boot => spring-boot-ops}/src/main/java/org/baeldung/boot/config/WebConfig.java (100%) rename {spring-boot => spring-boot-ops}/src/main/java/org/baeldung/boot/controller/GenericEntityController.java (100%) rename {spring-boot => spring-boot-ops}/src/main/java/org/baeldung/boot/converter/GenericBigDecimalConverter.java (100%) rename {spring-boot => spring-boot-ops}/src/main/java/org/baeldung/boot/converter/StringToEmployeeConverter.java (100%) rename {spring-boot => spring-boot-ops}/src/main/java/org/baeldung/boot/converter/StringToEnumConverterFactory.java (100%) rename {spring-boot => spring-boot-ops}/src/main/java/org/baeldung/boot/converter/StringToLocalDateTimeConverter.java (100%) rename {spring-boot => spring-boot-ops}/src/main/java/org/baeldung/boot/converter/controller/StringToEmployeeConverterController.java (100%) create mode 100644 spring-boot-ops/src/main/java/org/baeldung/boot/domain/GenericEntity.java create mode 100644 spring-boot-ops/src/main/java/org/baeldung/boot/domain/Modes.java create mode 100644 spring-boot-ops/src/main/java/org/baeldung/boot/repository/GenericEntityRepository.java rename {spring-boot => spring-boot-ops}/src/main/java/org/baeldung/boot/web/resolver/HeaderVersionArgumentResolver.java (100%) rename {spring-boot => spring-boot-ops}/src/main/java/org/baeldung/boot/web/resolver/Version.java (100%) create mode 100644 spring-boot-ops/src/main/java/org/baeldung/demo/DemoApplication.java create mode 100644 spring-boot-ops/src/main/java/org/baeldung/demo/boottest/Employee.java create mode 100644 spring-boot-ops/src/main/java/org/baeldung/demo/boottest/EmployeeRepository.java create mode 100644 spring-boot-ops/src/main/java/org/baeldung/demo/boottest/EmployeeRestController.java create mode 100644 spring-boot-ops/src/main/java/org/baeldung/demo/boottest/EmployeeService.java create mode 100644 spring-boot-ops/src/main/java/org/baeldung/demo/boottest/EmployeeServiceImpl.java create mode 100644 spring-boot-ops/src/main/java/org/baeldung/demo/components/FooService.java create mode 100644 spring-boot-ops/src/main/java/org/baeldung/demo/exceptions/CommonException.java create mode 100644 spring-boot-ops/src/main/java/org/baeldung/demo/exceptions/FooNotFoundException.java create mode 100644 spring-boot-ops/src/main/java/org/baeldung/demo/model/Foo.java create mode 100644 spring-boot-ops/src/main/java/org/baeldung/demo/repository/FooRepository.java create mode 100644 spring-boot-ops/src/main/java/org/baeldung/demo/service/FooController.java delete mode 100644 spring-boot-ops/src/main/resources/application.properties rename {spring-boot => spring-boot-ops}/src/main/resources/templates/customer.html (100%) rename {spring-boot => spring-boot-ops}/src/main/resources/templates/customers.html (100%) rename {spring-boot => spring-boot-ops}/src/main/resources/templates/displayallbeans.html (100%) rename {spring-boot => spring-boot-ops}/src/main/resources/templates/error-404.html (100%) rename {spring-boot => spring-boot-ops}/src/main/resources/templates/error-500.html (100%) rename {spring-boot => spring-boot-ops}/src/main/resources/templates/error.html (100%) rename {spring-boot => spring-boot-ops}/src/main/resources/templates/error/404.html (100%) rename {spring-boot => spring-boot-ops}/src/main/resources/templates/external.html (100%) rename {spring-boot => spring-boot-ops}/src/main/resources/templates/index.html (100%) rename {spring-boot => spring-boot-ops}/src/main/resources/templates/international.html (100%) rename {spring-boot => spring-boot-ops}/src/main/resources/templates/layout.html (100%) rename {spring-boot => spring-boot-ops}/src/main/resources/templates/other.html (100%) rename {spring-boot => spring-boot-ops}/src/main/resources/templates/utils.html (100%) rename {spring-boot => spring-boot-ops}/src/test/java/com/baeldung/shutdown/ShutdownApplicationIntegrationTest.java (100%) rename {spring-boot => spring-boot-ops}/src/test/java/com/baeldung/webjar/WebjarsdemoApplicationIntegrationTest.java (100%) rename {spring-boot => spring-boot-ops}/src/test/java/org/baeldung/SpringBootApplicationIntegrationTest.java (100%) rename {spring-boot => spring-boot-ops}/src/test/java/org/baeldung/SpringBootJPAIntegrationTest.java (100%) rename {spring-boot => spring-boot-ops}/src/test/java/org/baeldung/SpringBootMailIntegrationTest.java (100%) create mode 100644 spring-boot-ops/src/test/resources/application-integrationtest.properties create mode 100644 spring-boot-ops/src/test/resources/application.properties diff --git a/spring-boot-bootstrap/pom.xml b/spring-boot-bootstrap/pom.xml index 03ce9b6906..ecc72c85f5 100644 --- a/spring-boot-bootstrap/pom.xml +++ b/spring-boot-bootstrap/pom.xml @@ -15,25 +15,6 @@ ../parent-boot-2 - - org.springframework.boot diff --git a/spring-boot-ops/README.MD b/spring-boot-ops/README.MD new file mode 100644 index 0000000000..e2a9a6ab59 --- /dev/null +++ b/spring-boot-ops/README.MD @@ -0,0 +1,7 @@ +### The Course +The "REST With Spring" Classes: http://bit.ly/restwithspring + +### Relevant Articles: + +- [Intro to Spring Boot Starters](http://www.baeldung.com/spring-boot-starters) +- [A Custom Data Binder in Spring MVC](http://www.baeldung.com/spring-mvc-custom-data-binder) diff --git a/spring-boot-ops/pom.xml b/spring-boot-ops/pom.xml index 0d0ccc0ef2..760442d386 100644 --- a/spring-boot-ops/pom.xml +++ b/spring-boot-ops/pom.xml @@ -19,12 +19,36 @@ + + org.baeldung.demo.DemoApplication UTF-8 UTF-8 1.8 + 3.1.1 + 3.3.7-1 + + + org.springframework.boot spring-boot-starter-web @@ -41,6 +65,77 @@ spring-boot-starter-test test + + + org.springframework.boot + spring-boot-starter-data-jpa + + + + org.springframework.boot + spring-boot-starter-mail + + + + com.graphql-java + graphql-spring-boot-starter + 3.6.0 + + + + org.springframework.boot + spring-boot-starter-actuator + + + + com.h2database + h2 + runtime + + + + javax.persistence + javax.persistence-api + 2.2 + + + + org.togglz + togglz-spring-boot-starter + 2.4.1.Final + + + + com.google.guava + guava + 18.0 + + + + org.subethamail + subethasmtp + 3.1.7 + test + + + + org.webjars + bootstrap + ${bootstrap.version} + + + + org.webjars + jquery + ${jquery.version} + + + + com.graphql-java + graphql-java-tools + 3.2.0 + + @@ -50,8 +145,59 @@ org.springframework.boot spring-boot-maven-plugin + + + org.springframework.boot + spring-boot-maven-plugin + 1.5.2.RELEASE + + + + repackage + + + org.baeldung.boot.Application + + + + + + + autoconfiguration + + + + org.apache.maven.plugins + maven-surefire-plugin + + + integration-test + + test + + + + **/*LiveTest.java + **/*IntegrationTest.java + + + **/AutoconfigurationTest.java + + + + + + + json + + + + + + + diff --git a/spring-boot-ops/src/main/java/com/baeldung/graphql/Author.java b/spring-boot-ops/src/main/java/com/baeldung/graphql/Author.java new file mode 100644 index 0000000000..11e927c564 --- /dev/null +++ b/spring-boot-ops/src/main/java/com/baeldung/graphql/Author.java @@ -0,0 +1,31 @@ +package com.baeldung.graphql; + +public class Author { + private String id; + private String name; + private String thumbnail; + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getThumbnail() { + return thumbnail; + } + + public void setThumbnail(String thumbnail) { + this.thumbnail = thumbnail; + } +} diff --git a/spring-boot-ops/src/main/java/com/baeldung/graphql/AuthorDao.java b/spring-boot-ops/src/main/java/com/baeldung/graphql/AuthorDao.java new file mode 100644 index 0000000000..c799a558a7 --- /dev/null +++ b/spring-boot-ops/src/main/java/com/baeldung/graphql/AuthorDao.java @@ -0,0 +1,16 @@ +package com.baeldung.graphql; + +import java.util.List; +import java.util.Optional; + +public class AuthorDao { + private List authors; + + public AuthorDao(List authors) { + this.authors = authors; + } + + public Optional getAuthor(String id) { + return authors.stream().filter(author -> id.equals(author.getId())).findFirst(); + } +} diff --git a/spring-boot-ops/src/main/java/com/baeldung/graphql/AuthorResolver.java b/spring-boot-ops/src/main/java/com/baeldung/graphql/AuthorResolver.java new file mode 100644 index 0000000000..982c6cebc1 --- /dev/null +++ b/spring-boot-ops/src/main/java/com/baeldung/graphql/AuthorResolver.java @@ -0,0 +1,17 @@ +package com.baeldung.graphql; + +import java.util.List; + +import com.coxautodev.graphql.tools.GraphQLResolver; + +public class AuthorResolver implements GraphQLResolver { + private PostDao postDao; + + public AuthorResolver(PostDao postDao) { + this.postDao = postDao; + } + + public List getPosts(Author author) { + return postDao.getAuthorPosts(author.getId()); + } +} diff --git a/spring-boot-ops/src/main/java/com/baeldung/graphql/GraphqlConfiguration.java b/spring-boot-ops/src/main/java/com/baeldung/graphql/GraphqlConfiguration.java new file mode 100644 index 0000000000..c5ae8bd772 --- /dev/null +++ b/spring-boot-ops/src/main/java/com/baeldung/graphql/GraphqlConfiguration.java @@ -0,0 +1,59 @@ +package com.baeldung.graphql; + +import java.util.ArrayList; +import java.util.List; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class GraphqlConfiguration { + @Bean + public PostDao postDao() { + List posts = new ArrayList<>(); + for (int postId = 0; postId < 10; ++postId) { + for (int authorId = 0; authorId < 10; ++authorId) { + Post post = new Post(); + post.setId("Post" + authorId + postId); + post.setTitle("Post " + authorId + ":" + postId); + post.setText("Post " + postId + " + by author " + authorId); + post.setAuthorId("Author" + authorId); + posts.add(post); + } + } + return new PostDao(posts); + } + + @Bean + public AuthorDao authorDao() { + List authors = new ArrayList<>(); + for (int authorId = 0; authorId < 10; ++authorId) { + Author author = new Author(); + author.setId("Author" + authorId); + author.setName("Author " + authorId); + author.setThumbnail("http://example.com/authors/" + authorId); + authors.add(author); + } + return new AuthorDao(authors); + } + + @Bean + public PostResolver postResolver(AuthorDao authorDao) { + return new PostResolver(authorDao); + } + + @Bean + public AuthorResolver authorResolver(PostDao postDao) { + return new AuthorResolver(postDao); + } + + @Bean + public Query query(PostDao postDao) { + return new Query(postDao); + } + + @Bean + public Mutation mutation(PostDao postDao) { + return new Mutation(postDao); + } +} diff --git a/spring-boot-ops/src/main/java/com/baeldung/graphql/Mutation.java b/spring-boot-ops/src/main/java/com/baeldung/graphql/Mutation.java new file mode 100644 index 0000000000..0e16e3c8b7 --- /dev/null +++ b/spring-boot-ops/src/main/java/com/baeldung/graphql/Mutation.java @@ -0,0 +1,25 @@ +package com.baeldung.graphql; + +import java.util.UUID; + +import com.coxautodev.graphql.tools.GraphQLMutationResolver; + +public class Mutation implements GraphQLMutationResolver { + private PostDao postDao; + + public Mutation(PostDao postDao) { + this.postDao = postDao; + } + + public Post writePost(String title, String text, String category, String author) { + Post post = new Post(); + post.setId(UUID.randomUUID().toString()); + post.setTitle(title); + post.setText(text); + post.setCategory(category); + post.setAuthorId(author); + postDao.savePost(post); + + return post; + } +} diff --git a/spring-boot-ops/src/main/java/com/baeldung/graphql/Post.java b/spring-boot-ops/src/main/java/com/baeldung/graphql/Post.java new file mode 100644 index 0000000000..14d3084841 --- /dev/null +++ b/spring-boot-ops/src/main/java/com/baeldung/graphql/Post.java @@ -0,0 +1,49 @@ +package com.baeldung.graphql; + +public class Post { + private String id; + private String title; + private String text; + private String category; + private String authorId; + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + public String getText() { + return text; + } + + public void setText(String text) { + this.text = text; + } + + public String getCategory() { + return category; + } + + public void setCategory(String category) { + this.category = category; + } + + public String getAuthorId() { + return authorId; + } + + public void setAuthorId(String authorId) { + this.authorId = authorId; + } +} diff --git a/spring-boot-ops/src/main/java/com/baeldung/graphql/PostDao.java b/spring-boot-ops/src/main/java/com/baeldung/graphql/PostDao.java new file mode 100644 index 0000000000..0a755a7cf4 --- /dev/null +++ b/spring-boot-ops/src/main/java/com/baeldung/graphql/PostDao.java @@ -0,0 +1,24 @@ +package com.baeldung.graphql; + +import java.util.List; +import java.util.stream.Collectors; + +public class PostDao { + private List posts; + + public PostDao(List posts) { + this.posts = posts; + } + + public List getRecentPosts(int count, int offset) { + return posts.stream().skip(offset).limit(count).collect(Collectors.toList()); + } + + public List getAuthorPosts(String author) { + return posts.stream().filter(post -> author.equals(post.getAuthorId())).collect(Collectors.toList()); + } + + public void savePost(Post post) { + posts.add(0, post); + } +} diff --git a/spring-boot-ops/src/main/java/com/baeldung/graphql/PostResolver.java b/spring-boot-ops/src/main/java/com/baeldung/graphql/PostResolver.java new file mode 100644 index 0000000000..dbfde330ea --- /dev/null +++ b/spring-boot-ops/src/main/java/com/baeldung/graphql/PostResolver.java @@ -0,0 +1,17 @@ +package com.baeldung.graphql; + +import java.util.Optional; + +import com.coxautodev.graphql.tools.GraphQLResolver; + +public class PostResolver implements GraphQLResolver { + private AuthorDao authorDao; + + public PostResolver(AuthorDao authorDao) { + this.authorDao = authorDao; + } + + public Optional getAuthor(Post post) { + return authorDao.getAuthor(post.getAuthorId()); + } +} diff --git a/spring-boot-ops/src/main/java/com/baeldung/graphql/Query.java b/spring-boot-ops/src/main/java/com/baeldung/graphql/Query.java new file mode 100644 index 0000000000..7bb625798c --- /dev/null +++ b/spring-boot-ops/src/main/java/com/baeldung/graphql/Query.java @@ -0,0 +1,17 @@ +package com.baeldung.graphql; + +import java.util.List; + +import com.coxautodev.graphql.tools.GraphQLQueryResolver; + +public class Query implements GraphQLQueryResolver { + private PostDao postDao; + + public Query(PostDao postDao) { + this.postDao = postDao; + } + + public List recentPosts(int count, int offset) { + return postDao.getRecentPosts(count, offset); + } +} diff --git a/spring-boot/src/main/java/com/baeldung/shutdown/Application.java b/spring-boot-ops/src/main/java/com/baeldung/shutdown/Application.java similarity index 100% rename from spring-boot/src/main/java/com/baeldung/shutdown/Application.java rename to spring-boot-ops/src/main/java/com/baeldung/shutdown/Application.java diff --git a/spring-boot/src/main/java/com/baeldung/shutdown/ShutdownConfig.java b/spring-boot-ops/src/main/java/com/baeldung/shutdown/ShutdownConfig.java similarity index 100% rename from spring-boot/src/main/java/com/baeldung/shutdown/ShutdownConfig.java rename to spring-boot-ops/src/main/java/com/baeldung/shutdown/ShutdownConfig.java diff --git a/spring-boot/src/main/java/com/baeldung/shutdown/TerminateBean.java b/spring-boot-ops/src/main/java/com/baeldung/shutdown/TerminateBean.java similarity index 100% rename from spring-boot/src/main/java/com/baeldung/shutdown/TerminateBean.java rename to spring-boot-ops/src/main/java/com/baeldung/shutdown/TerminateBean.java diff --git a/spring-boot/src/main/java/com/baeldung/shutdown/shutdown/ShutdownController.java b/spring-boot-ops/src/main/java/com/baeldung/shutdown/shutdown/ShutdownController.java similarity index 100% rename from spring-boot/src/main/java/com/baeldung/shutdown/shutdown/ShutdownController.java rename to spring-boot-ops/src/main/java/com/baeldung/shutdown/shutdown/ShutdownController.java diff --git a/spring-boot-ops/src/main/java/com/baeldung/toggle/Employee.java b/spring-boot-ops/src/main/java/com/baeldung/toggle/Employee.java new file mode 100644 index 0000000000..64a8b3ce5b --- /dev/null +++ b/spring-boot-ops/src/main/java/com/baeldung/toggle/Employee.java @@ -0,0 +1,37 @@ +package com.baeldung.toggle; + +import javax.persistence.Entity; +import javax.persistence.Id; + +@Entity +public class Employee { + + @Id + private long id; + private double salary; + + public Employee() { + } + + public Employee(long id, double salary) { + this.id = id; + this.salary = salary; + } + + public long getId() { + return id; + } + + public void setId(long id) { + this.id = id; + } + + public double getSalary() { + return salary; + } + + public void setSalary(double salary) { + this.salary = salary; + } + +} diff --git a/spring-boot-ops/src/main/java/com/baeldung/toggle/EmployeeRepository.java b/spring-boot-ops/src/main/java/com/baeldung/toggle/EmployeeRepository.java new file mode 100644 index 0000000000..4e75fc6411 --- /dev/null +++ b/spring-boot-ops/src/main/java/com/baeldung/toggle/EmployeeRepository.java @@ -0,0 +1,7 @@ +package com.baeldung.toggle; + +import org.springframework.data.repository.CrudRepository; + +public interface EmployeeRepository extends CrudRepository { + +} diff --git a/spring-boot-ops/src/main/java/com/baeldung/toggle/FeatureAssociation.java b/spring-boot-ops/src/main/java/com/baeldung/toggle/FeatureAssociation.java new file mode 100644 index 0000000000..4578b8498e --- /dev/null +++ b/spring-boot-ops/src/main/java/com/baeldung/toggle/FeatureAssociation.java @@ -0,0 +1,12 @@ +package com.baeldung.toggle; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +@Retention(RetentionPolicy.RUNTIME) +@Target({ ElementType.METHOD, ElementType.TYPE }) +public @interface FeatureAssociation { + MyFeatures value(); +} diff --git a/spring-boot-ops/src/main/java/com/baeldung/toggle/FeaturesAspect.java b/spring-boot-ops/src/main/java/com/baeldung/toggle/FeaturesAspect.java new file mode 100644 index 0000000000..04c6305780 --- /dev/null +++ b/spring-boot-ops/src/main/java/com/baeldung/toggle/FeaturesAspect.java @@ -0,0 +1,26 @@ +package com.baeldung.toggle; + +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; +import org.aspectj.lang.ProceedingJoinPoint; +import org.aspectj.lang.annotation.Around; +import org.aspectj.lang.annotation.Aspect; +import org.springframework.stereotype.Component; + +@Aspect +@Component +public class FeaturesAspect { + + private static final Logger LOG = LogManager.getLogger(FeaturesAspect.class); + + @Around(value = "@within(featureAssociation) || @annotation(featureAssociation)") + public Object checkAspect(ProceedingJoinPoint joinPoint, FeatureAssociation featureAssociation) throws Throwable { + if (featureAssociation.value().isActive()) { + return joinPoint.proceed(); + } else { + LOG.info("Feature " + featureAssociation.value().name() + " is not enabled!"); + return null; + } + } + +} diff --git a/spring-boot-ops/src/main/java/com/baeldung/toggle/MyFeatures.java b/spring-boot-ops/src/main/java/com/baeldung/toggle/MyFeatures.java new file mode 100644 index 0000000000..a88ec2166e --- /dev/null +++ b/spring-boot-ops/src/main/java/com/baeldung/toggle/MyFeatures.java @@ -0,0 +1,23 @@ +package com.baeldung.toggle; + +import org.togglz.core.Feature; +import org.togglz.core.activation.SystemPropertyActivationStrategy; +import org.togglz.core.annotation.ActivationParameter; +import org.togglz.core.annotation.DefaultActivationStrategy; +import org.togglz.core.annotation.EnabledByDefault; +import org.togglz.core.annotation.Label; +import org.togglz.core.context.FeatureContext; + +public enum MyFeatures implements Feature { + + @Label("Employee Management Feature") + @EnabledByDefault + @DefaultActivationStrategy(id = SystemPropertyActivationStrategy.ID, parameters = { @ActivationParameter(name = SystemPropertyActivationStrategy.PARAM_PROPERTY_NAME, value = "employee.feature"), + @ActivationParameter(name = SystemPropertyActivationStrategy.PARAM_PROPERTY_VALUE, value = "true") }) + EMPLOYEE_MANAGEMENT_FEATURE; + + public boolean isActive() { + return FeatureContext.getFeatureManager().isActive(this); + } + +} diff --git a/spring-boot-ops/src/main/java/com/baeldung/toggle/SalaryController.java b/spring-boot-ops/src/main/java/com/baeldung/toggle/SalaryController.java new file mode 100644 index 0000000000..5d72f0105a --- /dev/null +++ b/spring-boot-ops/src/main/java/com/baeldung/toggle/SalaryController.java @@ -0,0 +1,20 @@ +package com.baeldung.toggle; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.ResponseBody; + +@Controller +public class SalaryController { + + @Autowired + SalaryService salaryService; + + @PostMapping(value = "/increaseSalary") + @ResponseBody + public void increaseSalary(@RequestParam long id) { + salaryService.increaseSalary(id); + } +} diff --git a/spring-boot-ops/src/main/java/com/baeldung/toggle/SalaryService.java b/spring-boot-ops/src/main/java/com/baeldung/toggle/SalaryService.java new file mode 100644 index 0000000000..48a1ddf8d8 --- /dev/null +++ b/spring-boot-ops/src/main/java/com/baeldung/toggle/SalaryService.java @@ -0,0 +1,19 @@ +package com.baeldung.toggle; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +@Service +public class SalaryService { + + @Autowired + EmployeeRepository employeeRepository; + + @FeatureAssociation(value = MyFeatures.EMPLOYEE_MANAGEMENT_FEATURE) + public void increaseSalary(long id) { + Employee employee = employeeRepository.findById(id).orElse(null); + employee.setSalary(employee.getSalary() + employee.getSalary() * 0.1); + employeeRepository.save(employee); + } + +} diff --git a/spring-boot-ops/src/main/java/com/baeldung/toggle/ToggleApplication.java b/spring-boot-ops/src/main/java/com/baeldung/toggle/ToggleApplication.java new file mode 100644 index 0000000000..27be6b7cca --- /dev/null +++ b/spring-boot-ops/src/main/java/com/baeldung/toggle/ToggleApplication.java @@ -0,0 +1,15 @@ +package com.baeldung.toggle; + +import javax.annotation.security.RolesAllowed; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class ToggleApplication { + @RolesAllowed("*") + public static void main(String[] args) { + System.setProperty("security.basic.enabled", "false"); + SpringApplication.run(ToggleApplication.class, args); + } +} diff --git a/spring-boot-ops/src/main/java/com/baeldung/toggle/ToggleConfiguration.java b/spring-boot-ops/src/main/java/com/baeldung/toggle/ToggleConfiguration.java new file mode 100644 index 0000000000..ee0b251479 --- /dev/null +++ b/spring-boot-ops/src/main/java/com/baeldung/toggle/ToggleConfiguration.java @@ -0,0 +1,20 @@ +package com.baeldung.toggle; + +import org.springframework.boot.autoconfigure.domain.EntityScan; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.data.jpa.repository.config.EnableJpaRepositories; +import org.togglz.core.manager.EnumBasedFeatureProvider; +import org.togglz.core.spi.FeatureProvider; + +@Configuration +@EnableJpaRepositories("com.baeldung.toggle") +@EntityScan("com.baeldung.toggle") +public class ToggleConfiguration { + + @Bean + public FeatureProvider featureProvider() { + return new EnumBasedFeatureProvider(MyFeatures.class); + } + +} diff --git a/spring-boot/src/main/java/com/baeldung/webjar/TestController.java b/spring-boot-ops/src/main/java/com/baeldung/webjar/TestController.java similarity index 100% rename from spring-boot/src/main/java/com/baeldung/webjar/TestController.java rename to spring-boot-ops/src/main/java/com/baeldung/webjar/TestController.java diff --git a/spring-boot/src/main/java/com/baeldung/webjar/WebjarsdemoApplication.java b/spring-boot-ops/src/main/java/com/baeldung/webjar/WebjarsdemoApplication.java similarity index 100% rename from spring-boot/src/main/java/com/baeldung/webjar/WebjarsdemoApplication.java rename to spring-boot-ops/src/main/java/com/baeldung/webjar/WebjarsdemoApplication.java diff --git a/spring-boot-ops/src/main/java/org/baeldung/boot/Application.java b/spring-boot-ops/src/main/java/org/baeldung/boot/Application.java new file mode 100644 index 0000000000..c1b6558b26 --- /dev/null +++ b/spring-boot-ops/src/main/java/org/baeldung/boot/Application.java @@ -0,0 +1,14 @@ +package org.baeldung.boot; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.context.ApplicationContext; + +@SpringBootApplication +public class Application { + private static ApplicationContext applicationContext; + + public static void main(String[] args) { + applicationContext = SpringApplication.run(Application.class, args); + } +} diff --git a/spring-boot/src/main/java/org/baeldung/boot/config/WebConfig.java b/spring-boot-ops/src/main/java/org/baeldung/boot/config/WebConfig.java similarity index 100% rename from spring-boot/src/main/java/org/baeldung/boot/config/WebConfig.java rename to spring-boot-ops/src/main/java/org/baeldung/boot/config/WebConfig.java diff --git a/spring-boot/src/main/java/org/baeldung/boot/controller/GenericEntityController.java b/spring-boot-ops/src/main/java/org/baeldung/boot/controller/GenericEntityController.java similarity index 100% rename from spring-boot/src/main/java/org/baeldung/boot/controller/GenericEntityController.java rename to spring-boot-ops/src/main/java/org/baeldung/boot/controller/GenericEntityController.java diff --git a/spring-boot/src/main/java/org/baeldung/boot/converter/GenericBigDecimalConverter.java b/spring-boot-ops/src/main/java/org/baeldung/boot/converter/GenericBigDecimalConverter.java similarity index 100% rename from spring-boot/src/main/java/org/baeldung/boot/converter/GenericBigDecimalConverter.java rename to spring-boot-ops/src/main/java/org/baeldung/boot/converter/GenericBigDecimalConverter.java diff --git a/spring-boot/src/main/java/org/baeldung/boot/converter/StringToEmployeeConverter.java b/spring-boot-ops/src/main/java/org/baeldung/boot/converter/StringToEmployeeConverter.java similarity index 100% rename from spring-boot/src/main/java/org/baeldung/boot/converter/StringToEmployeeConverter.java rename to spring-boot-ops/src/main/java/org/baeldung/boot/converter/StringToEmployeeConverter.java diff --git a/spring-boot/src/main/java/org/baeldung/boot/converter/StringToEnumConverterFactory.java b/spring-boot-ops/src/main/java/org/baeldung/boot/converter/StringToEnumConverterFactory.java similarity index 100% rename from spring-boot/src/main/java/org/baeldung/boot/converter/StringToEnumConverterFactory.java rename to spring-boot-ops/src/main/java/org/baeldung/boot/converter/StringToEnumConverterFactory.java diff --git a/spring-boot/src/main/java/org/baeldung/boot/converter/StringToLocalDateTimeConverter.java b/spring-boot-ops/src/main/java/org/baeldung/boot/converter/StringToLocalDateTimeConverter.java similarity index 100% rename from spring-boot/src/main/java/org/baeldung/boot/converter/StringToLocalDateTimeConverter.java rename to spring-boot-ops/src/main/java/org/baeldung/boot/converter/StringToLocalDateTimeConverter.java diff --git a/spring-boot/src/main/java/org/baeldung/boot/converter/controller/StringToEmployeeConverterController.java b/spring-boot-ops/src/main/java/org/baeldung/boot/converter/controller/StringToEmployeeConverterController.java similarity index 100% rename from spring-boot/src/main/java/org/baeldung/boot/converter/controller/StringToEmployeeConverterController.java rename to spring-boot-ops/src/main/java/org/baeldung/boot/converter/controller/StringToEmployeeConverterController.java diff --git a/spring-boot-ops/src/main/java/org/baeldung/boot/domain/GenericEntity.java b/spring-boot-ops/src/main/java/org/baeldung/boot/domain/GenericEntity.java new file mode 100644 index 0000000000..f1c936e432 --- /dev/null +++ b/spring-boot-ops/src/main/java/org/baeldung/boot/domain/GenericEntity.java @@ -0,0 +1,42 @@ +package org.baeldung.boot.domain; + +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; + +@Entity +public class GenericEntity { + @Id + @GeneratedValue(strategy = GenerationType.AUTO) + private Long id; + private String value; + + public GenericEntity() { + } + + public GenericEntity(String value) { + this.value = value; + } + + public GenericEntity(Long id, String value) { + this.id = id; + this.value = value; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getValue() { + return value; + } + + public void setValue(String value) { + this.value = value; + } +} diff --git a/spring-boot-ops/src/main/java/org/baeldung/boot/domain/Modes.java b/spring-boot-ops/src/main/java/org/baeldung/boot/domain/Modes.java new file mode 100644 index 0000000000..dcba064e8c --- /dev/null +++ b/spring-boot-ops/src/main/java/org/baeldung/boot/domain/Modes.java @@ -0,0 +1,6 @@ +package org.baeldung.boot.domain; + +public enum Modes { + + ALPHA, BETA; +} diff --git a/spring-boot-ops/src/main/java/org/baeldung/boot/repository/GenericEntityRepository.java b/spring-boot-ops/src/main/java/org/baeldung/boot/repository/GenericEntityRepository.java new file mode 100644 index 0000000000..d897e17afe --- /dev/null +++ b/spring-boot-ops/src/main/java/org/baeldung/boot/repository/GenericEntityRepository.java @@ -0,0 +1,7 @@ +package org.baeldung.boot.repository; + +import org.baeldung.boot.domain.GenericEntity; +import org.springframework.data.jpa.repository.JpaRepository; + +public interface GenericEntityRepository extends JpaRepository { +} diff --git a/spring-boot/src/main/java/org/baeldung/boot/web/resolver/HeaderVersionArgumentResolver.java b/spring-boot-ops/src/main/java/org/baeldung/boot/web/resolver/HeaderVersionArgumentResolver.java similarity index 100% rename from spring-boot/src/main/java/org/baeldung/boot/web/resolver/HeaderVersionArgumentResolver.java rename to spring-boot-ops/src/main/java/org/baeldung/boot/web/resolver/HeaderVersionArgumentResolver.java diff --git a/spring-boot/src/main/java/org/baeldung/boot/web/resolver/Version.java b/spring-boot-ops/src/main/java/org/baeldung/boot/web/resolver/Version.java similarity index 100% rename from spring-boot/src/main/java/org/baeldung/boot/web/resolver/Version.java rename to spring-boot-ops/src/main/java/org/baeldung/boot/web/resolver/Version.java diff --git a/spring-boot-ops/src/main/java/org/baeldung/demo/DemoApplication.java b/spring-boot-ops/src/main/java/org/baeldung/demo/DemoApplication.java new file mode 100644 index 0000000000..4a88fcea07 --- /dev/null +++ b/spring-boot-ops/src/main/java/org/baeldung/demo/DemoApplication.java @@ -0,0 +1,18 @@ +package org.baeldung.demo; + +import com.baeldung.graphql.GraphqlConfiguration; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +import org.springframework.context.annotation.Import; + +@SpringBootApplication +@Import(GraphqlConfiguration.class) +public class DemoApplication { + + public static void main(String[] args) { + System.setProperty("spring.config.name", "demo"); + SpringApplication.run(DemoApplication.class, args); + } + +} diff --git a/spring-boot-ops/src/main/java/org/baeldung/demo/boottest/Employee.java b/spring-boot-ops/src/main/java/org/baeldung/demo/boottest/Employee.java new file mode 100644 index 0000000000..c1dd109f91 --- /dev/null +++ b/spring-boot-ops/src/main/java/org/baeldung/demo/boottest/Employee.java @@ -0,0 +1,43 @@ +package org.baeldung.demo.boottest; + +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; +import javax.persistence.Table; +import javax.validation.constraints.Size; + +@Entity +@Table(name = "person") +public class Employee { + + public Employee() { + } + + public Employee(String name) { + this.name = name; + } + + @Id + @GeneratedValue(strategy = GenerationType.AUTO) + private Long id; + + @Size(min = 3, max = 20) + private String name; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } +} \ No newline at end of file diff --git a/spring-boot-ops/src/main/java/org/baeldung/demo/boottest/EmployeeRepository.java b/spring-boot-ops/src/main/java/org/baeldung/demo/boottest/EmployeeRepository.java new file mode 100644 index 0000000000..00fdbfaae4 --- /dev/null +++ b/spring-boot-ops/src/main/java/org/baeldung/demo/boottest/EmployeeRepository.java @@ -0,0 +1,17 @@ +package org.baeldung.demo.boottest; + +import java.util.List; + +import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.stereotype.Repository; +import org.springframework.transaction.annotation.Transactional; + +@Repository +@Transactional +public interface EmployeeRepository extends JpaRepository { + + public Employee findByName(String name); + + public List findAll(); + +} diff --git a/spring-boot-ops/src/main/java/org/baeldung/demo/boottest/EmployeeRestController.java b/spring-boot-ops/src/main/java/org/baeldung/demo/boottest/EmployeeRestController.java new file mode 100644 index 0000000000..516bff0e8c --- /dev/null +++ b/spring-boot-ops/src/main/java/org/baeldung/demo/boottest/EmployeeRestController.java @@ -0,0 +1,33 @@ +package org.baeldung.demo.boottest; + +import java.util.List; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@RequestMapping("/api") +public class EmployeeRestController { + + @Autowired + private EmployeeService employeeService; + + @PostMapping("/employees") + public ResponseEntity createEmployee(@RequestBody Employee employee) { + HttpStatus status = HttpStatus.CREATED; + Employee saved = employeeService.save(employee); + return new ResponseEntity<>(saved, status); + } + + @GetMapping("/employees") + public List getAllEmployees() { + return employeeService.getAllEmployees(); + } + +} diff --git a/spring-boot-ops/src/main/java/org/baeldung/demo/boottest/EmployeeService.java b/spring-boot-ops/src/main/java/org/baeldung/demo/boottest/EmployeeService.java new file mode 100644 index 0000000000..07765a511c --- /dev/null +++ b/spring-boot-ops/src/main/java/org/baeldung/demo/boottest/EmployeeService.java @@ -0,0 +1,16 @@ +package org.baeldung.demo.boottest; + +import java.util.List; + +public interface EmployeeService { + + public Employee getEmployeeById(Long id); + + public Employee getEmployeeByName(String name); + + public List getAllEmployees(); + + public boolean exists(String email); + + public Employee save(Employee employee); +} diff --git a/spring-boot-ops/src/main/java/org/baeldung/demo/boottest/EmployeeServiceImpl.java b/spring-boot-ops/src/main/java/org/baeldung/demo/boottest/EmployeeServiceImpl.java new file mode 100644 index 0000000000..a1639b29cc --- /dev/null +++ b/spring-boot-ops/src/main/java/org/baeldung/demo/boottest/EmployeeServiceImpl.java @@ -0,0 +1,43 @@ +package org.baeldung.demo.boottest; + +import java.util.List; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +@Service +@Transactional +public class EmployeeServiceImpl implements EmployeeService { + + @Autowired + private EmployeeRepository employeeRepository; + + @Override + public Employee getEmployeeById(Long id) { + return employeeRepository.findById(id).orElse(null); + } + + @Override + public Employee getEmployeeByName(String name) { + return employeeRepository.findByName(name); + } + + @Override + public boolean exists(String name) { + if (employeeRepository.findByName(name) != null) { + return true; + } + return false; + } + + @Override + public Employee save(Employee employee) { + return employeeRepository.save(employee); + } + + @Override + public List getAllEmployees() { + return employeeRepository.findAll(); + } +} diff --git a/spring-boot-ops/src/main/java/org/baeldung/demo/components/FooService.java b/spring-boot-ops/src/main/java/org/baeldung/demo/components/FooService.java new file mode 100644 index 0000000000..66943f6461 --- /dev/null +++ b/spring-boot-ops/src/main/java/org/baeldung/demo/components/FooService.java @@ -0,0 +1,21 @@ +package org.baeldung.demo.components; + +import org.baeldung.demo.model.Foo; +import org.baeldung.demo.repository.FooRepository; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +@Component +public class FooService { + + @Autowired + private FooRepository fooRepository; + + public Foo getFooWithId(Integer id) throws Exception { + return fooRepository.findById(id).orElse(null); + } + + public Foo getFooWithName(String name) { + return fooRepository.findByName(name); + } +} \ No newline at end of file diff --git a/spring-boot-ops/src/main/java/org/baeldung/demo/exceptions/CommonException.java b/spring-boot-ops/src/main/java/org/baeldung/demo/exceptions/CommonException.java new file mode 100644 index 0000000000..51dd7bbd44 --- /dev/null +++ b/spring-boot-ops/src/main/java/org/baeldung/demo/exceptions/CommonException.java @@ -0,0 +1,13 @@ +package org.baeldung.demo.exceptions; + +public class CommonException extends RuntimeException { + + /** + * + */ + private static final long serialVersionUID = 3080004140659213332L; + + public CommonException(String message) { + super(message); + } +} diff --git a/spring-boot-ops/src/main/java/org/baeldung/demo/exceptions/FooNotFoundException.java b/spring-boot-ops/src/main/java/org/baeldung/demo/exceptions/FooNotFoundException.java new file mode 100644 index 0000000000..59796c58f0 --- /dev/null +++ b/spring-boot-ops/src/main/java/org/baeldung/demo/exceptions/FooNotFoundException.java @@ -0,0 +1,13 @@ +package org.baeldung.demo.exceptions; + +public class FooNotFoundException extends RuntimeException { + + /** + * + */ + private static final long serialVersionUID = 9042200028456133589L; + + public FooNotFoundException(String message) { + super(message); + } +} diff --git a/spring-boot-ops/src/main/java/org/baeldung/demo/model/Foo.java b/spring-boot-ops/src/main/java/org/baeldung/demo/model/Foo.java new file mode 100644 index 0000000000..e5638cfd3d --- /dev/null +++ b/spring-boot-ops/src/main/java/org/baeldung/demo/model/Foo.java @@ -0,0 +1,45 @@ +package org.baeldung.demo.model; + +import java.io.Serializable; + +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.Id; + +@Entity +public class Foo implements Serializable { + private static final long serialVersionUID = 1L; + @Id + @GeneratedValue + private Integer id; + private String name; + + public Foo() { + } + + public Foo(String name) { + this.name = name; + } + + public Foo(Integer id, String name) { + super(); + this.id = id; + this.name = name; + } + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } +} diff --git a/spring-boot-ops/src/main/java/org/baeldung/demo/repository/FooRepository.java b/spring-boot-ops/src/main/java/org/baeldung/demo/repository/FooRepository.java new file mode 100644 index 0000000000..c04e0c7438 --- /dev/null +++ b/spring-boot-ops/src/main/java/org/baeldung/demo/repository/FooRepository.java @@ -0,0 +1,8 @@ +package org.baeldung.demo.repository; + +import org.baeldung.demo.model.Foo; +import org.springframework.data.jpa.repository.JpaRepository; + +public interface FooRepository extends JpaRepository { + public Foo findByName(String name); +} diff --git a/spring-boot-ops/src/main/java/org/baeldung/demo/service/FooController.java b/spring-boot-ops/src/main/java/org/baeldung/demo/service/FooController.java new file mode 100644 index 0000000000..c28dcde1a7 --- /dev/null +++ b/spring-boot-ops/src/main/java/org/baeldung/demo/service/FooController.java @@ -0,0 +1,26 @@ +package org.baeldung.demo.service; + +import org.baeldung.demo.components.FooService; +import org.baeldung.demo.model.Foo; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; + +@RestController +public class FooController { + + @Autowired + private FooService fooService; + + @GetMapping("/{id}") + public Foo getFooWithId(@PathVariable Integer id) throws Exception { + return fooService.getFooWithId(id); + } + + @GetMapping("/") + public Foo getFooWithName(@RequestParam String name) throws Exception { + return fooService.getFooWithName(name); + } +} \ No newline at end of file diff --git a/spring-boot-ops/src/main/resources/application.properties b/spring-boot-ops/src/main/resources/application.properties deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/spring-boot/src/main/resources/templates/customer.html b/spring-boot-ops/src/main/resources/templates/customer.html similarity index 100% rename from spring-boot/src/main/resources/templates/customer.html rename to spring-boot-ops/src/main/resources/templates/customer.html diff --git a/spring-boot/src/main/resources/templates/customers.html b/spring-boot-ops/src/main/resources/templates/customers.html similarity index 100% rename from spring-boot/src/main/resources/templates/customers.html rename to spring-boot-ops/src/main/resources/templates/customers.html diff --git a/spring-boot/src/main/resources/templates/displayallbeans.html b/spring-boot-ops/src/main/resources/templates/displayallbeans.html similarity index 100% rename from spring-boot/src/main/resources/templates/displayallbeans.html rename to spring-boot-ops/src/main/resources/templates/displayallbeans.html diff --git a/spring-boot/src/main/resources/templates/error-404.html b/spring-boot-ops/src/main/resources/templates/error-404.html similarity index 100% rename from spring-boot/src/main/resources/templates/error-404.html rename to spring-boot-ops/src/main/resources/templates/error-404.html diff --git a/spring-boot/src/main/resources/templates/error-500.html b/spring-boot-ops/src/main/resources/templates/error-500.html similarity index 100% rename from spring-boot/src/main/resources/templates/error-500.html rename to spring-boot-ops/src/main/resources/templates/error-500.html diff --git a/spring-boot/src/main/resources/templates/error.html b/spring-boot-ops/src/main/resources/templates/error.html similarity index 100% rename from spring-boot/src/main/resources/templates/error.html rename to spring-boot-ops/src/main/resources/templates/error.html diff --git a/spring-boot/src/main/resources/templates/error/404.html b/spring-boot-ops/src/main/resources/templates/error/404.html similarity index 100% rename from spring-boot/src/main/resources/templates/error/404.html rename to spring-boot-ops/src/main/resources/templates/error/404.html diff --git a/spring-boot/src/main/resources/templates/external.html b/spring-boot-ops/src/main/resources/templates/external.html similarity index 100% rename from spring-boot/src/main/resources/templates/external.html rename to spring-boot-ops/src/main/resources/templates/external.html diff --git a/spring-boot/src/main/resources/templates/index.html b/spring-boot-ops/src/main/resources/templates/index.html similarity index 100% rename from spring-boot/src/main/resources/templates/index.html rename to spring-boot-ops/src/main/resources/templates/index.html diff --git a/spring-boot/src/main/resources/templates/international.html b/spring-boot-ops/src/main/resources/templates/international.html similarity index 100% rename from spring-boot/src/main/resources/templates/international.html rename to spring-boot-ops/src/main/resources/templates/international.html diff --git a/spring-boot/src/main/resources/templates/layout.html b/spring-boot-ops/src/main/resources/templates/layout.html similarity index 100% rename from spring-boot/src/main/resources/templates/layout.html rename to spring-boot-ops/src/main/resources/templates/layout.html diff --git a/spring-boot/src/main/resources/templates/other.html b/spring-boot-ops/src/main/resources/templates/other.html similarity index 100% rename from spring-boot/src/main/resources/templates/other.html rename to spring-boot-ops/src/main/resources/templates/other.html diff --git a/spring-boot/src/main/resources/templates/utils.html b/spring-boot-ops/src/main/resources/templates/utils.html similarity index 100% rename from spring-boot/src/main/resources/templates/utils.html rename to spring-boot-ops/src/main/resources/templates/utils.html diff --git a/spring-boot/src/test/java/com/baeldung/shutdown/ShutdownApplicationIntegrationTest.java b/spring-boot-ops/src/test/java/com/baeldung/shutdown/ShutdownApplicationIntegrationTest.java similarity index 100% rename from spring-boot/src/test/java/com/baeldung/shutdown/ShutdownApplicationIntegrationTest.java rename to spring-boot-ops/src/test/java/com/baeldung/shutdown/ShutdownApplicationIntegrationTest.java diff --git a/spring-boot/src/test/java/com/baeldung/webjar/WebjarsdemoApplicationIntegrationTest.java b/spring-boot-ops/src/test/java/com/baeldung/webjar/WebjarsdemoApplicationIntegrationTest.java similarity index 100% rename from spring-boot/src/test/java/com/baeldung/webjar/WebjarsdemoApplicationIntegrationTest.java rename to spring-boot-ops/src/test/java/com/baeldung/webjar/WebjarsdemoApplicationIntegrationTest.java diff --git a/spring-boot/src/test/java/org/baeldung/SpringBootApplicationIntegrationTest.java b/spring-boot-ops/src/test/java/org/baeldung/SpringBootApplicationIntegrationTest.java similarity index 100% rename from spring-boot/src/test/java/org/baeldung/SpringBootApplicationIntegrationTest.java rename to spring-boot-ops/src/test/java/org/baeldung/SpringBootApplicationIntegrationTest.java diff --git a/spring-boot/src/test/java/org/baeldung/SpringBootJPAIntegrationTest.java b/spring-boot-ops/src/test/java/org/baeldung/SpringBootJPAIntegrationTest.java similarity index 100% rename from spring-boot/src/test/java/org/baeldung/SpringBootJPAIntegrationTest.java rename to spring-boot-ops/src/test/java/org/baeldung/SpringBootJPAIntegrationTest.java diff --git a/spring-boot/src/test/java/org/baeldung/SpringBootMailIntegrationTest.java b/spring-boot-ops/src/test/java/org/baeldung/SpringBootMailIntegrationTest.java similarity index 100% rename from spring-boot/src/test/java/org/baeldung/SpringBootMailIntegrationTest.java rename to spring-boot-ops/src/test/java/org/baeldung/SpringBootMailIntegrationTest.java diff --git a/spring-boot-ops/src/test/resources/application-integrationtest.properties b/spring-boot-ops/src/test/resources/application-integrationtest.properties new file mode 100644 index 0000000000..bcd03226d3 --- /dev/null +++ b/spring-boot-ops/src/test/resources/application-integrationtest.properties @@ -0,0 +1,4 @@ +spring.datasource.url=jdbc:mysql://localhost:3306/employee_int_test +spring.datasource.username=root +spring.datasource.password=root + diff --git a/spring-boot-ops/src/test/resources/application.properties b/spring-boot-ops/src/test/resources/application.properties new file mode 100644 index 0000000000..bda75c25fa --- /dev/null +++ b/spring-boot-ops/src/test/resources/application.properties @@ -0,0 +1,9 @@ +spring.mail.host=localhost +spring.mail.port=8025 +spring.mail.properties.mail.smtp.auth=false + +security.basic.enabled=false + +management.endpoints.web.exposure.include=* +management.endpoint.shutdown.enabled=true +endpoints.shutdown.enabled=true \ No newline at end of file diff --git a/spring-boot/README.MD b/spring-boot/README.MD index 094a70654a..3574c1be36 100644 --- a/spring-boot/README.MD +++ b/spring-boot/README.MD @@ -4,12 +4,10 @@ The "REST With Spring" Classes: http://bit.ly/restwithspring ### Relevant Articles: - [Quick Guide to @RestClientTest in Spring Boot](http://www.baeldung.com/restclienttest-in-spring-boot) -- [Intro to Spring Boot Starters](http://www.baeldung.com/spring-boot-starters) - [A Guide to Spring in Eclipse STS](http://www.baeldung.com/eclipse-sts-spring) - [Introduction to WebJars](http://www.baeldung.com/maven-webjars) - [Create a Fat Jar App with Spring Boot](http://www.baeldung.com/deployable-fat-jar-spring-boot) - [The @ServletComponentScan Annotation in Spring Boot](http://www.baeldung.com/spring-servletcomponentscan) -- [A Custom Data Binder in Spring MVC](http://www.baeldung.com/spring-mvc-custom-data-binder) - [Intro to Building an Application with Spring Boot](http://www.baeldung.com/intro-to-spring-boot) - [How to Register a Servlet in a Java Web Application](http://www.baeldung.com/register-servlet) - [Guide to Spring WebUtils and ServletRequestUtils](http://www.baeldung.com/spring-webutils-servletrequestutils) diff --git a/spring-boot/pom.xml b/spring-boot/pom.xml index afc80eb68b..c1b21b9b5e 100644 --- a/spring-boot/pom.xml +++ b/spring-boot/pom.xml @@ -38,11 +38,6 @@ graphql-spring-boot-starter 3.6.0 - - com.graphql-java - graphiql-spring-boot-starter - 3.6.0 - com.graphql-java graphql-java-tools @@ -84,27 +79,6 @@ json-path test - - org.springframework.boot - spring-boot-starter-mail - - - org.subethamail - subethasmtp - ${subethasmtp.version} - test - - - - org.webjars - bootstrap - ${bootstrap.version} - - - org.webjars - jquery - ${jquery.version} - com.google.guava @@ -218,9 +192,6 @@ org.baeldung.demo.DemoApplication - 3.1.1 - 3.3.7-1 - 3.1.7 8.5.11 2.4.1.Final 1.9.0 From 0e55fdd05b25778785c7d1b78dd9cdd392a6a6ef Mon Sep 17 00:00:00 2001 From: Eric Goebelbecker Date: Thu, 31 May 2018 14:41:03 -0400 Subject: [PATCH 13/55] BAEL-1800 (#4378) * BAEL-1800 - Code for http://www.baeldung.com/spring-boot-starters and http://www.baeldung.com/spring-mvc-custom-data-binder * BAEL-1800 - Code for http://www.baeldung.com/maven-webjars and http://www.baeldung.com/deployable-fat-jar-spring-boot * BAEL-1800 - Code for http://www.baeldung.com/spring-boot-shutdown * BAEL-1800 - Code for http://www.baeldung.com/spring-boot-shutdown * BAEL-1800 - Code for http://www.baeldung.com/spring-boot-dependency-management-custom-parent * BAEL-1800 - updates to README * BAEL-1800 - did not need graphql and demo for webjar project. --- spring-boot-ops/README.MD | 6 ++ .../java/com/baeldung/graphql/Author.java | 31 ---------- .../java/com/baeldung/graphql/AuthorDao.java | 16 ----- .../com/baeldung/graphql/AuthorResolver.java | 17 ------ .../graphql/GraphqlConfiguration.java | 59 ------------------- .../java/com/baeldung/graphql/Mutation.java | 25 -------- .../main/java/com/baeldung/graphql/Post.java | 49 --------------- .../java/com/baeldung/graphql/PostDao.java | 24 -------- .../com/baeldung/graphql/PostResolver.java | 17 ------ .../main/java/com/baeldung/graphql/Query.java | 17 ------ .../org/baeldung/demo/DemoApplication.java | 18 ------ .../org/baeldung/demo/boottest/Employee.java | 43 -------------- .../demo/boottest/EmployeeRepository.java | 17 ------ .../demo/boottest/EmployeeRestController.java | 33 ----------- .../demo/boottest/EmployeeService.java | 16 ----- .../demo/boottest/EmployeeServiceImpl.java | 43 -------------- .../baeldung/demo/components/FooService.java | 21 ------- .../demo/exceptions/CommonException.java | 13 ---- .../demo/exceptions/FooNotFoundException.java | 13 ---- .../java/org/baeldung/demo/model/Foo.java | 45 -------------- .../demo/repository/FooRepository.java | 8 --- .../baeldung/demo/service/FooController.java | 26 -------- spring-boot/README.MD | 4 -- 23 files changed, 6 insertions(+), 555 deletions(-) delete mode 100644 spring-boot-ops/src/main/java/com/baeldung/graphql/Author.java delete mode 100644 spring-boot-ops/src/main/java/com/baeldung/graphql/AuthorDao.java delete mode 100644 spring-boot-ops/src/main/java/com/baeldung/graphql/AuthorResolver.java delete mode 100644 spring-boot-ops/src/main/java/com/baeldung/graphql/GraphqlConfiguration.java delete mode 100644 spring-boot-ops/src/main/java/com/baeldung/graphql/Mutation.java delete mode 100644 spring-boot-ops/src/main/java/com/baeldung/graphql/Post.java delete mode 100644 spring-boot-ops/src/main/java/com/baeldung/graphql/PostDao.java delete mode 100644 spring-boot-ops/src/main/java/com/baeldung/graphql/PostResolver.java delete mode 100644 spring-boot-ops/src/main/java/com/baeldung/graphql/Query.java delete mode 100644 spring-boot-ops/src/main/java/org/baeldung/demo/DemoApplication.java delete mode 100644 spring-boot-ops/src/main/java/org/baeldung/demo/boottest/Employee.java delete mode 100644 spring-boot-ops/src/main/java/org/baeldung/demo/boottest/EmployeeRepository.java delete mode 100644 spring-boot-ops/src/main/java/org/baeldung/demo/boottest/EmployeeRestController.java delete mode 100644 spring-boot-ops/src/main/java/org/baeldung/demo/boottest/EmployeeService.java delete mode 100644 spring-boot-ops/src/main/java/org/baeldung/demo/boottest/EmployeeServiceImpl.java delete mode 100644 spring-boot-ops/src/main/java/org/baeldung/demo/components/FooService.java delete mode 100644 spring-boot-ops/src/main/java/org/baeldung/demo/exceptions/CommonException.java delete mode 100644 spring-boot-ops/src/main/java/org/baeldung/demo/exceptions/FooNotFoundException.java delete mode 100644 spring-boot-ops/src/main/java/org/baeldung/demo/model/Foo.java delete mode 100644 spring-boot-ops/src/main/java/org/baeldung/demo/repository/FooRepository.java delete mode 100644 spring-boot-ops/src/main/java/org/baeldung/demo/service/FooController.java diff --git a/spring-boot-ops/README.MD b/spring-boot-ops/README.MD index e2a9a6ab59..5ac223397c 100644 --- a/spring-boot-ops/README.MD +++ b/spring-boot-ops/README.MD @@ -5,3 +5,9 @@ The "REST With Spring" Classes: http://bit.ly/restwithspring - [Intro to Spring Boot Starters](http://www.baeldung.com/spring-boot-starters) - [A Custom Data Binder in Spring MVC](http://www.baeldung.com/spring-mvc-custom-data-binder) +- [Introduction to WebJars](http://www.baeldung.com/maven-webjars) +- [A Quick Guide to Maven Wrapper](http://www.baeldung.com/maven-wrapper) +- [Shutdown a Spring Boot Application](http://www.baeldung.com/spring-boot-shutdown) +- [Create a Fat Jar App with Spring Boot](http://www.baeldung.com/deployable-fat-jar-spring-boot) +- [Spring Boot Dependency Management with a Custom Parent](http://www.baeldung.com/spring-boot-dependency-management-custom-parent) + diff --git a/spring-boot-ops/src/main/java/com/baeldung/graphql/Author.java b/spring-boot-ops/src/main/java/com/baeldung/graphql/Author.java deleted file mode 100644 index 11e927c564..0000000000 --- a/spring-boot-ops/src/main/java/com/baeldung/graphql/Author.java +++ /dev/null @@ -1,31 +0,0 @@ -package com.baeldung.graphql; - -public class Author { - private String id; - private String name; - private String thumbnail; - - public String getId() { - return id; - } - - public void setId(String id) { - this.id = id; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public String getThumbnail() { - return thumbnail; - } - - public void setThumbnail(String thumbnail) { - this.thumbnail = thumbnail; - } -} diff --git a/spring-boot-ops/src/main/java/com/baeldung/graphql/AuthorDao.java b/spring-boot-ops/src/main/java/com/baeldung/graphql/AuthorDao.java deleted file mode 100644 index c799a558a7..0000000000 --- a/spring-boot-ops/src/main/java/com/baeldung/graphql/AuthorDao.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.baeldung.graphql; - -import java.util.List; -import java.util.Optional; - -public class AuthorDao { - private List authors; - - public AuthorDao(List authors) { - this.authors = authors; - } - - public Optional getAuthor(String id) { - return authors.stream().filter(author -> id.equals(author.getId())).findFirst(); - } -} diff --git a/spring-boot-ops/src/main/java/com/baeldung/graphql/AuthorResolver.java b/spring-boot-ops/src/main/java/com/baeldung/graphql/AuthorResolver.java deleted file mode 100644 index 982c6cebc1..0000000000 --- a/spring-boot-ops/src/main/java/com/baeldung/graphql/AuthorResolver.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.baeldung.graphql; - -import java.util.List; - -import com.coxautodev.graphql.tools.GraphQLResolver; - -public class AuthorResolver implements GraphQLResolver { - private PostDao postDao; - - public AuthorResolver(PostDao postDao) { - this.postDao = postDao; - } - - public List getPosts(Author author) { - return postDao.getAuthorPosts(author.getId()); - } -} diff --git a/spring-boot-ops/src/main/java/com/baeldung/graphql/GraphqlConfiguration.java b/spring-boot-ops/src/main/java/com/baeldung/graphql/GraphqlConfiguration.java deleted file mode 100644 index c5ae8bd772..0000000000 --- a/spring-boot-ops/src/main/java/com/baeldung/graphql/GraphqlConfiguration.java +++ /dev/null @@ -1,59 +0,0 @@ -package com.baeldung.graphql; - -import java.util.ArrayList; -import java.util.List; - -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; - -@Configuration -public class GraphqlConfiguration { - @Bean - public PostDao postDao() { - List posts = new ArrayList<>(); - for (int postId = 0; postId < 10; ++postId) { - for (int authorId = 0; authorId < 10; ++authorId) { - Post post = new Post(); - post.setId("Post" + authorId + postId); - post.setTitle("Post " + authorId + ":" + postId); - post.setText("Post " + postId + " + by author " + authorId); - post.setAuthorId("Author" + authorId); - posts.add(post); - } - } - return new PostDao(posts); - } - - @Bean - public AuthorDao authorDao() { - List authors = new ArrayList<>(); - for (int authorId = 0; authorId < 10; ++authorId) { - Author author = new Author(); - author.setId("Author" + authorId); - author.setName("Author " + authorId); - author.setThumbnail("http://example.com/authors/" + authorId); - authors.add(author); - } - return new AuthorDao(authors); - } - - @Bean - public PostResolver postResolver(AuthorDao authorDao) { - return new PostResolver(authorDao); - } - - @Bean - public AuthorResolver authorResolver(PostDao postDao) { - return new AuthorResolver(postDao); - } - - @Bean - public Query query(PostDao postDao) { - return new Query(postDao); - } - - @Bean - public Mutation mutation(PostDao postDao) { - return new Mutation(postDao); - } -} diff --git a/spring-boot-ops/src/main/java/com/baeldung/graphql/Mutation.java b/spring-boot-ops/src/main/java/com/baeldung/graphql/Mutation.java deleted file mode 100644 index 0e16e3c8b7..0000000000 --- a/spring-boot-ops/src/main/java/com/baeldung/graphql/Mutation.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.baeldung.graphql; - -import java.util.UUID; - -import com.coxautodev.graphql.tools.GraphQLMutationResolver; - -public class Mutation implements GraphQLMutationResolver { - private PostDao postDao; - - public Mutation(PostDao postDao) { - this.postDao = postDao; - } - - public Post writePost(String title, String text, String category, String author) { - Post post = new Post(); - post.setId(UUID.randomUUID().toString()); - post.setTitle(title); - post.setText(text); - post.setCategory(category); - post.setAuthorId(author); - postDao.savePost(post); - - return post; - } -} diff --git a/spring-boot-ops/src/main/java/com/baeldung/graphql/Post.java b/spring-boot-ops/src/main/java/com/baeldung/graphql/Post.java deleted file mode 100644 index 14d3084841..0000000000 --- a/spring-boot-ops/src/main/java/com/baeldung/graphql/Post.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.baeldung.graphql; - -public class Post { - private String id; - private String title; - private String text; - private String category; - private String authorId; - - public String getId() { - return id; - } - - public void setId(String id) { - this.id = id; - } - - public String getTitle() { - return title; - } - - public void setTitle(String title) { - this.title = title; - } - - public String getText() { - return text; - } - - public void setText(String text) { - this.text = text; - } - - public String getCategory() { - return category; - } - - public void setCategory(String category) { - this.category = category; - } - - public String getAuthorId() { - return authorId; - } - - public void setAuthorId(String authorId) { - this.authorId = authorId; - } -} diff --git a/spring-boot-ops/src/main/java/com/baeldung/graphql/PostDao.java b/spring-boot-ops/src/main/java/com/baeldung/graphql/PostDao.java deleted file mode 100644 index 0a755a7cf4..0000000000 --- a/spring-boot-ops/src/main/java/com/baeldung/graphql/PostDao.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.baeldung.graphql; - -import java.util.List; -import java.util.stream.Collectors; - -public class PostDao { - private List posts; - - public PostDao(List posts) { - this.posts = posts; - } - - public List getRecentPosts(int count, int offset) { - return posts.stream().skip(offset).limit(count).collect(Collectors.toList()); - } - - public List getAuthorPosts(String author) { - return posts.stream().filter(post -> author.equals(post.getAuthorId())).collect(Collectors.toList()); - } - - public void savePost(Post post) { - posts.add(0, post); - } -} diff --git a/spring-boot-ops/src/main/java/com/baeldung/graphql/PostResolver.java b/spring-boot-ops/src/main/java/com/baeldung/graphql/PostResolver.java deleted file mode 100644 index dbfde330ea..0000000000 --- a/spring-boot-ops/src/main/java/com/baeldung/graphql/PostResolver.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.baeldung.graphql; - -import java.util.Optional; - -import com.coxautodev.graphql.tools.GraphQLResolver; - -public class PostResolver implements GraphQLResolver { - private AuthorDao authorDao; - - public PostResolver(AuthorDao authorDao) { - this.authorDao = authorDao; - } - - public Optional getAuthor(Post post) { - return authorDao.getAuthor(post.getAuthorId()); - } -} diff --git a/spring-boot-ops/src/main/java/com/baeldung/graphql/Query.java b/spring-boot-ops/src/main/java/com/baeldung/graphql/Query.java deleted file mode 100644 index 7bb625798c..0000000000 --- a/spring-boot-ops/src/main/java/com/baeldung/graphql/Query.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.baeldung.graphql; - -import java.util.List; - -import com.coxautodev.graphql.tools.GraphQLQueryResolver; - -public class Query implements GraphQLQueryResolver { - private PostDao postDao; - - public Query(PostDao postDao) { - this.postDao = postDao; - } - - public List recentPosts(int count, int offset) { - return postDao.getRecentPosts(count, offset); - } -} diff --git a/spring-boot-ops/src/main/java/org/baeldung/demo/DemoApplication.java b/spring-boot-ops/src/main/java/org/baeldung/demo/DemoApplication.java deleted file mode 100644 index 4a88fcea07..0000000000 --- a/spring-boot-ops/src/main/java/org/baeldung/demo/DemoApplication.java +++ /dev/null @@ -1,18 +0,0 @@ -package org.baeldung.demo; - -import com.baeldung.graphql.GraphqlConfiguration; -import org.springframework.boot.SpringApplication; -import org.springframework.boot.autoconfigure.SpringBootApplication; - -import org.springframework.context.annotation.Import; - -@SpringBootApplication -@Import(GraphqlConfiguration.class) -public class DemoApplication { - - public static void main(String[] args) { - System.setProperty("spring.config.name", "demo"); - SpringApplication.run(DemoApplication.class, args); - } - -} diff --git a/spring-boot-ops/src/main/java/org/baeldung/demo/boottest/Employee.java b/spring-boot-ops/src/main/java/org/baeldung/demo/boottest/Employee.java deleted file mode 100644 index c1dd109f91..0000000000 --- a/spring-boot-ops/src/main/java/org/baeldung/demo/boottest/Employee.java +++ /dev/null @@ -1,43 +0,0 @@ -package org.baeldung.demo.boottest; - -import javax.persistence.Entity; -import javax.persistence.GeneratedValue; -import javax.persistence.GenerationType; -import javax.persistence.Id; -import javax.persistence.Table; -import javax.validation.constraints.Size; - -@Entity -@Table(name = "person") -public class Employee { - - public Employee() { - } - - public Employee(String name) { - this.name = name; - } - - @Id - @GeneratedValue(strategy = GenerationType.AUTO) - private Long id; - - @Size(min = 3, max = 20) - private String name; - - public Long getId() { - return id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } -} \ No newline at end of file diff --git a/spring-boot-ops/src/main/java/org/baeldung/demo/boottest/EmployeeRepository.java b/spring-boot-ops/src/main/java/org/baeldung/demo/boottest/EmployeeRepository.java deleted file mode 100644 index 00fdbfaae4..0000000000 --- a/spring-boot-ops/src/main/java/org/baeldung/demo/boottest/EmployeeRepository.java +++ /dev/null @@ -1,17 +0,0 @@ -package org.baeldung.demo.boottest; - -import java.util.List; - -import org.springframework.data.jpa.repository.JpaRepository; -import org.springframework.stereotype.Repository; -import org.springframework.transaction.annotation.Transactional; - -@Repository -@Transactional -public interface EmployeeRepository extends JpaRepository { - - public Employee findByName(String name); - - public List findAll(); - -} diff --git a/spring-boot-ops/src/main/java/org/baeldung/demo/boottest/EmployeeRestController.java b/spring-boot-ops/src/main/java/org/baeldung/demo/boottest/EmployeeRestController.java deleted file mode 100644 index 516bff0e8c..0000000000 --- a/spring-boot-ops/src/main/java/org/baeldung/demo/boottest/EmployeeRestController.java +++ /dev/null @@ -1,33 +0,0 @@ -package org.baeldung.demo.boottest; - -import java.util.List; - -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.http.HttpStatus; -import org.springframework.http.ResponseEntity; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -@RestController -@RequestMapping("/api") -public class EmployeeRestController { - - @Autowired - private EmployeeService employeeService; - - @PostMapping("/employees") - public ResponseEntity createEmployee(@RequestBody Employee employee) { - HttpStatus status = HttpStatus.CREATED; - Employee saved = employeeService.save(employee); - return new ResponseEntity<>(saved, status); - } - - @GetMapping("/employees") - public List getAllEmployees() { - return employeeService.getAllEmployees(); - } - -} diff --git a/spring-boot-ops/src/main/java/org/baeldung/demo/boottest/EmployeeService.java b/spring-boot-ops/src/main/java/org/baeldung/demo/boottest/EmployeeService.java deleted file mode 100644 index 07765a511c..0000000000 --- a/spring-boot-ops/src/main/java/org/baeldung/demo/boottest/EmployeeService.java +++ /dev/null @@ -1,16 +0,0 @@ -package org.baeldung.demo.boottest; - -import java.util.List; - -public interface EmployeeService { - - public Employee getEmployeeById(Long id); - - public Employee getEmployeeByName(String name); - - public List getAllEmployees(); - - public boolean exists(String email); - - public Employee save(Employee employee); -} diff --git a/spring-boot-ops/src/main/java/org/baeldung/demo/boottest/EmployeeServiceImpl.java b/spring-boot-ops/src/main/java/org/baeldung/demo/boottest/EmployeeServiceImpl.java deleted file mode 100644 index a1639b29cc..0000000000 --- a/spring-boot-ops/src/main/java/org/baeldung/demo/boottest/EmployeeServiceImpl.java +++ /dev/null @@ -1,43 +0,0 @@ -package org.baeldung.demo.boottest; - -import java.util.List; - -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - -@Service -@Transactional -public class EmployeeServiceImpl implements EmployeeService { - - @Autowired - private EmployeeRepository employeeRepository; - - @Override - public Employee getEmployeeById(Long id) { - return employeeRepository.findById(id).orElse(null); - } - - @Override - public Employee getEmployeeByName(String name) { - return employeeRepository.findByName(name); - } - - @Override - public boolean exists(String name) { - if (employeeRepository.findByName(name) != null) { - return true; - } - return false; - } - - @Override - public Employee save(Employee employee) { - return employeeRepository.save(employee); - } - - @Override - public List getAllEmployees() { - return employeeRepository.findAll(); - } -} diff --git a/spring-boot-ops/src/main/java/org/baeldung/demo/components/FooService.java b/spring-boot-ops/src/main/java/org/baeldung/demo/components/FooService.java deleted file mode 100644 index 66943f6461..0000000000 --- a/spring-boot-ops/src/main/java/org/baeldung/demo/components/FooService.java +++ /dev/null @@ -1,21 +0,0 @@ -package org.baeldung.demo.components; - -import org.baeldung.demo.model.Foo; -import org.baeldung.demo.repository.FooRepository; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -@Component -public class FooService { - - @Autowired - private FooRepository fooRepository; - - public Foo getFooWithId(Integer id) throws Exception { - return fooRepository.findById(id).orElse(null); - } - - public Foo getFooWithName(String name) { - return fooRepository.findByName(name); - } -} \ No newline at end of file diff --git a/spring-boot-ops/src/main/java/org/baeldung/demo/exceptions/CommonException.java b/spring-boot-ops/src/main/java/org/baeldung/demo/exceptions/CommonException.java deleted file mode 100644 index 51dd7bbd44..0000000000 --- a/spring-boot-ops/src/main/java/org/baeldung/demo/exceptions/CommonException.java +++ /dev/null @@ -1,13 +0,0 @@ -package org.baeldung.demo.exceptions; - -public class CommonException extends RuntimeException { - - /** - * - */ - private static final long serialVersionUID = 3080004140659213332L; - - public CommonException(String message) { - super(message); - } -} diff --git a/spring-boot-ops/src/main/java/org/baeldung/demo/exceptions/FooNotFoundException.java b/spring-boot-ops/src/main/java/org/baeldung/demo/exceptions/FooNotFoundException.java deleted file mode 100644 index 59796c58f0..0000000000 --- a/spring-boot-ops/src/main/java/org/baeldung/demo/exceptions/FooNotFoundException.java +++ /dev/null @@ -1,13 +0,0 @@ -package org.baeldung.demo.exceptions; - -public class FooNotFoundException extends RuntimeException { - - /** - * - */ - private static final long serialVersionUID = 9042200028456133589L; - - public FooNotFoundException(String message) { - super(message); - } -} diff --git a/spring-boot-ops/src/main/java/org/baeldung/demo/model/Foo.java b/spring-boot-ops/src/main/java/org/baeldung/demo/model/Foo.java deleted file mode 100644 index e5638cfd3d..0000000000 --- a/spring-boot-ops/src/main/java/org/baeldung/demo/model/Foo.java +++ /dev/null @@ -1,45 +0,0 @@ -package org.baeldung.demo.model; - -import java.io.Serializable; - -import javax.persistence.Entity; -import javax.persistence.GeneratedValue; -import javax.persistence.Id; - -@Entity -public class Foo implements Serializable { - private static final long serialVersionUID = 1L; - @Id - @GeneratedValue - private Integer id; - private String name; - - public Foo() { - } - - public Foo(String name) { - this.name = name; - } - - public Foo(Integer id, String name) { - super(); - this.id = id; - this.name = name; - } - - public Integer getId() { - return id; - } - - public void setId(Integer id) { - this.id = id; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } -} diff --git a/spring-boot-ops/src/main/java/org/baeldung/demo/repository/FooRepository.java b/spring-boot-ops/src/main/java/org/baeldung/demo/repository/FooRepository.java deleted file mode 100644 index c04e0c7438..0000000000 --- a/spring-boot-ops/src/main/java/org/baeldung/demo/repository/FooRepository.java +++ /dev/null @@ -1,8 +0,0 @@ -package org.baeldung.demo.repository; - -import org.baeldung.demo.model.Foo; -import org.springframework.data.jpa.repository.JpaRepository; - -public interface FooRepository extends JpaRepository { - public Foo findByName(String name); -} diff --git a/spring-boot-ops/src/main/java/org/baeldung/demo/service/FooController.java b/spring-boot-ops/src/main/java/org/baeldung/demo/service/FooController.java deleted file mode 100644 index c28dcde1a7..0000000000 --- a/spring-boot-ops/src/main/java/org/baeldung/demo/service/FooController.java +++ /dev/null @@ -1,26 +0,0 @@ -package org.baeldung.demo.service; - -import org.baeldung.demo.components.FooService; -import org.baeldung.demo.model.Foo; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.RestController; - -@RestController -public class FooController { - - @Autowired - private FooService fooService; - - @GetMapping("/{id}") - public Foo getFooWithId(@PathVariable Integer id) throws Exception { - return fooService.getFooWithId(id); - } - - @GetMapping("/") - public Foo getFooWithName(@RequestParam String name) throws Exception { - return fooService.getFooWithName(name); - } -} \ No newline at end of file diff --git a/spring-boot/README.MD b/spring-boot/README.MD index 3574c1be36..124dd17921 100644 --- a/spring-boot/README.MD +++ b/spring-boot/README.MD @@ -5,8 +5,6 @@ The "REST With Spring" Classes: http://bit.ly/restwithspring - [Quick Guide to @RestClientTest in Spring Boot](http://www.baeldung.com/restclienttest-in-spring-boot) - [A Guide to Spring in Eclipse STS](http://www.baeldung.com/eclipse-sts-spring) -- [Introduction to WebJars](http://www.baeldung.com/maven-webjars) -- [Create a Fat Jar App with Spring Boot](http://www.baeldung.com/deployable-fat-jar-spring-boot) - [The @ServletComponentScan Annotation in Spring Boot](http://www.baeldung.com/spring-servletcomponentscan) - [Intro to Building an Application with Spring Boot](http://www.baeldung.com/intro-to-spring-boot) - [How to Register a Servlet in a Java Web Application](http://www.baeldung.com/register-servlet) @@ -27,11 +25,9 @@ The "REST With Spring" Classes: http://bit.ly/restwithspring - [Guide to Spring Type Conversions](http://www.baeldung.com/spring-type-conversions) - [Quick Guide on data.sql and schema.sql Files in Spring Boot](http://www.baeldung.com/spring-boot-data-sql-and-schema-sql) - [Spring Data Java 8 Support](http://www.baeldung.com/spring-data-java-8) -- [A Quick Guide to Maven Wrapper](http://www.baeldung.com/maven-wrapper) - [An Introduction to Kong](http://www.baeldung.com/kong) - [Spring Boot Customize Whitelabel Error Page](http://www.baeldung.com/spring-boot-custom-error-page) - [Spring Boot: Configuring a Main Class](http://www.baeldung.com/spring-boot-main-class) -- [Shutdown a Spring Boot Application](http://www.baeldung.com/spring-boot-shutdown) - [A Quick Intro to the SpringBootServletInitializer](http://www.baeldung.com/spring-boot-servlet-initializer) - [How to Define a Spring Boot Filter?](http://www.baeldung.com/spring-boot-add-filter) - [How to Change the Default Port in Spring Boot](http://www.baeldung.com/spring-boot-change-port) From 74803385cb58962a027a2dfb457da24644cbe088 Mon Sep 17 00:00:00 2001 From: Loredana Crusoveanu Date: Thu, 31 May 2018 22:26:30 +0300 Subject: [PATCH 14/55] update cloud gateway to latest milestone --- spring-cloud/spring-cloud-gateway/pom.xml | 32 ++++++++++++------- .../spring/cloud/GatewayApplication.java | 1 + .../src/main/resources/application.yml | 7 ++-- 3 files changed, 26 insertions(+), 14 deletions(-) diff --git a/spring-cloud/spring-cloud-gateway/pom.xml b/spring-cloud/spring-cloud-gateway/pom.xml index 4cc45cc6b3..aa523ec604 100644 --- a/spring-cloud/spring-cloud-gateway/pom.xml +++ b/spring-cloud/spring-cloud-gateway/pom.xml @@ -14,21 +14,30 @@ .. + + + + org.springframework.cloud + spring-cloud-gateway + ${cloud.version} + pom + import + + + + + + org.springframework.cloud + spring-cloud-starter-gateway + org.springframework.boot - spring-boot-actuator - ${version} + spring-boot-starter-actuator org.springframework.boot spring-boot-starter-webflux - ${version} - - - org.springframework.cloud - spring-cloud-gateway-core - ${version} @@ -39,12 +48,10 @@ javax.validation validation-api - 2.0.0.Final io.projectreactor.ipc reactor-netty - 0.7.0.M1 @@ -70,8 +77,9 @@ UTF-8 3.7.0 - 1.4.2.RELEASE - 2.0.0.M6 + 2.0.0.RELEASE + 2.0.0.RELEASE + 2.0.0.RC2 diff --git a/spring-cloud/spring-cloud-gateway/src/main/java/com/baeldung/spring/cloud/GatewayApplication.java b/spring-cloud/spring-cloud-gateway/src/main/java/com/baeldung/spring/cloud/GatewayApplication.java index 4d5f61315f..ba384749df 100644 --- a/spring-cloud/spring-cloud-gateway/src/main/java/com/baeldung/spring/cloud/GatewayApplication.java +++ b/spring-cloud/spring-cloud-gateway/src/main/java/com/baeldung/spring/cloud/GatewayApplication.java @@ -9,4 +9,5 @@ public class GatewayApplication { public static void main(String[] args) { SpringApplication.run(GatewayApplication.class, args); } + } \ No newline at end of file diff --git a/spring-cloud/spring-cloud-gateway/src/main/resources/application.yml b/spring-cloud/spring-cloud-gateway/src/main/resources/application.yml index 8b981f8071..2450638e46 100644 --- a/spring-cloud/spring-cloud-gateway/src/main/resources/application.yml +++ b/spring-cloud/spring-cloud-gateway/src/main/resources/application.yml @@ -8,6 +8,9 @@ spring: uri: http://www.baeldung.com predicates: - Path=/baeldung + management: - security: - enabled: false \ No newline at end of file + endpoints: + web: + exposure: + include: "*" From f898fe9730d879c47b323d3d4a2fdf11cdeb6973 Mon Sep 17 00:00:00 2001 From: Loredana Crusoveanu Date: Fri, 1 Jun 2018 02:13:18 +0300 Subject: [PATCH 15/55] remove extra dependencies and files (#4384) * remove extra dependencies and files * remove extra file --- spring-boot-ops/pom.xml | 35 +++++-------------- .../baeldung/toggle/EmployeeRepository.java | 7 ---- .../baeldung/toggle/FeatureAssociation.java | 12 ------- .../com/baeldung/toggle/FeaturesAspect.java | 26 -------------- .../java/com/baeldung/toggle/MyFeatures.java | 23 ------------ .../com/baeldung/toggle/SalaryController.java | 20 ----------- .../com/baeldung/toggle/SalaryService.java | 19 ---------- .../baeldung/toggle/ToggleApplication.java | 15 -------- .../baeldung/toggle/ToggleConfiguration.java | 20 ----------- .../converter/StringToEmployeeConverter.java | 2 +- .../StringToEmployeeConverterController.java | 2 +- .../baeldung/boot/domain}/Employee.java | 2 +- .../main/resources/templates/customer.html | 16 --------- .../main/resources/templates/customers.html | 33 ----------------- .../resources/templates/displayallbeans.html | 10 ------ .../main/resources/templates/error-404.html | 14 -------- .../main/resources/templates/error-500.html | 16 --------- .../src/main/resources/templates/error.html | 16 --------- .../main/resources/templates/error/404.html | 8 ----- .../main/resources/templates/external.html | 31 ---------------- .../resources/templates/international.html | 20 ----------- .../src/main/resources/templates/layout.html | 18 ---------- .../src/main/resources/templates/other.html | 16 --------- .../src/main/resources/templates/utils.html | 23 ------------ .../src/test/resources/application.properties | 2 -- 25 files changed, 11 insertions(+), 395 deletions(-) delete mode 100644 spring-boot-ops/src/main/java/com/baeldung/toggle/EmployeeRepository.java delete mode 100644 spring-boot-ops/src/main/java/com/baeldung/toggle/FeatureAssociation.java delete mode 100644 spring-boot-ops/src/main/java/com/baeldung/toggle/FeaturesAspect.java delete mode 100644 spring-boot-ops/src/main/java/com/baeldung/toggle/MyFeatures.java delete mode 100644 spring-boot-ops/src/main/java/com/baeldung/toggle/SalaryController.java delete mode 100644 spring-boot-ops/src/main/java/com/baeldung/toggle/SalaryService.java delete mode 100644 spring-boot-ops/src/main/java/com/baeldung/toggle/ToggleApplication.java delete mode 100644 spring-boot-ops/src/main/java/com/baeldung/toggle/ToggleConfiguration.java rename spring-boot-ops/src/main/java/{com/baeldung/toggle => org/baeldung/boot/domain}/Employee.java (94%) delete mode 100644 spring-boot-ops/src/main/resources/templates/customer.html delete mode 100644 spring-boot-ops/src/main/resources/templates/customers.html delete mode 100644 spring-boot-ops/src/main/resources/templates/displayallbeans.html delete mode 100644 spring-boot-ops/src/main/resources/templates/error-404.html delete mode 100644 spring-boot-ops/src/main/resources/templates/error-500.html delete mode 100644 spring-boot-ops/src/main/resources/templates/error.html delete mode 100644 spring-boot-ops/src/main/resources/templates/error/404.html delete mode 100644 spring-boot-ops/src/main/resources/templates/external.html delete mode 100644 spring-boot-ops/src/main/resources/templates/international.html delete mode 100644 spring-boot-ops/src/main/resources/templates/layout.html delete mode 100644 spring-boot-ops/src/main/resources/templates/other.html delete mode 100644 spring-boot-ops/src/main/resources/templates/utils.html diff --git a/spring-boot-ops/pom.xml b/spring-boot-ops/pom.xml index 760442d386..b6adb27fb2 100644 --- a/spring-boot-ops/pom.xml +++ b/spring-boot-ops/pom.xml @@ -11,16 +11,16 @@ spring-boot-ops Demo project for Spring Boot - - org.springframework.boot - spring-boot-starter-parent - 2.0.1.RELEASE - - + + parent-boot-2 + com.baeldung + 0.0.1-SNAPSHOT + ../parent-boot-2 + - org.baeldung.demo.DemoApplication + org.baeldung.boot.Application UTF-8 UTF-8 1.8 @@ -56,7 +56,7 @@ org.springframework.boot - spring-boot-starter-tomcat + spring-boot-starter-thymeleaf provided @@ -76,12 +76,6 @@ spring-boot-starter-mail - - com.graphql-java - graphql-spring-boot-starter - 3.6.0 - - org.springframework.boot spring-boot-starter-actuator @@ -99,12 +93,6 @@ 2.2 - - org.togglz - togglz-spring-boot-starter - 2.4.1.Final - - com.google.guava guava @@ -130,12 +118,6 @@ ${jquery.version} - - com.graphql-java - graphql-java-tools - 3.2.0 - - @@ -149,7 +131,6 @@ org.springframework.boot spring-boot-maven-plugin - 1.5.2.RELEASE diff --git a/spring-boot-ops/src/main/java/com/baeldung/toggle/EmployeeRepository.java b/spring-boot-ops/src/main/java/com/baeldung/toggle/EmployeeRepository.java deleted file mode 100644 index 4e75fc6411..0000000000 --- a/spring-boot-ops/src/main/java/com/baeldung/toggle/EmployeeRepository.java +++ /dev/null @@ -1,7 +0,0 @@ -package com.baeldung.toggle; - -import org.springframework.data.repository.CrudRepository; - -public interface EmployeeRepository extends CrudRepository { - -} diff --git a/spring-boot-ops/src/main/java/com/baeldung/toggle/FeatureAssociation.java b/spring-boot-ops/src/main/java/com/baeldung/toggle/FeatureAssociation.java deleted file mode 100644 index 4578b8498e..0000000000 --- a/spring-boot-ops/src/main/java/com/baeldung/toggle/FeatureAssociation.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.baeldung.toggle; - -import java.lang.annotation.ElementType; -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; -import java.lang.annotation.Target; - -@Retention(RetentionPolicy.RUNTIME) -@Target({ ElementType.METHOD, ElementType.TYPE }) -public @interface FeatureAssociation { - MyFeatures value(); -} diff --git a/spring-boot-ops/src/main/java/com/baeldung/toggle/FeaturesAspect.java b/spring-boot-ops/src/main/java/com/baeldung/toggle/FeaturesAspect.java deleted file mode 100644 index 04c6305780..0000000000 --- a/spring-boot-ops/src/main/java/com/baeldung/toggle/FeaturesAspect.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.baeldung.toggle; - -import org.apache.logging.log4j.LogManager; -import org.apache.logging.log4j.Logger; -import org.aspectj.lang.ProceedingJoinPoint; -import org.aspectj.lang.annotation.Around; -import org.aspectj.lang.annotation.Aspect; -import org.springframework.stereotype.Component; - -@Aspect -@Component -public class FeaturesAspect { - - private static final Logger LOG = LogManager.getLogger(FeaturesAspect.class); - - @Around(value = "@within(featureAssociation) || @annotation(featureAssociation)") - public Object checkAspect(ProceedingJoinPoint joinPoint, FeatureAssociation featureAssociation) throws Throwable { - if (featureAssociation.value().isActive()) { - return joinPoint.proceed(); - } else { - LOG.info("Feature " + featureAssociation.value().name() + " is not enabled!"); - return null; - } - } - -} diff --git a/spring-boot-ops/src/main/java/com/baeldung/toggle/MyFeatures.java b/spring-boot-ops/src/main/java/com/baeldung/toggle/MyFeatures.java deleted file mode 100644 index a88ec2166e..0000000000 --- a/spring-boot-ops/src/main/java/com/baeldung/toggle/MyFeatures.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.baeldung.toggle; - -import org.togglz.core.Feature; -import org.togglz.core.activation.SystemPropertyActivationStrategy; -import org.togglz.core.annotation.ActivationParameter; -import org.togglz.core.annotation.DefaultActivationStrategy; -import org.togglz.core.annotation.EnabledByDefault; -import org.togglz.core.annotation.Label; -import org.togglz.core.context.FeatureContext; - -public enum MyFeatures implements Feature { - - @Label("Employee Management Feature") - @EnabledByDefault - @DefaultActivationStrategy(id = SystemPropertyActivationStrategy.ID, parameters = { @ActivationParameter(name = SystemPropertyActivationStrategy.PARAM_PROPERTY_NAME, value = "employee.feature"), - @ActivationParameter(name = SystemPropertyActivationStrategy.PARAM_PROPERTY_VALUE, value = "true") }) - EMPLOYEE_MANAGEMENT_FEATURE; - - public boolean isActive() { - return FeatureContext.getFeatureManager().isActive(this); - } - -} diff --git a/spring-boot-ops/src/main/java/com/baeldung/toggle/SalaryController.java b/spring-boot-ops/src/main/java/com/baeldung/toggle/SalaryController.java deleted file mode 100644 index 5d72f0105a..0000000000 --- a/spring-boot-ops/src/main/java/com/baeldung/toggle/SalaryController.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.baeldung.toggle; - -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Controller; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.ResponseBody; - -@Controller -public class SalaryController { - - @Autowired - SalaryService salaryService; - - @PostMapping(value = "/increaseSalary") - @ResponseBody - public void increaseSalary(@RequestParam long id) { - salaryService.increaseSalary(id); - } -} diff --git a/spring-boot-ops/src/main/java/com/baeldung/toggle/SalaryService.java b/spring-boot-ops/src/main/java/com/baeldung/toggle/SalaryService.java deleted file mode 100644 index 48a1ddf8d8..0000000000 --- a/spring-boot-ops/src/main/java/com/baeldung/toggle/SalaryService.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.baeldung.toggle; - -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -@Service -public class SalaryService { - - @Autowired - EmployeeRepository employeeRepository; - - @FeatureAssociation(value = MyFeatures.EMPLOYEE_MANAGEMENT_FEATURE) - public void increaseSalary(long id) { - Employee employee = employeeRepository.findById(id).orElse(null); - employee.setSalary(employee.getSalary() + employee.getSalary() * 0.1); - employeeRepository.save(employee); - } - -} diff --git a/spring-boot-ops/src/main/java/com/baeldung/toggle/ToggleApplication.java b/spring-boot-ops/src/main/java/com/baeldung/toggle/ToggleApplication.java deleted file mode 100644 index 27be6b7cca..0000000000 --- a/spring-boot-ops/src/main/java/com/baeldung/toggle/ToggleApplication.java +++ /dev/null @@ -1,15 +0,0 @@ -package com.baeldung.toggle; - -import javax.annotation.security.RolesAllowed; - -import org.springframework.boot.SpringApplication; -import org.springframework.boot.autoconfigure.SpringBootApplication; - -@SpringBootApplication -public class ToggleApplication { - @RolesAllowed("*") - public static void main(String[] args) { - System.setProperty("security.basic.enabled", "false"); - SpringApplication.run(ToggleApplication.class, args); - } -} diff --git a/spring-boot-ops/src/main/java/com/baeldung/toggle/ToggleConfiguration.java b/spring-boot-ops/src/main/java/com/baeldung/toggle/ToggleConfiguration.java deleted file mode 100644 index ee0b251479..0000000000 --- a/spring-boot-ops/src/main/java/com/baeldung/toggle/ToggleConfiguration.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.baeldung.toggle; - -import org.springframework.boot.autoconfigure.domain.EntityScan; -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; -import org.springframework.data.jpa.repository.config.EnableJpaRepositories; -import org.togglz.core.manager.EnumBasedFeatureProvider; -import org.togglz.core.spi.FeatureProvider; - -@Configuration -@EnableJpaRepositories("com.baeldung.toggle") -@EntityScan("com.baeldung.toggle") -public class ToggleConfiguration { - - @Bean - public FeatureProvider featureProvider() { - return new EnumBasedFeatureProvider(MyFeatures.class); - } - -} diff --git a/spring-boot-ops/src/main/java/org/baeldung/boot/converter/StringToEmployeeConverter.java b/spring-boot-ops/src/main/java/org/baeldung/boot/converter/StringToEmployeeConverter.java index b07e11e01a..e00d0ad312 100644 --- a/spring-boot-ops/src/main/java/org/baeldung/boot/converter/StringToEmployeeConverter.java +++ b/spring-boot-ops/src/main/java/org/baeldung/boot/converter/StringToEmployeeConverter.java @@ -1,6 +1,6 @@ package org.baeldung.boot.converter; -import com.baeldung.toggle.Employee; +import org.baeldung.boot.domain.Employee; import org.springframework.core.convert.converter.Converter; public class StringToEmployeeConverter implements Converter { diff --git a/spring-boot-ops/src/main/java/org/baeldung/boot/converter/controller/StringToEmployeeConverterController.java b/spring-boot-ops/src/main/java/org/baeldung/boot/converter/controller/StringToEmployeeConverterController.java index a6e0400845..762d237156 100644 --- a/spring-boot-ops/src/main/java/org/baeldung/boot/converter/controller/StringToEmployeeConverterController.java +++ b/spring-boot-ops/src/main/java/org/baeldung/boot/converter/controller/StringToEmployeeConverterController.java @@ -1,6 +1,6 @@ package org.baeldung.boot.converter.controller; -import com.baeldung.toggle.Employee; +import org.baeldung.boot.domain.Employee; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; diff --git a/spring-boot-ops/src/main/java/com/baeldung/toggle/Employee.java b/spring-boot-ops/src/main/java/org/baeldung/boot/domain/Employee.java similarity index 94% rename from spring-boot-ops/src/main/java/com/baeldung/toggle/Employee.java rename to spring-boot-ops/src/main/java/org/baeldung/boot/domain/Employee.java index 64a8b3ce5b..8242e53200 100644 --- a/spring-boot-ops/src/main/java/com/baeldung/toggle/Employee.java +++ b/spring-boot-ops/src/main/java/org/baeldung/boot/domain/Employee.java @@ -1,4 +1,4 @@ -package com.baeldung.toggle; +package org.baeldung.boot.domain; import javax.persistence.Entity; import javax.persistence.Id; diff --git a/spring-boot-ops/src/main/resources/templates/customer.html b/spring-boot-ops/src/main/resources/templates/customer.html deleted file mode 100644 index c8f5a25d5e..0000000000 --- a/spring-boot-ops/src/main/resources/templates/customer.html +++ /dev/null @@ -1,16 +0,0 @@ - - - -Customer Page - - - -
-
-Contact Info:
- -
-

-
- - \ No newline at end of file diff --git a/spring-boot-ops/src/main/resources/templates/customers.html b/spring-boot-ops/src/main/resources/templates/customers.html deleted file mode 100644 index 5a060d31da..0000000000 --- a/spring-boot-ops/src/main/resources/templates/customers.html +++ /dev/null @@ -1,33 +0,0 @@ - - - - - -
-

- Hello, --name--. -

- - - - - - - - - - - - - - - - - -
IDNameAddressService Rendered
Text ...Text ...Text ...Text...
- -
- - - diff --git a/spring-boot-ops/src/main/resources/templates/displayallbeans.html b/spring-boot-ops/src/main/resources/templates/displayallbeans.html deleted file mode 100644 index 5fc78a7fca..0000000000 --- a/spring-boot-ops/src/main/resources/templates/displayallbeans.html +++ /dev/null @@ -1,10 +0,0 @@ - - - - Baeldung - - -

-

- - diff --git a/spring-boot-ops/src/main/resources/templates/error-404.html b/spring-boot-ops/src/main/resources/templates/error-404.html deleted file mode 100644 index cf68032596..0000000000 --- a/spring-boot-ops/src/main/resources/templates/error-404.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - -
-
-

Sorry, we couldn't find the page you were looking for.

-

Go Home

-
- - \ No newline at end of file diff --git a/spring-boot-ops/src/main/resources/templates/error-500.html b/spring-boot-ops/src/main/resources/templates/error-500.html deleted file mode 100644 index 5ddf458229..0000000000 --- a/spring-boot-ops/src/main/resources/templates/error-500.html +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - -
-
-

Sorry, something went wrong!

- -

We're fixing it.

-

Go Home

-
- - \ No newline at end of file diff --git a/spring-boot-ops/src/main/resources/templates/error.html b/spring-boot-ops/src/main/resources/templates/error.html deleted file mode 100644 index bc517913b2..0000000000 --- a/spring-boot-ops/src/main/resources/templates/error.html +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - -
-
-

Something went wrong!

- -

Our Engineers are on it.

-

Go Home

-
- - diff --git a/spring-boot-ops/src/main/resources/templates/error/404.html b/spring-boot-ops/src/main/resources/templates/error/404.html deleted file mode 100644 index df83ce219b..0000000000 --- a/spring-boot-ops/src/main/resources/templates/error/404.html +++ /dev/null @@ -1,8 +0,0 @@ - - - RESOURCE NOT FOUND - - -

404 RESOURCE NOT FOUND

- - \ No newline at end of file diff --git a/spring-boot-ops/src/main/resources/templates/external.html b/spring-boot-ops/src/main/resources/templates/external.html deleted file mode 100644 index 2f9cc76961..0000000000 --- a/spring-boot-ops/src/main/resources/templates/external.html +++ /dev/null @@ -1,31 +0,0 @@ - - - - - -
-
-

Customer Portal

-
-
-

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam - erat lectus, vehicula feugiat ultricies at, tempus sed ante. Cras - arcu erat, lobortis vitae quam et, mollis pharetra odio. Nullam sit - amet congue ipsum. Nunc dapibus odio ut ligula venenatis porta non - id dui. Duis nec tempor tellus. Suspendisse id blandit ligula, sit - amet varius mauris. Nulla eu eros pharetra, tristique dui quis, - vehicula libero. Aenean a neque sit amet tellus porttitor rutrum nec - at leo.

- -

Existing Customers

-
- Enter the intranet: customers -
-
- -
- - - - diff --git a/spring-boot-ops/src/main/resources/templates/international.html b/spring-boot-ops/src/main/resources/templates/international.html deleted file mode 100644 index e0cfb5143b..0000000000 --- a/spring-boot-ops/src/main/resources/templates/international.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - -Home - - - - -

- -

-: - - - \ No newline at end of file diff --git a/spring-boot-ops/src/main/resources/templates/layout.html b/spring-boot-ops/src/main/resources/templates/layout.html deleted file mode 100644 index bab0c2982b..0000000000 --- a/spring-boot-ops/src/main/resources/templates/layout.html +++ /dev/null @@ -1,18 +0,0 @@ - - - -Customer Portal - - - - - \ No newline at end of file diff --git a/spring-boot-ops/src/main/resources/templates/other.html b/spring-boot-ops/src/main/resources/templates/other.html deleted file mode 100644 index d13373f9fe..0000000000 --- a/spring-boot-ops/src/main/resources/templates/other.html +++ /dev/null @@ -1,16 +0,0 @@ - - - - -Spring Utils Demo - - - - Parameter set by you:

- - \ No newline at end of file diff --git a/spring-boot-ops/src/main/resources/templates/utils.html b/spring-boot-ops/src/main/resources/templates/utils.html deleted file mode 100644 index 93030f424f..0000000000 --- a/spring-boot-ops/src/main/resources/templates/utils.html +++ /dev/null @@ -1,23 +0,0 @@ - - - - -Spring Utils Demo - - - -

-

Set Parameter:

-

- - -

-
-Another Page - - \ No newline at end of file diff --git a/spring-boot-ops/src/test/resources/application.properties b/spring-boot-ops/src/test/resources/application.properties index bda75c25fa..2095a82a14 100644 --- a/spring-boot-ops/src/test/resources/application.properties +++ b/spring-boot-ops/src/test/resources/application.properties @@ -2,8 +2,6 @@ spring.mail.host=localhost spring.mail.port=8025 spring.mail.properties.mail.smtp.auth=false -security.basic.enabled=false - management.endpoints.web.exposure.include=* management.endpoint.shutdown.enabled=true endpoints.shutdown.enabled=true \ No newline at end of file From cfa5f07c96fee2d07cd3b7195149911df8ceff07 Mon Sep 17 00:00:00 2001 From: Alejandro Gervasio Date: Thu, 31 May 2018 21:46:28 -0300 Subject: [PATCH 16/55] The DAO Pattern in Java (#4372) * Initial Commit * Rename persistence.xml file * Update JpaEntityManagerFactory.java * Update pom.xml * Update JpaEntityManagerFactory.java * Update JpaEntityManagerFactory.java * Update pom.xml * Update persistence.xml --- patterns/design-patterns/pom.xml | 18 +-- .../application/UserApplication.java | 13 +- .../config/JpaEntityManagerFactory.java | 65 +++++++++ .../config/PersistenceUnitInfoImpl.java | 130 ++++++++++++++++++ .../main/resources/META-INF/persistence.xml | 6 +- 5 files changed, 214 insertions(+), 18 deletions(-) create mode 100644 patterns/design-patterns/src/main/java/com/baeldung/daopattern/config/JpaEntityManagerFactory.java create mode 100644 patterns/design-patterns/src/main/java/com/baeldung/daopattern/config/PersistenceUnitInfoImpl.java diff --git a/patterns/design-patterns/pom.xml b/patterns/design-patterns/pom.xml index abf449fc43..dd1c5abced 100644 --- a/patterns/design-patterns/pom.xml +++ b/patterns/design-patterns/pom.xml @@ -50,18 +50,18 @@ mysql mysql-connector-java - 8.0.11 - test - - + 6.0.6 + jar + + log4j log4j ${log4j.version} - - - com.googlecode.grep4j - grep4j - ${grep4j.version} + + + com.googlecode.grep4j + grep4j + ${grep4j.version} diff --git a/patterns/design-patterns/src/main/java/com/baeldung/daopattern/application/UserApplication.java b/patterns/design-patterns/src/main/java/com/baeldung/daopattern/application/UserApplication.java index 05155aafcd..3a5c049992 100644 --- a/patterns/design-patterns/src/main/java/com/baeldung/daopattern/application/UserApplication.java +++ b/patterns/design-patterns/src/main/java/com/baeldung/daopattern/application/UserApplication.java @@ -1,5 +1,6 @@ package com.baeldung.daopattern.application; +import com.baeldung.daopattern.config.JpaEntityManagerFactory; import com.baeldung.daopattern.daos.Dao; import com.baeldung.daopattern.daos.JpaUserDao; import com.baeldung.daopattern.entities.User; @@ -21,17 +22,17 @@ public class UserApplication { getAllUsers().forEach(user -> System.out.println(user.getName())); } + private static class JpaUserDaoHolder { + private static final JpaUserDao jpaUserDao = new JpaUserDao(new JpaEntityManagerFactory().getEntityManager()); + } + public static Dao getJpaUserDao() { - if (jpaUserDao == null) { - EntityManager entityManager = Persistence.createEntityManagerFactory("user-unit").createEntityManager(); - jpaUserDao = new JpaUserDao(entityManager); - } - return jpaUserDao; + return JpaUserDaoHolder.jpaUserDao; } public static User getUser(long id) { Optional user = getJpaUserDao().get(id); - return user.orElse(new User("Non-existing user", "no-email")); + return user.orElseGet(()-> {return new User("non-existing user", "no-email");}); } public static List getAllUsers() { diff --git a/patterns/design-patterns/src/main/java/com/baeldung/daopattern/config/JpaEntityManagerFactory.java b/patterns/design-patterns/src/main/java/com/baeldung/daopattern/config/JpaEntityManagerFactory.java new file mode 100644 index 0000000000..11718d5612 --- /dev/null +++ b/patterns/design-patterns/src/main/java/com/baeldung/daopattern/config/JpaEntityManagerFactory.java @@ -0,0 +1,65 @@ +package com.baeldung.daopattern.config; + +import com.baeldung.daopattern.entities.User; +import com.mysql.cj.jdbc.MysqlDataSource; +import java.util.Arrays; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Properties; +import java.util.stream.Collectors; +import javax.persistence.EntityManager; +import javax.sql.DataSource; +import javax.persistence.EntityManagerFactory; +import javax.persistence.spi.PersistenceUnitInfo; +import org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl; +import org.hibernate.jpa.boot.internal.PersistenceUnitInfoDescriptor; + +public class JpaEntityManagerFactory { + + private final String DB_URL = "jdbc:mysql://databaseurl"; + private final String DB_USER_NAME = "username"; + private final String DB_PASSWORD = "password"; + + public EntityManager getEntityManager() { + return getEntityManagerFactory().createEntityManager(); + } + + protected EntityManagerFactory getEntityManagerFactory() { + PersistenceUnitInfo persistenceUnitInfo = getPersistenceUnitInfo(getClass().getSimpleName()); + Map configuration = new HashMap<>(); + return new EntityManagerFactoryBuilderImpl(new PersistenceUnitInfoDescriptor(persistenceUnitInfo), configuration) + .build(); + } + + protected PersistenceUnitInfoImpl getPersistenceUnitInfo(String name) { + return new PersistenceUnitInfoImpl(name, getEntityClassNames(), getProperties()); + } + + protected List getEntityClassNames() { + return Arrays.asList(getEntities()) + .stream() + .map(Class::getName) + .collect(Collectors.toList()); + } + + protected Properties getProperties() { + Properties properties = new Properties(); + properties.put("hibernate.dialect", "org.hibernate.dialect.MySQLDialect"); + properties.put("hibernate.id.new_generator_mappings", false); + properties.put("hibernate.connection.datasource", getMysqlDataSource()); + return properties; + } + + protected Class[] getEntities() { + return new Class[]{User.class}; + } + + protected DataSource getMysqlDataSource() { + MysqlDataSource mysqlDataSource = new MysqlDataSource(); + mysqlDataSource.setURL(DB_URL); + mysqlDataSource.setUser(DB_USER_NAME); + mysqlDataSource.setPassword(DB_PASSWORD); + return mysqlDataSource; + } +} diff --git a/patterns/design-patterns/src/main/java/com/baeldung/daopattern/config/PersistenceUnitInfoImpl.java b/patterns/design-patterns/src/main/java/com/baeldung/daopattern/config/PersistenceUnitInfoImpl.java new file mode 100644 index 0000000000..f3277da0cf --- /dev/null +++ b/patterns/design-patterns/src/main/java/com/baeldung/daopattern/config/PersistenceUnitInfoImpl.java @@ -0,0 +1,130 @@ +package com.baeldung.daopattern.config; + +import java.net.URL; +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; +import java.util.Properties; +import javax.sql.DataSource; +import javax.persistence.SharedCacheMode; +import javax.persistence.ValidationMode; +import javax.persistence.spi.ClassTransformer; +import javax.persistence.spi.PersistenceUnitInfo; +import javax.persistence.spi.PersistenceUnitTransactionType; +import org.hibernate.jpa.HibernatePersistenceProvider; + +public class PersistenceUnitInfoImpl implements PersistenceUnitInfo { + + public static final String JPA_VERSION = "2.1"; + private final String persistenceUnitName; + private PersistenceUnitTransactionType transactionType = PersistenceUnitTransactionType.RESOURCE_LOCAL; + private final List managedClassNames; + private final List mappingFileNames = new ArrayList<>(); + private final Properties properties; + private DataSource jtaDataSource; + private DataSource nonJtaDataSource; + + public PersistenceUnitInfoImpl(String persistenceUnitName, List managedClassNames, Properties properties) { + this.persistenceUnitName = persistenceUnitName; + this.managedClassNames = managedClassNames; + this.properties = properties; + } + + @Override + public String getPersistenceUnitName() { + return persistenceUnitName; + } + + @Override + public String getPersistenceProviderClassName() { + return HibernatePersistenceProvider.class.getName(); + } + + @Override + public PersistenceUnitTransactionType getTransactionType() { + return transactionType; + } + + @Override + public DataSource getJtaDataSource() { + return jtaDataSource; + } + + public PersistenceUnitInfoImpl setJtaDataSource(DataSource jtaDataSource) { + this.jtaDataSource = jtaDataSource; + this.nonJtaDataSource = null; + transactionType = PersistenceUnitTransactionType.JTA; + return this; + } + + @Override + public DataSource getNonJtaDataSource() { + return nonJtaDataSource; + } + + public PersistenceUnitInfoImpl setNonJtaDataSource(DataSource nonJtaDataSource) { + this.nonJtaDataSource = nonJtaDataSource; + this.jtaDataSource = null; + transactionType = PersistenceUnitTransactionType.RESOURCE_LOCAL; + return this; + } + + @Override + public List getMappingFileNames() { + return mappingFileNames; + } + + @Override + public List getJarFileUrls() { + return Collections.emptyList(); + } + + @Override + public URL getPersistenceUnitRootUrl() { + return null; + } + + @Override + public List getManagedClassNames() { + return managedClassNames; + } + + @Override + public boolean excludeUnlistedClasses() { + return false; + } + + @Override + public SharedCacheMode getSharedCacheMode() { + return SharedCacheMode.UNSPECIFIED; + } + + @Override + public ValidationMode getValidationMode() { + return ValidationMode.AUTO; + } + + public Properties getProperties() { + return properties; + } + + @Override + public String getPersistenceXMLSchemaVersion() { + return JPA_VERSION; + } + + @Override + public ClassLoader getClassLoader() { + return Thread.currentThread().getContextClassLoader(); + } + + @Override + public void addTransformer(ClassTransformer transformer) { + throw new UnsupportedOperationException("Not supported yet."); + } + + @Override + public ClassLoader getNewTempClassLoader() { + return null; + } +} \ No newline at end of file diff --git a/patterns/design-patterns/src/main/resources/META-INF/persistence.xml b/patterns/design-patterns/src/main/resources/META-INF/persistence.xml index 61a5c9effc..e67a25e467 100644 --- a/patterns/design-patterns/src/main/resources/META-INF/persistence.xml +++ b/patterns/design-patterns/src/main/resources/META-INF/persistence.xml @@ -2,12 +2,12 @@ org.hibernate.jpa.HibernatePersistenceProvider - com.baeldung.daopattern.entities.User + com.baeldung.pattern.daopattern.entities.User - + - + From 7206e64bef9dcf05865f730cacf5921816906758 Mon Sep 17 00:00:00 2001 From: Amit Pandey Date: Fri, 1 Jun 2018 16:42:51 +0530 Subject: [PATCH 17/55] Bael 6556 3 (#4382) * Added parent module on poms that have no parent defined * Removed dependency reduced pom from undertow module * [BAEL-6556] - Next set of renames of testcases * [BAEL-6556] - Next set of renames of testcases * [BAEL-6556] - Next set of renames of testcases * [BAEL-6556] - Next set of renames of testcases --- ...phUnitTests.java => DirectedGraphUnitTest.java} | 2 +- .../{TokenizerTest.java => TokenizerUnitTest.java} | 2 +- ...IndicesTest.java => StreamIndicesUnitTest.java} | 2 +- .../java/com/baeldung/keyword/KeywordDemo.java | 4 ++-- .../{KeywordTest.java => KeywordUnitTest.java} | 14 +++++++------- ...est.java => DecimalFormatExamplesUnitTest.java} | 2 +- ...ava => DaylightSavingTimeExamplesUnitTest.java} | 2 +- ...aylightSavingTimeJavaTimeExamplesUnitTest.java} | 2 +- .../{ExtensionTest.java => ExtensionUnitTest.java} | 2 +- ...plicationTest.java => ApplicationUnitTest.java} | 2 +- .../entities/{UserTest.java => UserUnitTest.java} | 2 +- .../inheritance/{AppTest.java => AppUnitTest.java} | 6 +++--- .../{UserTest.java => UserUnitTest.java} | 2 +- ...rfaceTests.java => InnerInterfaceUnitTest.java} | 2 +- ... => CurrentlyExecutedMethodFinderUnitTest.java} | 2 +- .../{URIDemoTest.java => URIDemoLiveTest.java} | 4 ++-- .../{URLDemoTest.java => URLDemoLiveTest.java} | 4 ++-- ...ssingTest.java => BatchProcessingLiveTest.java} | 2 +- ...JdbcRowSetTest.java => JdbcRowSetLiveTest.java} | 2 +- .../{SuiteTest.java => SuiteUnitTest.java} | 2 +- ...KeyStoreTest.java => JavaKeyStoreUnitTest.java} | 2 +- ...alImplTest.java => BigDecimalImplUnitTest.java} | 2 +- ...erImplTest.java => BigIntegerImplUnitTest.java} | 2 +- ...t.java => FloatingPointArithmeticUnitTest.java} | 2 +- .../maths/{RoundTest.java => RoundUnitTest.java} | 2 +- ...Test.java => NoClassDefFoundErrorUnitTest.java} | 2 +- ...mpleTest.java => RecursionExampleUnitTest.java} | 2 +- ...t.java => BaeldungReflectionUtilsUnitTest.java} | 2 +- ...ngCharsTest.java => EscapingCharsUnitTest.java} | 2 +- ...nnableTest.java => SneakyRunnableUnitTest.java} | 2 +- ...kyThrowsTest.java => SneakyThrowsUnitTest.java} | 2 +- ...PalindromeTest.java => PalindromeUnitTest.java} | 2 +- ...isonTest.java => StringComparisonUnitTest.java} | 2 +- .../{StringTest.java => StringUnitTest.java} | 2 +- ...ts.java => StringFormatterExampleUnitTest.java} | 2 +- ...rviceTest.java => DateTimeServiceUnitTest.java} | 2 +- ...Test.java => EnvironmentVariablesUnitTest.java} | 2 +- ...yCopyTest.java => SystemArrayCopyUnitTest.java} | 2 +- ...SystemNanoTest.java => SystemNanoUnitTest.java} | 2 +- ...tiesTest.java => SystemPropertiesUnitTest.java} | 2 +- ...ingOSTest.java => WhenDetectingOSUnitTest.java} | 2 +- ....java => ThreadLocalRandomIntegrationTest.java} | 2 +- ...aderTest.java => PropertiesLoaderUnitTest.java} | 2 +- .../{FormatterTest.java => FormatterUnitTest.java} | 2 +- .../{RawTypesTest.java => RawTypesUnitTest.java} | 2 +- ...t.java => BackwardChainingIntegrationTest.java} | 2 +- ...cUtilsTest.java => GuavaMiscUtilsUnitTest.java} | 2 +- ...cUtilsTest.java => GuavaMiscUtilsUnitTest.java} | 2 +- .../baeldung/guava/zip/ZipCollectionUnitTest.java} | 2 +- ...oomFilterTest.java => BloomFilterUnitTest.java} | 2 +- ...java => GuavaCountingOutputStreamUnitTest.java} | 2 +- .../{ProductTest.java => ProductUnitTest.java} | 2 +- ...st.java => EmployeeServletIntegrationTest.java} | 2 +- ...tTest.java => JerseyClientIntegrationTest.java} | 2 +- ...erviceTest.java => ServiceIntegrationTest.java} | 2 +- ...erTest.java => CacheLoaderIntegrationTest.java} | 2 +- ...4j2Test.java => Log4j2BaseIntegrationTest.java} | 2 +- ...=> SetConfigurationFactoryIntegrationTest.java} | 4 ++-- ...ava => SimpleConfigurationIntegrationTest.java} | 4 ++-- ...java => SimpleConfiguratorIntegrationTest.java} | 4 ++-- ...outTest.java => JSONLayoutIntegrationTest.java} | 4 ++-- ...gTest.java => XMLConfigLogIntegrationTest.java} | 4 ++-- ...outTest.java => JSONLayoutIntegrationTest.java} | 2 +- ...gbackTests.java => LogbackIntegrationTest.java} | 4 ++-- ...pAppenderTest.java => MapAppenderUnitTest.java} | 2 +- ...t.java => LuceneFileSearchIntegrationTest.java} | 2 +- ...va => LuceneInMemorySearchIntegrationTest.java} | 2 +- .../plugins/{DataTest.java => DataUnitTest.java} | 2 +- ...st.java => MicrometerAtlasIntegrationTest.java} | 2 +- ...ITest.java => OrientDBDocumentAPILiveTest.java} | 2 +- ...hAPITest.java => OrientDBGraphAPILiveTest.java} | 2 +- ...APITest.java => OrientDBObjectAPILiveTest.java} | 2 +- ...a => ChainOfResponsibilityIntegrationTest.java} | 11 ++++++++--- ...st.java => CarEngineFacadeIntegrationTest.java} | 2 +- ...a => TemplateMethodPatternIntegrationTest.java} | 4 ++-- .../{JdbiTest.java => JdbiIntegrationTest.java} | 2 +- ...ava => CombiningPublishersIntegrationTest.java} | 2 +- ...a => ConnectableObservableIntegrationTest.java} | 2 +- ...wableTest.java => FlowableIntegrationTest.java} | 2 +- .../rxjava/{MaybeTest.java => MaybeUnitTest.java} | 2 +- ...ObservableTest.java => ObservableUnitTest.java} | 2 +- ...ntTest.java => ResourceManagementUnitTest.java} | 2 +- ...xRelayTest.java => RxRelayIntegrationTest.java} | 2 +- .../{SingleTest.java => SingleUnitTest.java} | 2 +- .../{SubjectTest.java => SubjectUnitTest.java} | 2 +- ...t.java => UtilityOperatorsIntegrationTest.java} | 2 +- ...a => RxJavaFilterOperatorsIntegrationTest.java} | 2 +- ...ava => RxJavaSkipOperatorsIntegrationTest.java} | 2 +- ...JavaTimeFilteringOperatorsIntegrationTest.java} | 2 +- ....java => ExceptionHandlingIntegrationTest.java} | 2 +- ...yTest.java => OnErrorRetryIntegrationTest.java} | 2 +- ...Test.java => RxAggregateOperatorsUnitTest.java} | 2 +- ...t.java => RxMathematicalOperatorsUnitTest.java} | 2 +- ...orsTest.java => RxStringOperatorsUnitTest.java} | 2 +- ...dMethodTest.java => SecuredMethodUnitTest.java} | 2 +- ...torTest.java => CalculatorIntegrationTest.java} | 2 +- ...{ChunksTest.java => ChunksIntegrationTest.java} | 2 +- ...kletsTest.java => TaskletsIntegrationTest.java} | 2 +- ...ava => DependencyInjectionIntegrationTest.java} | 2 +- ...Test.java => BeanInjectionIntegrationTest.java} | 2 +- ...tudentTest.java => StudentIntegrationTest.java} | 2 +- ... => PrototypeBeanInjectionIntegrationTest.java} | 2 +- ...eamTest.java => CopyStreamIntegrationTest.java} | 2 +- ...=> ClassNotManagedBySpringIntegrationTest.java} | 2 +- ...onTest.java => MultiBucketIntegrationTest.java} | 2 +- .../service/CampusServiceImplIntegrationTest.java | 4 ++-- .../service/PersonServiceImplIntegrationTest.java | 4 ++-- .../service/StudentServiceImplIntegrationTest.java | 4 ++-- ...est.java => CountryStateCacheBeanUnitTest.java} | 2 +- ...tTest.java => HelloServletIntegrationTest.java} | 2 +- ...est.java => WelcomeServletIntegrationTest.java} | 2 +- .../api/{PetApiTest.java => PetApiLiveTest.java} | 2 +- .../{StoreApiTest.java => StoreApiLiveTest.java} | 2 +- .../api/{UserApiTest.java => UserApiLiveTest.java} | 2 +- ...entsTest.java => FragmentsIntegrationTest.java} | 2 +- .../{EmployeesTest.java => EmployeesUnitTest.java} | 4 ++-- .../{GreetingsTest.java => GreetingsUnitTest.java} | 2 +- ...onTest.java => ExceptionAssertionUnitTest.java} | 2 +- ...pringTest.java => GreetingsSpringUnitTest.java} | 2 +- ...est.java => AnnotationTestExampleUnitTest.java} | 6 +++--- ...pleTest.java => AssertionsExampleUnitTest.java} | 2 +- ...java => BeforeAndAfterAnnotationsUnitTest.java} | 4 ++-- ...foreClassAndAfterClassAnnotationsUnitTest.java} | 4 ++-- ...onTest.java => ExceptionAssertionUnitTest.java} | 2 +- ...leExampleTest.java => RuleExampleUnitTest.java} | 2 +- .../{JUnit4Tests.java => JUnit4UnitTest.java} | 2 +- ...est.java => AnnotationTestExampleUnitTest.java} | 2 +- ...pleTest.java => AssertionsExampleUnitTest.java} | 2 +- ...> BeforeAllAndAfterAllAnnotationsUnitTest.java} | 4 ++-- ...BeforeEachAndAfterEachAnnotationsUnitTest.java} | 4 ++-- ...leExampleTest.java => RuleExampleUnitTest.java} | 2 +- ...datorTest.java => PersonValidatorUnitTest.java} | 2 +- .../suites/{AllTests.java => AllUnitTest.java} | 2 +- ...tionTest.java => LazyVerificationUnitTest.java} | 2 +- ...va => LuckyNumberGeneratorIntegrationTest.java} | 2 +- ...itoTest.java => BDDMockitoIntegrationTest.java} | 2 +- ...Test.java => HamcrestCoreMatchersUnitTest.java} | 2 +- ...dsTest.java => MockitoVoidMethodsUnitTest.java} | 2 +- ...t.java => BaeldungReaderAnnotatedUnitTest.java} | 2 +- ...> BaeldungReaderAnnotatedWithRuleUnitTest.java} | 2 +- ...a => BaeldungReaderMockDelegationUnitTest.java} | 2 +- ...java => BaeldungReaderMockSupportUnitTest.java} | 2 +- ...ReaderTest.java => BaeldungReaderUnitTest.java} | 2 +- ...CalculatorTest.java => CalculatorUnitTest.java} | 2 +- .../{AdditionTest.java => AdditionUnitTest.java} | 2 +- ...CalculatorTest.java => CalculatorUnitTest.java} | 2 +- ...tractionTest.java => SubstractionUnitTest.java} | 2 +- .../junit/{SuiteTest.java => SuiteUnitTest.java} | 6 +++--- ...UtilTest.java => SafeAdditionUtilUnitTest.java} | 2 +- ...CalculatorTest.java => CalculatorUnitTest.java} | 2 +- 150 files changed, 187 insertions(+), 182 deletions(-) rename algorithms/src/test/java/com/baeldung/jgrapht/{DirectedGraphUnitTests.java => DirectedGraphUnitTest.java} (99%) rename apache-opennlp/src/test/java/com/baeldung/apache/opennlp/{TokenizerTest.java => TokenizerUnitTest.java} (97%) rename core-java-8/src/test/java/com/baeldung/stream/{StreamIndicesTest.java => StreamIndicesUnitTest.java} (98%) rename core-java/src/main/java/com/baeldung/keyword/thiskeyword/{KeywordTest.java => KeywordUnitTest.java} (68%) rename core-java/src/test/java/com/baeldung/decimalformat/{DecimalFormatExamplesTest.java => DecimalFormatExamplesUnitTest.java} (98%) rename core-java/src/test/java/com/baeldung/dst/{DaylightSavingTimeExamplesTest.java => DaylightSavingTimeExamplesUnitTest.java} (98%) rename core-java/src/test/java/com/baeldung/dst/{DaylightSavingTimeJavaTimeExamplesTest.java => DaylightSavingTimeJavaTimeExamplesUnitTest.java} (97%) rename core-java/src/test/java/com/baeldung/extension/{ExtensionTest.java => ExtensionUnitTest.java} (96%) rename core-java/src/test/java/com/baeldung/hashcode/application/{ApplicationTest.java => ApplicationUnitTest.java} (95%) rename core-java/src/test/java/com/baeldung/hashcode/entities/{UserTest.java => UserUnitTest.java} (96%) rename core-java/src/test/java/com/baeldung/inheritance/{AppTest.java => AppUnitTest.java} (85%) rename core-java/src/test/java/com/baeldung/initializationguide/{UserTest.java => UserUnitTest.java} (95%) rename core-java/src/test/java/com/baeldung/interfaces/{InnerInterfaceTests.java => InnerInterfaceUnitTest.java} (93%) rename core-java/src/test/java/com/baeldung/java/currentmethod/{CurrentlyExecutedMethodFinderTest.java => CurrentlyExecutedMethodFinderUnitTest.java} (96%) rename core-java/src/test/java/com/baeldung/javanetworking/uriurl/test/{URIDemoTest.java => URIDemoLiveTest.java} (95%) rename core-java/src/test/java/com/baeldung/javanetworking/uriurl/test/{URLDemoTest.java => URLDemoLiveTest.java} (97%) rename core-java/src/test/java/com/baeldung/jdbc/{BatchProcessingTest.java => BatchProcessingLiveTest.java} (98%) rename core-java/src/test/java/com/baeldung/jdbcrowset/{JdbcRowSetTest.java => JdbcRowSetLiveTest.java} (99%) rename core-java/src/test/java/com/baeldung/junit4vstestng/{SuiteTest.java => SuiteUnitTest.java} (87%) rename core-java/src/test/java/com/baeldung/keystore/{JavaKeyStoreTest.java => JavaKeyStoreUnitTest.java} (99%) rename core-java/src/test/java/com/baeldung/maths/{BigDecimalImplTest.java => BigDecimalImplUnitTest.java} (91%) rename core-java/src/test/java/com/baeldung/maths/{BigIntegerImplTest.java => BigIntegerImplUnitTest.java} (91%) rename core-java/src/test/java/com/baeldung/maths/{FloatingPointArithmeticTest.java => FloatingPointArithmeticUnitTest.java} (93%) rename core-java/src/test/java/com/baeldung/maths/{RoundTest.java => RoundUnitTest.java} (97%) rename core-java/src/test/java/com/baeldung/noclassdeffounderror/{NoClassDefFoundErrorTest.java => NoClassDefFoundErrorUnitTest.java} (85%) rename core-java/src/test/java/com/baeldung/recursion/{RecursionExampleTest.java => RecursionExampleUnitTest.java} (94%) rename core-java/src/test/java/com/baeldung/reflection/{BaeldungReflectionUtilsTest.java => BaeldungReflectionUtilsUnitTest.java} (93%) rename core-java/src/test/java/com/baeldung/regexp/{EscapingCharsTest.java => EscapingCharsUnitTest.java} (98%) rename core-java/src/test/java/com/baeldung/sneakythrows/{SneakyRunnableTest.java => SneakyRunnableUnitTest.java} (90%) rename core-java/src/test/java/com/baeldung/sneakythrows/{SneakyThrowsTest.java => SneakyThrowsUnitTest.java} (91%) rename core-java/src/test/java/com/baeldung/string/{PalindromeTest.java => PalindromeUnitTest.java} (98%) rename core-java/src/test/java/com/baeldung/string/{StringComparisonTest.java => StringComparisonUnitTest.java} (99%) rename core-java/src/test/java/com/baeldung/string/{StringTest.java => StringUnitTest.java} (99%) rename core-java/src/test/java/com/baeldung/string/formatter/{StringFormatterExampleTests.java => StringFormatterExampleUnitTest.java} (99%) rename core-java/src/test/java/com/baeldung/system/{DateTimeServiceTest.java => DateTimeServiceUnitTest.java} (90%) rename core-java/src/test/java/com/baeldung/system/{EnvironmentVariablesTest.java => EnvironmentVariablesUnitTest.java} (87%) rename core-java/src/test/java/com/baeldung/system/{SystemArrayCopyTest.java => SystemArrayCopyUnitTest.java} (95%) rename core-java/src/test/java/com/baeldung/system/{SystemNanoTest.java => SystemNanoUnitTest.java} (91%) rename core-java/src/test/java/com/baeldung/system/{SystemPropertiesTest.java => SystemPropertiesUnitTest.java} (97%) rename core-java/src/test/java/com/baeldung/system/{WhenDetectingOSTest.java => WhenDetectingOSUnitTest.java} (93%) rename core-java/src/test/java/com/baeldung/threadlocalrandom/{ThreadLocalRandomTest.java => ThreadLocalRandomIntegrationTest.java} (97%) rename core-java/src/test/java/com/baeldung/util/{PropertiesLoaderTest.java => PropertiesLoaderUnitTest.java} (96%) rename core-java/src/test/java/com/baeldung/varargs/{FormatterTest.java => FormatterUnitTest.java} (97%) rename core-java/src/test/java/org/baeldung/java/rawtypes/{RawTypesTest.java => RawTypesUnitTest.java} (91%) rename drools/src/test/java/com/baeldung/drools/backward_chaining/{BackwardChainingTest.java => BackwardChainingIntegrationTest.java} (95%) rename guava-modules/guava-18/src/test/java/com/baeldung/guava/{GuavaMiscUtilsTest.java => GuavaMiscUtilsUnitTest.java} (97%) rename guava-modules/guava-19/src/test/java/com/baeldung/guava/{GuavaMiscUtilsTest.java => GuavaMiscUtilsUnitTest.java} (98%) rename guava-modules/guava-21/src/test/java/{com.baeldung.guava.zip/ZipCollectionTest.java => com/baeldung/guava/zip/ZipCollectionUnitTest.java} (98%) rename guava/src/test/java/org/baeldung/guava/{BloomFilterTest.java => BloomFilterUnitTest.java} (97%) rename guava/src/test/java/org/baeldung/guava/{GuavaCountingOutputStreamTest.java => GuavaCountingOutputStreamUnitTest.java} (94%) rename java-lite/src/test/java/app/models/{ProductTest.java => ProductUnitTest.java} (95%) rename javax-servlets/src/test/java/com/baeldung/servlets/{EmployeeServletTest.java => EmployeeServletIntegrationTest.java} (97%) rename jersey/src/test/java/com/baeldung/jersey/client/{JerseyClientTest.java => JerseyClientIntegrationTest.java} (95%) rename json-path/src/test/java/com/baeldung/jsonpath/introduction/{ServiceTest.java => ServiceIntegrationTest.java} (98%) rename libraries-data/src/test/java/com/baeldung/jcache/{CacheLoaderTest.java => CacheLoaderIntegrationTest.java} (97%) rename logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/{Log4j2Test.java => Log4j2BaseIntegrationTest.java} (92%) rename logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/setconfigurationfactory/{SetConfigurationFactoryTest.java => SetConfigurationFactoryIntegrationTest.java} (89%) rename logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/simpleconfiguration/{SimpleConfigurationTest.java => SimpleConfigurationIntegrationTest.java} (88%) rename logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/simpleconfigurator/{SimpleConfiguratorTest.java => SimpleConfiguratorIntegrationTest.java} (92%) rename logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/tests/{JSONLayoutTest.java => JSONLayoutIntegrationTest.java} (90%) rename logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/xmlconfiguration/{XMLConfigLogTest.java => XMLConfigLogIntegrationTest.java} (91%) rename logging-modules/logback/src/test/java/com/baeldung/logback/{JSONLayoutTest.java => JSONLayoutIntegrationTest.java} (96%) rename logging-modules/logback/src/test/java/com/baeldung/logback/{LogbackTests.java => LogbackIntegrationTest.java} (96%) rename logging-modules/logback/src/test/java/com/baeldung/logback/{MapAppenderTest.java => MapAppenderUnitTest.java} (98%) rename lucene/src/test/java/com/baeldung/lucene/{LuceneFileSearchTest.java => LuceneFileSearchIntegrationTest.java} (95%) rename lucene/src/test/java/com/baeldung/lucene/{LuceneInMemorySearchTest.java => LuceneInMemorySearchIntegrationTest.java} (99%) rename maven/src/test/java/com/baeldung/maven/plugins/{DataTest.java => DataUnitTest.java} (90%) rename metrics/src/test/java/com/baeldung/metrics/micrometer/{MicrometerAtlasTest.java => MicrometerAtlasIntegrationTest.java} (99%) rename orientdb/src/test/java/com/baeldung/orientdb/{OrientDBDocumentAPITest.java => OrientDBDocumentAPILiveTest.java} (97%) rename orientdb/src/test/java/com/baeldung/orientdb/{OrientDBGraphAPITest.java => OrientDBGraphAPILiveTest.java} (98%) rename orientdb/src/test/java/com/baeldung/orientdb/{OrientDBObjectAPITest.java => OrientDBObjectAPILiveTest.java} (97%) rename patterns/design-patterns/src/test/java/com/baeldung/chainofresponsibility/{ChainOfResponsibilityTest.java => ChainOfResponsibilityIntegrationTest.java} (69%) rename patterns/design-patterns/src/test/java/com/baeldung/facade/{CarEngineFacadeTest.java => CarEngineFacadeIntegrationTest.java} (98%) rename patterns/design-patterns/src/test/java/com/baeldung/templatemethod/test/{TemplateMethodPatternTest.java => TemplateMethodPatternIntegrationTest.java} (97%) rename persistence-modules/java-jdbi/src/test/java/com/baeldung/persistence/jdbi/{JdbiTest.java => JdbiIntegrationTest.java} (99%) rename reactor-core/src/test/java/com/baeldung/reactor/core/{CombiningPublishersTest.java => CombiningPublishersIntegrationTest.java} (98%) rename rxjava/src/test/java/com/baeldung/rxjava/{ConnectableObservableTest.java => ConnectableObservableIntegrationTest.java} (93%) rename rxjava/src/test/java/com/baeldung/rxjava/{FlowableTest.java => FlowableIntegrationTest.java} (99%) rename rxjava/src/test/java/com/baeldung/rxjava/{MaybeTest.java => MaybeUnitTest.java} (97%) rename rxjava/src/test/java/com/baeldung/rxjava/{ObservableTest.java => ObservableUnitTest.java} (99%) rename rxjava/src/test/java/com/baeldung/rxjava/{ResourceManagementTest.java => ResourceManagementUnitTest.java} (94%) rename rxjava/src/test/java/com/baeldung/rxjava/{RxRelayTest.java => RxRelayIntegrationTest.java} (99%) rename rxjava/src/test/java/com/baeldung/rxjava/{SingleTest.java => SingleUnitTest.java} (95%) rename rxjava/src/test/java/com/baeldung/rxjava/{SubjectTest.java => SubjectUnitTest.java} (95%) rename rxjava/src/test/java/com/baeldung/rxjava/{UtilityOperatorsTest.java => UtilityOperatorsIntegrationTest.java} (99%) rename rxjava/src/test/java/com/baeldung/rxjava/filters/{RxJavaFilterOperatorsTest.java => RxJavaFilterOperatorsIntegrationTest.java} (99%) rename rxjava/src/test/java/com/baeldung/rxjava/filters/{RxJavaSkipOperatorsTest.java => RxJavaSkipOperatorsIntegrationTest.java} (98%) rename rxjava/src/test/java/com/baeldung/rxjava/filters/{RxJavaTimeFilteringOperatorsTest.java => RxJavaTimeFilteringOperatorsIntegrationTest.java} (99%) rename rxjava/src/test/java/com/baeldung/rxjava/onerror/{ExceptionHandlingTest.java => ExceptionHandlingIntegrationTest.java} (98%) rename rxjava/src/test/java/com/baeldung/rxjava/onerror/{OnErrorRetryTest.java => OnErrorRetryIntegrationTest.java} (99%) rename rxjava/src/test/java/com/baeldung/rxjava/operators/{RxAggregateOperatorsTest.java => RxAggregateOperatorsUnitTest.java} (99%) rename rxjava/src/test/java/com/baeldung/rxjava/operators/{RxMathematicalOperatorsTest.java => RxMathematicalOperatorsUnitTest.java} (98%) rename rxjava/src/test/java/com/baeldung/rxjava/operators/{RxStringOperatorsTest.java => RxStringOperatorsUnitTest.java} (99%) rename spring-aop/src/test/java/org/baeldung/aspectj/{SecuredMethodTest.java => SecuredMethodUnitTest.java} (86%) rename spring-aop/src/test/java/org/baeldung/logger/{CalculatorTest.java => CalculatorIntegrationTest.java} (92%) rename spring-batch/src/test/java/org/baeldung/taskletsvschunks/chunks/{ChunksTest.java => ChunksIntegrationTest.java} (96%) rename spring-batch/src/test/java/org/baeldung/taskletsvschunks/tasklets/{TaskletsTest.java => TaskletsIntegrationTest.java} (96%) rename spring-core/src/test/java/com/baeldung/dependencyinjectiontypes/{DependencyInjectionTest.java => DependencyInjectionIntegrationTest.java} (96%) rename spring-core/src/test/java/com/baeldung/di/spring/{BeanInjectionTest.java => BeanInjectionIntegrationTest.java} (92%) rename spring-core/src/test/java/com/baeldung/methodinjections/{StudentTest.java => StudentIntegrationTest.java} (97%) rename spring-core/src/test/java/com/baeldung/scope/{PrototypeBeanInjectionTest.java => PrototypeBeanInjectionIntegrationTest.java} (98%) rename spring-core/src/test/java/com/baeldung/streamutils/{CopyStreamTest.java => CopyStreamIntegrationTest.java} (99%) rename spring-core/src/test/java/com/baeldung/value/{ClassNotManagedBySpringTest.java => ClassNotManagedBySpringIntegrationTest.java} (95%) rename spring-data-couchbase-2/src/test/java/org/baeldung/spring/data/couchbase2b/{MultiBucketIntegationTest.java => MultiBucketIntegrationTest.java} (92%) rename spring-ejb/ejb-beans/src/test/java/com/baeldung/singletonbean/{CountryStateCacheBeanTest.java => CountryStateCacheBeanUnitTest.java} (98%) rename spring-mvc-simple/src/test/java/com/baeldung/spring/servlets/{HelloServletTest.java => HelloServletIntegrationTest.java} (95%) rename spring-mvc-simple/src/test/java/com/baeldung/spring/servlets/{WelcomeServletTest.java => WelcomeServletIntegrationTest.java} (95%) rename spring-swagger-codegen/spring-swagger-codegen-api-client/src/test/java/com/baeldung/petstore/client/api/{PetApiTest.java => PetApiLiveTest.java} (99%) rename spring-swagger-codegen/spring-swagger-codegen-api-client/src/test/java/com/baeldung/petstore/client/api/{StoreApiTest.java => StoreApiLiveTest.java} (98%) rename spring-swagger-codegen/spring-swagger-codegen-api-client/src/test/java/com/baeldung/petstore/client/api/{UserApiTest.java => UserApiLiveTest.java} (99%) rename spring-thymeleaf/src/test/java/com/baeldung/thymeleaf/controller/{FragmentsTest.java => FragmentsIntegrationTest.java} (98%) rename testing-modules/junit-5/src/test/java/com/baeldung/{EmployeesTest.java => EmployeesUnitTest.java} (93%) rename testing-modules/junit-5/src/test/java/com/baeldung/{GreetingsTest.java => GreetingsUnitTest.java} (92%) rename testing-modules/junit-5/src/test/java/com/baeldung/exception/{ExceptionAssertionTest.java => ExceptionAssertionUnitTest.java} (92%) rename testing-modules/junit-5/src/test/java/com/baeldung/junit5/spring/{GreetingsSpringTest.java => GreetingsSpringUnitTest.java} (93%) rename testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/{AnnotationTestExampleTest.java => AnnotationTestExampleUnitTest.java} (74%) rename testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/{AssertionsExampleTest.java => AssertionsExampleUnitTest.java} (94%) rename testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/{BeforeAndAfterAnnotationsTest.java => BeforeAndAfterAnnotationsUnitTest.java} (92%) rename testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/{BeforeClassAndAfterClassAnnotationsTest.java => BeforeClassAndAfterClassAnnotationsUnitTest.java} (87%) rename testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/{ExceptionAssertionTest.java => ExceptionAssertionUnitTest.java} (93%) rename testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/{RuleExampleTest.java => RuleExampleUnitTest.java} (91%) rename testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/categories/{JUnit4Tests.java => JUnit4UnitTest.java} (61%) rename testing-modules/junit-5/src/test/java/com/baeldung/migration/junit5/{AnnotationTestExampleTest.java => AnnotationTestExampleUnitTest.java} (94%) rename testing-modules/junit-5/src/test/java/com/baeldung/migration/junit5/{AssertionsExampleTest.java => AssertionsExampleUnitTest.java} (96%) rename testing-modules/junit-5/src/test/java/com/baeldung/migration/junit5/{BeforeAllAndAfterAllAnnotationsTest.java => BeforeAllAndAfterAllAnnotationsUnitTest.java} (88%) rename testing-modules/junit-5/src/test/java/com/baeldung/migration/junit5/{BeforeEachAndAfterEachAnnotationsTest.java => BeforeEachAndAfterEachAnnotationsUnitTest.java} (91%) rename testing-modules/junit-5/src/test/java/com/baeldung/migration/junit5/{RuleExampleTest.java => RuleExampleUnitTest.java} (92%) rename testing-modules/junit-5/src/test/java/com/baeldung/param/{PersonValidatorTest.java => PersonValidatorUnitTest.java} (98%) rename testing-modules/junit-5/src/test/java/com/baeldung/suites/{AllTests.java => AllUnitTest.java} (92%) rename testing-modules/mockito-2/src/test/java/com/baeldung/mockito/java8/{LazyVerificationTest.java => LazyVerificationUnitTest.java} (96%) rename testing-modules/mockito/src/test/java/com/baeldung/powermockito/introduction/{LuckyNumberGeneratorTest.java => LuckyNumberGeneratorIntegrationTest.java} (97%) rename testing-modules/mockito/src/test/java/org/baeldung/bddmockito/{BDDMockitoTest.java => BDDMockitoIntegrationTest.java} (96%) rename testing-modules/mockito/src/test/java/org/baeldung/hamcrest/{HamcrestCoreMatchersTest.java => HamcrestCoreMatchersUnitTest.java} (99%) rename testing-modules/mockito/src/test/java/org/baeldung/mockito/{MockitoVoidMethodsTest.java => MockitoVoidMethodsUnitTest.java} (97%) rename testing-modules/mocks/mock-comparisons/src/test/java/com/baeldung/easymock/{BaeldungReaderAnnotatedTest.java => BaeldungReaderAnnotatedUnitTest.java} (93%) rename testing-modules/mocks/mock-comparisons/src/test/java/com/baeldung/easymock/{BaeldungReaderAnnotatedWithRuleTest.java => BaeldungReaderAnnotatedWithRuleUnitTest.java} (93%) rename testing-modules/mocks/mock-comparisons/src/test/java/com/baeldung/easymock/{BaeldungReaderMockDelegationTest.java => BaeldungReaderMockDelegationUnitTest.java} (91%) rename testing-modules/mocks/mock-comparisons/src/test/java/com/baeldung/easymock/{BaeldungReaderMockSupportTest.java => BaeldungReaderMockSupportUnitTest.java} (91%) rename testing-modules/mocks/mock-comparisons/src/test/java/com/baeldung/easymock/{BaeldungReaderTest.java => BaeldungReaderUnitTest.java} (96%) rename testing-modules/testing/src/test/java/com/baeldung/introductionjukito/{CalculatorTest.java => CalculatorUnitTest.java} (98%) rename testing-modules/testing/src/test/java/com/baeldung/junit/{AdditionTest.java => AdditionUnitTest.java} (88%) rename testing-modules/testing/src/test/java/com/baeldung/junit/{CalculatorTest.java => CalculatorUnitTest.java} (91%) rename testing-modules/testing/src/test/java/com/baeldung/junit/{SubstractionTest.java => SubstractionUnitTest.java} (87%) rename testing-modules/testing/src/test/java/com/baeldung/junit/{SuiteTest.java => SuiteUnitTest.java} (67%) rename testing-modules/testing/src/test/java/com/baeldung/junitparams/{SafeAdditionUtilTest.java => SafeAdditionUtilUnitTest.java} (98%) rename testing-modules/testing/src/test/java/com/baeldung/lambdabehave/{CalculatorTest.java => CalculatorUnitTest.java} (98%) diff --git a/algorithms/src/test/java/com/baeldung/jgrapht/DirectedGraphUnitTests.java b/algorithms/src/test/java/com/baeldung/jgrapht/DirectedGraphUnitTest.java similarity index 99% rename from algorithms/src/test/java/com/baeldung/jgrapht/DirectedGraphUnitTests.java rename to algorithms/src/test/java/com/baeldung/jgrapht/DirectedGraphUnitTest.java index 4355de8e1e..3aebaf49a2 100644 --- a/algorithms/src/test/java/com/baeldung/jgrapht/DirectedGraphUnitTests.java +++ b/algorithms/src/test/java/com/baeldung/jgrapht/DirectedGraphUnitTest.java @@ -24,7 +24,7 @@ import org.jgrapht.traverse.DepthFirstIterator; import org.junit.Before; import org.junit.Test; -public class DirectedGraphUnitTests { +public class DirectedGraphUnitTest { DirectedGraph directedGraph; @Before diff --git a/apache-opennlp/src/test/java/com/baeldung/apache/opennlp/TokenizerTest.java b/apache-opennlp/src/test/java/com/baeldung/apache/opennlp/TokenizerUnitTest.java similarity index 97% rename from apache-opennlp/src/test/java/com/baeldung/apache/opennlp/TokenizerTest.java rename to apache-opennlp/src/test/java/com/baeldung/apache/opennlp/TokenizerUnitTest.java index a4dea57cc3..6aa18b3bee 100644 --- a/apache-opennlp/src/test/java/com/baeldung/apache/opennlp/TokenizerTest.java +++ b/apache-opennlp/src/test/java/com/baeldung/apache/opennlp/TokenizerUnitTest.java @@ -8,7 +8,7 @@ import opennlp.tools.tokenize.WhitespaceTokenizer; import static org.assertj.core.api.Assertions.assertThat; import org.junit.Test; -public class TokenizerTest { +public class TokenizerUnitTest { @Test public void givenEnglishModel_whenTokenize_thenTokensAreDetected() throws Exception { diff --git a/core-java-8/src/test/java/com/baeldung/stream/StreamIndicesTest.java b/core-java-8/src/test/java/com/baeldung/stream/StreamIndicesUnitTest.java similarity index 98% rename from core-java-8/src/test/java/com/baeldung/stream/StreamIndicesTest.java rename to core-java-8/src/test/java/com/baeldung/stream/StreamIndicesUnitTest.java index a02ef4031e..36a609f536 100644 --- a/core-java-8/src/test/java/com/baeldung/stream/StreamIndicesTest.java +++ b/core-java-8/src/test/java/com/baeldung/stream/StreamIndicesUnitTest.java @@ -8,7 +8,7 @@ import java.util.List; import static org.junit.Assert.assertEquals; -public class StreamIndicesTest { +public class StreamIndicesUnitTest { @Test public void whenCalled_thenReturnListOfEvenIndexedStrings() { diff --git a/core-java/src/main/java/com/baeldung/keyword/KeywordDemo.java b/core-java/src/main/java/com/baeldung/keyword/KeywordDemo.java index d98586c233..fd608b424c 100644 --- a/core-java/src/main/java/com/baeldung/keyword/KeywordDemo.java +++ b/core-java/src/main/java/com/baeldung/keyword/KeywordDemo.java @@ -1,7 +1,7 @@ package com.baeldung.keyword; import com.baeldung.keyword.superkeyword.SuperSub; -import com.baeldung.keyword.thiskeyword.KeywordTest; +import com.baeldung.keyword.thiskeyword.KeywordUnitTest; /** * Created by Gebruiker on 5/14/2018. @@ -9,7 +9,7 @@ import com.baeldung.keyword.thiskeyword.KeywordTest; public class KeywordDemo { public static void main(String[] args) { - KeywordTest keyword = new KeywordTest(); + KeywordUnitTest keyword = new KeywordUnitTest(); SuperSub child = new SuperSub("message from the child class"); } diff --git a/core-java/src/main/java/com/baeldung/keyword/thiskeyword/KeywordTest.java b/core-java/src/main/java/com/baeldung/keyword/thiskeyword/KeywordUnitTest.java similarity index 68% rename from core-java/src/main/java/com/baeldung/keyword/thiskeyword/KeywordTest.java rename to core-java/src/main/java/com/baeldung/keyword/thiskeyword/KeywordUnitTest.java index 8c6adcfc50..35fd7358af 100644 --- a/core-java/src/main/java/com/baeldung/keyword/thiskeyword/KeywordTest.java +++ b/core-java/src/main/java/com/baeldung/keyword/thiskeyword/KeywordUnitTest.java @@ -1,17 +1,17 @@ package com.baeldung.keyword.thiskeyword; -public class KeywordTest { +public class KeywordUnitTest { private String name; private int age; - public KeywordTest() { + public KeywordUnitTest() { this("John", 27); this.printMessage(); printInstance(this); } - public KeywordTest(String name, int age) { + public KeywordUnitTest(String name, int age) { this.name = name; this.age = age; } @@ -20,11 +20,11 @@ public class KeywordTest { System.out.println("invoked by this"); } - public void printInstance(KeywordTest thisKeyword) { + public void printInstance(KeywordUnitTest thisKeyword) { System.out.println(thisKeyword); } - public KeywordTest getCurrentInstance() { + public KeywordUnitTest getCurrentInstance() { return this; } @@ -33,8 +33,8 @@ public class KeywordTest { boolean isInnerClass = true; public ThisInnerClass() { - KeywordTest thisKeyword = KeywordTest.this; - String outerString = KeywordTest.this.name; + KeywordUnitTest thisKeyword = KeywordUnitTest.this; + String outerString = KeywordUnitTest.this.name; System.out.println(this.isInnerClass); } } diff --git a/core-java/src/test/java/com/baeldung/decimalformat/DecimalFormatExamplesTest.java b/core-java/src/test/java/com/baeldung/decimalformat/DecimalFormatExamplesUnitTest.java similarity index 98% rename from core-java/src/test/java/com/baeldung/decimalformat/DecimalFormatExamplesTest.java rename to core-java/src/test/java/com/baeldung/decimalformat/DecimalFormatExamplesUnitTest.java index 8acd4e023e..6c3393c254 100644 --- a/core-java/src/test/java/com/baeldung/decimalformat/DecimalFormatExamplesTest.java +++ b/core-java/src/test/java/com/baeldung/decimalformat/DecimalFormatExamplesUnitTest.java @@ -11,7 +11,7 @@ import java.util.Locale; import org.junit.Test; -public class DecimalFormatExamplesTest { +public class DecimalFormatExamplesUnitTest { double d = 1234567.89; diff --git a/core-java/src/test/java/com/baeldung/dst/DaylightSavingTimeExamplesTest.java b/core-java/src/test/java/com/baeldung/dst/DaylightSavingTimeExamplesUnitTest.java similarity index 98% rename from core-java/src/test/java/com/baeldung/dst/DaylightSavingTimeExamplesTest.java rename to core-java/src/test/java/com/baeldung/dst/DaylightSavingTimeExamplesUnitTest.java index 8fec58f111..77b38419a9 100644 --- a/core-java/src/test/java/com/baeldung/dst/DaylightSavingTimeExamplesTest.java +++ b/core-java/src/test/java/com/baeldung/dst/DaylightSavingTimeExamplesUnitTest.java @@ -13,7 +13,7 @@ import java.util.TimeZone; import org.junit.Ignore; import org.junit.Test; -public class DaylightSavingTimeExamplesTest { +public class DaylightSavingTimeExamplesUnitTest { @Test public void givenItalianTimeZone_WhenDSTHappens_ThenCorrectlyShiftTimeZone() throws ParseException { diff --git a/core-java/src/test/java/com/baeldung/dst/DaylightSavingTimeJavaTimeExamplesTest.java b/core-java/src/test/java/com/baeldung/dst/DaylightSavingTimeJavaTimeExamplesUnitTest.java similarity index 97% rename from core-java/src/test/java/com/baeldung/dst/DaylightSavingTimeJavaTimeExamplesTest.java rename to core-java/src/test/java/com/baeldung/dst/DaylightSavingTimeJavaTimeExamplesUnitTest.java index 78847033ac..07ab859e09 100644 --- a/core-java/src/test/java/com/baeldung/dst/DaylightSavingTimeJavaTimeExamplesTest.java +++ b/core-java/src/test/java/com/baeldung/dst/DaylightSavingTimeJavaTimeExamplesUnitTest.java @@ -11,7 +11,7 @@ import java.util.TimeZone; import org.junit.Test; -public class DaylightSavingTimeJavaTimeExamplesTest { +public class DaylightSavingTimeJavaTimeExamplesUnitTest { @Test public void givenItalianTimeZone_WhenDSTHappens_ThenCorrectlyShiftTimeZone() throws ParseException { diff --git a/core-java/src/test/java/com/baeldung/extension/ExtensionTest.java b/core-java/src/test/java/com/baeldung/extension/ExtensionUnitTest.java similarity index 96% rename from core-java/src/test/java/com/baeldung/extension/ExtensionTest.java rename to core-java/src/test/java/com/baeldung/extension/ExtensionUnitTest.java index 97e9436b90..8c6e261c91 100644 --- a/core-java/src/test/java/com/baeldung/extension/ExtensionTest.java +++ b/core-java/src/test/java/com/baeldung/extension/ExtensionUnitTest.java @@ -3,7 +3,7 @@ package com.baeldung.extension; import org.junit.Assert; import org.junit.Test; -public class ExtensionTest { +public class ExtensionUnitTest { private Extension extension = new Extension(); @Test diff --git a/core-java/src/test/java/com/baeldung/hashcode/application/ApplicationTest.java b/core-java/src/test/java/com/baeldung/hashcode/application/ApplicationUnitTest.java similarity index 95% rename from core-java/src/test/java/com/baeldung/hashcode/application/ApplicationTest.java rename to core-java/src/test/java/com/baeldung/hashcode/application/ApplicationUnitTest.java index 60950fae7a..49857f355a 100644 --- a/core-java/src/test/java/com/baeldung/hashcode/application/ApplicationTest.java +++ b/core-java/src/test/java/com/baeldung/hashcode/application/ApplicationUnitTest.java @@ -8,7 +8,7 @@ import java.util.Map; import static org.junit.Assert.assertTrue; -public class ApplicationTest { +public class ApplicationUnitTest { @Test public void main_NoInputState_TextPrintedToConsole() throws Exception { diff --git a/core-java/src/test/java/com/baeldung/hashcode/entities/UserTest.java b/core-java/src/test/java/com/baeldung/hashcode/entities/UserUnitTest.java similarity index 96% rename from core-java/src/test/java/com/baeldung/hashcode/entities/UserTest.java rename to core-java/src/test/java/com/baeldung/hashcode/entities/UserUnitTest.java index e356b4beef..44ea7efed1 100644 --- a/core-java/src/test/java/com/baeldung/hashcode/entities/UserTest.java +++ b/core-java/src/test/java/com/baeldung/hashcode/entities/UserUnitTest.java @@ -5,7 +5,7 @@ import org.junit.Assert; import org.junit.Before; import org.junit.Test; -public class UserTest { +public class UserUnitTest { private User user; private User comparisonUser; diff --git a/core-java/src/test/java/com/baeldung/inheritance/AppTest.java b/core-java/src/test/java/com/baeldung/inheritance/AppUnitTest.java similarity index 85% rename from core-java/src/test/java/com/baeldung/inheritance/AppTest.java rename to core-java/src/test/java/com/baeldung/inheritance/AppUnitTest.java index 1235761aba..1c3c2fff35 100644 --- a/core-java/src/test/java/com/baeldung/inheritance/AppTest.java +++ b/core-java/src/test/java/com/baeldung/inheritance/AppUnitTest.java @@ -6,14 +6,14 @@ import junit.framework.Test; import junit.framework.TestCase; import junit.framework.TestSuite; -public class AppTest extends TestCase { +public class AppUnitTest extends TestCase { - public AppTest(String testName) { + public AppUnitTest(String testName) { super( testName ); } public static Test suite() { - return new TestSuite(AppTest.class); + return new TestSuite(AppUnitTest.class); } @SuppressWarnings("static-access") diff --git a/core-java/src/test/java/com/baeldung/initializationguide/UserTest.java b/core-java/src/test/java/com/baeldung/initializationguide/UserUnitTest.java similarity index 95% rename from core-java/src/test/java/com/baeldung/initializationguide/UserTest.java rename to core-java/src/test/java/com/baeldung/initializationguide/UserUnitTest.java index 8d352ba706..f74384e6f7 100644 --- a/core-java/src/test/java/com/baeldung/initializationguide/UserTest.java +++ b/core-java/src/test/java/com/baeldung/initializationguide/UserUnitTest.java @@ -6,7 +6,7 @@ import static org.assertj.core.api.Assertions.*; import java.lang.reflect.InvocationTargetException; -public class UserTest { +public class UserUnitTest { @Test public void givenUserInstance_whenIntializedWithNew_thenInstanceIsNotNull() { diff --git a/core-java/src/test/java/com/baeldung/interfaces/InnerInterfaceTests.java b/core-java/src/test/java/com/baeldung/interfaces/InnerInterfaceUnitTest.java similarity index 93% rename from core-java/src/test/java/com/baeldung/interfaces/InnerInterfaceTests.java rename to core-java/src/test/java/com/baeldung/interfaces/InnerInterfaceUnitTest.java index b19ed76189..65d7c860a8 100644 --- a/core-java/src/test/java/com/baeldung/interfaces/InnerInterfaceTests.java +++ b/core-java/src/test/java/com/baeldung/interfaces/InnerInterfaceUnitTest.java @@ -7,7 +7,7 @@ import org.junit.runner.RunWith; import org.junit.runners.JUnit4; @RunWith(JUnit4.class) -public class InnerInterfaceTests { +public class InnerInterfaceUnitTest { @Test public void whenCustomerListJoined_thenReturnsJoinedNames() { Customer.List customerList = new CommaSeparatedCustomers(); diff --git a/core-java/src/test/java/com/baeldung/java/currentmethod/CurrentlyExecutedMethodFinderTest.java b/core-java/src/test/java/com/baeldung/java/currentmethod/CurrentlyExecutedMethodFinderUnitTest.java similarity index 96% rename from core-java/src/test/java/com/baeldung/java/currentmethod/CurrentlyExecutedMethodFinderTest.java rename to core-java/src/test/java/com/baeldung/java/currentmethod/CurrentlyExecutedMethodFinderUnitTest.java index 9a231a9a3d..43ebdee688 100644 --- a/core-java/src/test/java/com/baeldung/java/currentmethod/CurrentlyExecutedMethodFinderTest.java +++ b/core-java/src/test/java/com/baeldung/java/currentmethod/CurrentlyExecutedMethodFinderUnitTest.java @@ -7,7 +7,7 @@ import static org.junit.Assert.assertEquals; /** * The class presents various ways of finding the name of currently executed method. */ -public class CurrentlyExecutedMethodFinderTest { +public class CurrentlyExecutedMethodFinderUnitTest { @Test public void givenCurrentThread_whenGetStackTrace_thenFindMethod() { diff --git a/core-java/src/test/java/com/baeldung/javanetworking/uriurl/test/URIDemoTest.java b/core-java/src/test/java/com/baeldung/javanetworking/uriurl/test/URIDemoLiveTest.java similarity index 95% rename from core-java/src/test/java/com/baeldung/javanetworking/uriurl/test/URIDemoTest.java rename to core-java/src/test/java/com/baeldung/javanetworking/uriurl/test/URIDemoLiveTest.java index c429039e3d..0c312ff613 100644 --- a/core-java/src/test/java/com/baeldung/javanetworking/uriurl/test/URIDemoTest.java +++ b/core-java/src/test/java/com/baeldung/javanetworking/uriurl/test/URIDemoLiveTest.java @@ -23,8 +23,8 @@ import org.slf4j.LoggerFactory; import com.baeldung.javanetworking.uriurl.URLDemo; @FixMethodOrder -public class URIDemoTest { - private final Logger log = LoggerFactory.getLogger(URIDemoTest.class); +public class URIDemoLiveTest { + private final Logger log = LoggerFactory.getLogger(URIDemoLiveTest.class); String URISTRING = "https://wordpress.org:443/support/topic/page-jumps-within-wordpress/?replies=3#post-2278484"; // parsed locator static String URISCHEME = "https"; diff --git a/core-java/src/test/java/com/baeldung/javanetworking/uriurl/test/URLDemoTest.java b/core-java/src/test/java/com/baeldung/javanetworking/uriurl/test/URLDemoLiveTest.java similarity index 97% rename from core-java/src/test/java/com/baeldung/javanetworking/uriurl/test/URLDemoTest.java rename to core-java/src/test/java/com/baeldung/javanetworking/uriurl/test/URLDemoLiveTest.java index 47cbf539a5..15f53ed878 100644 --- a/core-java/src/test/java/com/baeldung/javanetworking/uriurl/test/URLDemoTest.java +++ b/core-java/src/test/java/com/baeldung/javanetworking/uriurl/test/URLDemoLiveTest.java @@ -21,8 +21,8 @@ import org.slf4j.LoggerFactory; import com.baeldung.javanetworking.uriurl.URLDemo; @FixMethodOrder -public class URLDemoTest { - private final Logger log = LoggerFactory.getLogger(URLDemoTest.class); +public class URLDemoLiveTest { + private final Logger log = LoggerFactory.getLogger(URLDemoLiveTest.class); static String URLSTRING = "https://wordpress.org:443/support/topic/page-jumps-within-wordpress/?replies=3#post-2278484"; // parsed locator static String URLPROTOCOL = "https"; diff --git a/core-java/src/test/java/com/baeldung/jdbc/BatchProcessingTest.java b/core-java/src/test/java/com/baeldung/jdbc/BatchProcessingLiveTest.java similarity index 98% rename from core-java/src/test/java/com/baeldung/jdbc/BatchProcessingTest.java rename to core-java/src/test/java/com/baeldung/jdbc/BatchProcessingLiveTest.java index 90f2ea133f..c905482f55 100644 --- a/core-java/src/test/java/com/baeldung/jdbc/BatchProcessingTest.java +++ b/core-java/src/test/java/com/baeldung/jdbc/BatchProcessingLiveTest.java @@ -15,7 +15,7 @@ import java.sql.PreparedStatement; import java.sql.Statement; @RunWith(MockitoJUnitRunner.class) -public class BatchProcessingTest { +public class BatchProcessingLiveTest { @InjectMocks diff --git a/core-java/src/test/java/com/baeldung/jdbcrowset/JdbcRowSetTest.java b/core-java/src/test/java/com/baeldung/jdbcrowset/JdbcRowSetLiveTest.java similarity index 99% rename from core-java/src/test/java/com/baeldung/jdbcrowset/JdbcRowSetTest.java rename to core-java/src/test/java/com/baeldung/jdbcrowset/JdbcRowSetLiveTest.java index cb455c213a..ebfb4df102 100644 --- a/core-java/src/test/java/com/baeldung/jdbcrowset/JdbcRowSetTest.java +++ b/core-java/src/test/java/com/baeldung/jdbcrowset/JdbcRowSetLiveTest.java @@ -24,7 +24,7 @@ import com.sun.rowset.JdbcRowSetImpl; import com.sun.rowset.JoinRowSetImpl; import com.sun.rowset.WebRowSetImpl; -public class JdbcRowSetTest { +public class JdbcRowSetLiveTest { Statement stmt = null; String username = "sa"; String password = ""; diff --git a/core-java/src/test/java/com/baeldung/junit4vstestng/SuiteTest.java b/core-java/src/test/java/com/baeldung/junit4vstestng/SuiteUnitTest.java similarity index 87% rename from core-java/src/test/java/com/baeldung/junit4vstestng/SuiteTest.java rename to core-java/src/test/java/com/baeldung/junit4vstestng/SuiteUnitTest.java index 5095217efc..3e02309636 100644 --- a/core-java/src/test/java/com/baeldung/junit4vstestng/SuiteTest.java +++ b/core-java/src/test/java/com/baeldung/junit4vstestng/SuiteUnitTest.java @@ -5,6 +5,6 @@ import org.junit.runners.Suite; @RunWith(Suite.class) @Suite.SuiteClasses({ RegistrationUnitTest.class, SignInUnitTest.class }) -public class SuiteTest { +public class SuiteUnitTest { } diff --git a/core-java/src/test/java/com/baeldung/keystore/JavaKeyStoreTest.java b/core-java/src/test/java/com/baeldung/keystore/JavaKeyStoreUnitTest.java similarity index 99% rename from core-java/src/test/java/com/baeldung/keystore/JavaKeyStoreTest.java rename to core-java/src/test/java/com/baeldung/keystore/JavaKeyStoreUnitTest.java index ff1d337597..cb2a9f1c49 100644 --- a/core-java/src/test/java/com/baeldung/keystore/JavaKeyStoreTest.java +++ b/core-java/src/test/java/com/baeldung/keystore/JavaKeyStoreUnitTest.java @@ -33,7 +33,7 @@ import java.util.Date; /** * Created by adi on 4/14/18. */ -public class JavaKeyStoreTest { +public class JavaKeyStoreUnitTest { private JavaKeyStore keyStore; diff --git a/core-java/src/test/java/com/baeldung/maths/BigDecimalImplTest.java b/core-java/src/test/java/com/baeldung/maths/BigDecimalImplUnitTest.java similarity index 91% rename from core-java/src/test/java/com/baeldung/maths/BigDecimalImplTest.java rename to core-java/src/test/java/com/baeldung/maths/BigDecimalImplUnitTest.java index 788fbd7047..786e5af312 100644 --- a/core-java/src/test/java/com/baeldung/maths/BigDecimalImplTest.java +++ b/core-java/src/test/java/com/baeldung/maths/BigDecimalImplUnitTest.java @@ -6,7 +6,7 @@ import org.junit.Test; import java.math.BigDecimal; import java.math.RoundingMode; -public class BigDecimalImplTest { +public class BigDecimalImplUnitTest { @Test public void givenBigDecimalNumbers_whenAddedTogether_thenGetExpectedResult() { diff --git a/core-java/src/test/java/com/baeldung/maths/BigIntegerImplTest.java b/core-java/src/test/java/com/baeldung/maths/BigIntegerImplUnitTest.java similarity index 91% rename from core-java/src/test/java/com/baeldung/maths/BigIntegerImplTest.java rename to core-java/src/test/java/com/baeldung/maths/BigIntegerImplUnitTest.java index aa8eaa9909..4c45f69090 100644 --- a/core-java/src/test/java/com/baeldung/maths/BigIntegerImplTest.java +++ b/core-java/src/test/java/com/baeldung/maths/BigIntegerImplUnitTest.java @@ -5,7 +5,7 @@ import org.junit.Test; import java.math.BigInteger; -public class BigIntegerImplTest { +public class BigIntegerImplUnitTest { @Test public void givenBigIntegerNumbers_whenAddedTogether_thenGetExpectedResult() { diff --git a/core-java/src/test/java/com/baeldung/maths/FloatingPointArithmeticTest.java b/core-java/src/test/java/com/baeldung/maths/FloatingPointArithmeticUnitTest.java similarity index 93% rename from core-java/src/test/java/com/baeldung/maths/FloatingPointArithmeticTest.java rename to core-java/src/test/java/com/baeldung/maths/FloatingPointArithmeticUnitTest.java index 2066f13c6d..6812a8f588 100644 --- a/core-java/src/test/java/com/baeldung/maths/FloatingPointArithmeticTest.java +++ b/core-java/src/test/java/com/baeldung/maths/FloatingPointArithmeticUnitTest.java @@ -5,7 +5,7 @@ import java.math.BigDecimal; import org.junit.Assert; import org.junit.Test; -public class FloatingPointArithmeticTest { +public class FloatingPointArithmeticUnitTest { @Test public void givenDecimalNumbers_whenAddedTogether_thenGetExpectedResult() { diff --git a/core-java/src/test/java/com/baeldung/maths/RoundTest.java b/core-java/src/test/java/com/baeldung/maths/RoundUnitTest.java similarity index 97% rename from core-java/src/test/java/com/baeldung/maths/RoundTest.java rename to core-java/src/test/java/com/baeldung/maths/RoundUnitTest.java index 5ce9523e21..f3c8e6e97a 100644 --- a/core-java/src/test/java/com/baeldung/maths/RoundTest.java +++ b/core-java/src/test/java/com/baeldung/maths/RoundUnitTest.java @@ -8,7 +8,7 @@ import org.junit.Test; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotEquals; -public class RoundTest { +public class RoundUnitTest { private double value = 2.03456d; private int places = 2; private double delta = 0.0d; diff --git a/core-java/src/test/java/com/baeldung/noclassdeffounderror/NoClassDefFoundErrorTest.java b/core-java/src/test/java/com/baeldung/noclassdeffounderror/NoClassDefFoundErrorUnitTest.java similarity index 85% rename from core-java/src/test/java/com/baeldung/noclassdeffounderror/NoClassDefFoundErrorTest.java rename to core-java/src/test/java/com/baeldung/noclassdeffounderror/NoClassDefFoundErrorUnitTest.java index aa11aaa788..ccc8c1f69c 100644 --- a/core-java/src/test/java/com/baeldung/noclassdeffounderror/NoClassDefFoundErrorTest.java +++ b/core-java/src/test/java/com/baeldung/noclassdeffounderror/NoClassDefFoundErrorUnitTest.java @@ -2,7 +2,7 @@ package com.baeldung.noclassdeffounderror; import org.junit.Test; -public class NoClassDefFoundErrorTest { +public class NoClassDefFoundErrorUnitTest { @Test(expected = NoClassDefFoundError.class) public void givenInitErrorInClass_whenloadClass_thenNoClassDefFoundError() { diff --git a/core-java/src/test/java/com/baeldung/recursion/RecursionExampleTest.java b/core-java/src/test/java/com/baeldung/recursion/RecursionExampleUnitTest.java similarity index 94% rename from core-java/src/test/java/com/baeldung/recursion/RecursionExampleTest.java rename to core-java/src/test/java/com/baeldung/recursion/RecursionExampleUnitTest.java index c65be24240..6c560c9c37 100644 --- a/core-java/src/test/java/com/baeldung/recursion/RecursionExampleTest.java +++ b/core-java/src/test/java/com/baeldung/recursion/RecursionExampleUnitTest.java @@ -3,7 +3,7 @@ package com.baeldung.recursion; import org.junit.Assert; import org.junit.Test; -public class RecursionExampleTest { +public class RecursionExampleUnitTest { RecursionExample recursion = new RecursionExample(); diff --git a/core-java/src/test/java/com/baeldung/reflection/BaeldungReflectionUtilsTest.java b/core-java/src/test/java/com/baeldung/reflection/BaeldungReflectionUtilsUnitTest.java similarity index 93% rename from core-java/src/test/java/com/baeldung/reflection/BaeldungReflectionUtilsTest.java rename to core-java/src/test/java/com/baeldung/reflection/BaeldungReflectionUtilsUnitTest.java index bba867f50f..77cdd0279d 100644 --- a/core-java/src/test/java/com/baeldung/reflection/BaeldungReflectionUtilsTest.java +++ b/core-java/src/test/java/com/baeldung/reflection/BaeldungReflectionUtilsUnitTest.java @@ -7,7 +7,7 @@ import java.util.List; import static org.junit.Assert.assertTrue; -public class BaeldungReflectionUtilsTest { +public class BaeldungReflectionUtilsUnitTest { @Test public void givenCustomer_whenAFieldIsNull_thenFieldNameInResult() throws Exception { diff --git a/core-java/src/test/java/com/baeldung/regexp/EscapingCharsTest.java b/core-java/src/test/java/com/baeldung/regexp/EscapingCharsUnitTest.java similarity index 98% rename from core-java/src/test/java/com/baeldung/regexp/EscapingCharsTest.java rename to core-java/src/test/java/com/baeldung/regexp/EscapingCharsUnitTest.java index 47c9cfc621..d903a02589 100644 --- a/core-java/src/test/java/com/baeldung/regexp/EscapingCharsTest.java +++ b/core-java/src/test/java/com/baeldung/regexp/EscapingCharsUnitTest.java @@ -10,7 +10,7 @@ import static org.hamcrest.CoreMatchers.equalTo; import static org.hamcrest.CoreMatchers.not; import static org.junit.Assert.assertThat; -public class EscapingCharsTest { +public class EscapingCharsUnitTest { @Test public void givenRegexWithDot_whenMatchingStr_thenMatches() { String strInput = "foof"; diff --git a/core-java/src/test/java/com/baeldung/sneakythrows/SneakyRunnableTest.java b/core-java/src/test/java/com/baeldung/sneakythrows/SneakyRunnableUnitTest.java similarity index 90% rename from core-java/src/test/java/com/baeldung/sneakythrows/SneakyRunnableTest.java rename to core-java/src/test/java/com/baeldung/sneakythrows/SneakyRunnableUnitTest.java index cd31f545b9..8d8e4f14fe 100644 --- a/core-java/src/test/java/com/baeldung/sneakythrows/SneakyRunnableTest.java +++ b/core-java/src/test/java/com/baeldung/sneakythrows/SneakyRunnableUnitTest.java @@ -4,7 +4,7 @@ import org.junit.Test; import static junit.framework.TestCase.assertEquals; -public class SneakyRunnableTest { +public class SneakyRunnableUnitTest { @Test public void whenCallSneakyRunnableMethod_thenThrowException() { diff --git a/core-java/src/test/java/com/baeldung/sneakythrows/SneakyThrowsTest.java b/core-java/src/test/java/com/baeldung/sneakythrows/SneakyThrowsUnitTest.java similarity index 91% rename from core-java/src/test/java/com/baeldung/sneakythrows/SneakyThrowsTest.java rename to core-java/src/test/java/com/baeldung/sneakythrows/SneakyThrowsUnitTest.java index e033ca062d..da1b2e617b 100644 --- a/core-java/src/test/java/com/baeldung/sneakythrows/SneakyThrowsTest.java +++ b/core-java/src/test/java/com/baeldung/sneakythrows/SneakyThrowsUnitTest.java @@ -4,7 +4,7 @@ import org.junit.Test; import static junit.framework.TestCase.assertEquals; -public class SneakyThrowsTest { +public class SneakyThrowsUnitTest { @Test public void whenCallSneakyMethod_thenThrowSneakyException() { diff --git a/core-java/src/test/java/com/baeldung/string/PalindromeTest.java b/core-java/src/test/java/com/baeldung/string/PalindromeUnitTest.java similarity index 98% rename from core-java/src/test/java/com/baeldung/string/PalindromeTest.java rename to core-java/src/test/java/com/baeldung/string/PalindromeUnitTest.java index bc6fee2cd9..49f2542f39 100644 --- a/core-java/src/test/java/com/baeldung/string/PalindromeTest.java +++ b/core-java/src/test/java/com/baeldung/string/PalindromeUnitTest.java @@ -3,7 +3,7 @@ package com.baeldung.string; import static org.junit.Assert.*; import org.junit.Test; -public class PalindromeTest { +public class PalindromeUnitTest { private String[] words = { "Anna", diff --git a/core-java/src/test/java/com/baeldung/string/StringComparisonTest.java b/core-java/src/test/java/com/baeldung/string/StringComparisonUnitTest.java similarity index 99% rename from core-java/src/test/java/com/baeldung/string/StringComparisonTest.java rename to core-java/src/test/java/com/baeldung/string/StringComparisonUnitTest.java index 5869676004..539f66d9b4 100644 --- a/core-java/src/test/java/com/baeldung/string/StringComparisonTest.java +++ b/core-java/src/test/java/com/baeldung/string/StringComparisonUnitTest.java @@ -7,7 +7,7 @@ import java.util.Objects; import static org.assertj.core.api.Assertions.assertThat; -public class StringComparisonTest { +public class StringComparisonUnitTest { @Test public void whenUsingComparisonOperator_ThenComparingStrings(){ diff --git a/core-java/src/test/java/com/baeldung/string/StringTest.java b/core-java/src/test/java/com/baeldung/string/StringUnitTest.java similarity index 99% rename from core-java/src/test/java/com/baeldung/string/StringTest.java rename to core-java/src/test/java/com/baeldung/string/StringUnitTest.java index e88b2d7c2c..0d4fd6eff9 100644 --- a/core-java/src/test/java/com/baeldung/string/StringTest.java +++ b/core-java/src/test/java/com/baeldung/string/StringUnitTest.java @@ -12,7 +12,7 @@ import java.util.regex.PatternSyntaxException; import org.junit.Test; -public class StringTest { +public class StringUnitTest { @Test public void whenCallCodePointAt_thenDecimalUnicodeReturned() { diff --git a/core-java/src/test/java/com/baeldung/string/formatter/StringFormatterExampleTests.java b/core-java/src/test/java/com/baeldung/string/formatter/StringFormatterExampleUnitTest.java similarity index 99% rename from core-java/src/test/java/com/baeldung/string/formatter/StringFormatterExampleTests.java rename to core-java/src/test/java/com/baeldung/string/formatter/StringFormatterExampleUnitTest.java index ad4f5dce7e..648fdaf65a 100644 --- a/core-java/src/test/java/com/baeldung/string/formatter/StringFormatterExampleTests.java +++ b/core-java/src/test/java/com/baeldung/string/formatter/StringFormatterExampleUnitTest.java @@ -8,7 +8,7 @@ import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; import org.junit.Test; -public class StringFormatterExampleTests { +public class StringFormatterExampleUnitTest { @Test public void givenString_whenFormatSpecifierForCalendar_thenGotExpected() { diff --git a/core-java/src/test/java/com/baeldung/system/DateTimeServiceTest.java b/core-java/src/test/java/com/baeldung/system/DateTimeServiceUnitTest.java similarity index 90% rename from core-java/src/test/java/com/baeldung/system/DateTimeServiceTest.java rename to core-java/src/test/java/com/baeldung/system/DateTimeServiceUnitTest.java index 587cd4ef20..ef083dd25e 100644 --- a/core-java/src/test/java/com/baeldung/system/DateTimeServiceTest.java +++ b/core-java/src/test/java/com/baeldung/system/DateTimeServiceUnitTest.java @@ -3,7 +3,7 @@ package com.baeldung.system; import org.junit.Assert; import org.junit.Test; -public class DateTimeServiceTest { +public class DateTimeServiceUnitTest { @Test public void givenClass_whenCalledMethods_thenNotNullInResult() { diff --git a/core-java/src/test/java/com/baeldung/system/EnvironmentVariablesTest.java b/core-java/src/test/java/com/baeldung/system/EnvironmentVariablesUnitTest.java similarity index 87% rename from core-java/src/test/java/com/baeldung/system/EnvironmentVariablesTest.java rename to core-java/src/test/java/com/baeldung/system/EnvironmentVariablesUnitTest.java index 3722fea88f..5e4db747be 100644 --- a/core-java/src/test/java/com/baeldung/system/EnvironmentVariablesTest.java +++ b/core-java/src/test/java/com/baeldung/system/EnvironmentVariablesUnitTest.java @@ -3,7 +3,7 @@ package com.baeldung.system; import org.junit.Assert; import org.junit.Test; -public class EnvironmentVariablesTest { +public class EnvironmentVariablesUnitTest { @Test public void givenEnvVars_whenReadPath_thenGetValueinResult() { diff --git a/core-java/src/test/java/com/baeldung/system/SystemArrayCopyTest.java b/core-java/src/test/java/com/baeldung/system/SystemArrayCopyUnitTest.java similarity index 95% rename from core-java/src/test/java/com/baeldung/system/SystemArrayCopyTest.java rename to core-java/src/test/java/com/baeldung/system/SystemArrayCopyUnitTest.java index f54e3702c8..bf715f3ac3 100644 --- a/core-java/src/test/java/com/baeldung/system/SystemArrayCopyTest.java +++ b/core-java/src/test/java/com/baeldung/system/SystemArrayCopyUnitTest.java @@ -3,7 +3,7 @@ package com.baeldung.system; import org.junit.Assert; import org.junit.Test; -public class SystemArrayCopyTest { +public class SystemArrayCopyUnitTest { @Test public void givenTwoArraysAB_whenUseArrayCopy_thenArrayCopiedFromAToBInResult() { diff --git a/core-java/src/test/java/com/baeldung/system/SystemNanoTest.java b/core-java/src/test/java/com/baeldung/system/SystemNanoUnitTest.java similarity index 91% rename from core-java/src/test/java/com/baeldung/system/SystemNanoTest.java rename to core-java/src/test/java/com/baeldung/system/SystemNanoUnitTest.java index bf6590da0a..cd9543212e 100644 --- a/core-java/src/test/java/com/baeldung/system/SystemNanoTest.java +++ b/core-java/src/test/java/com/baeldung/system/SystemNanoUnitTest.java @@ -3,7 +3,7 @@ package com.baeldung.system; import org.junit.Assert; import org.junit.Test; -public class SystemNanoTest { +public class SystemNanoUnitTest { @Test public void givenSystem_whenCalledNanoTime_thenGivesTimeinResult() { diff --git a/core-java/src/test/java/com/baeldung/system/SystemPropertiesTest.java b/core-java/src/test/java/com/baeldung/system/SystemPropertiesUnitTest.java similarity index 97% rename from core-java/src/test/java/com/baeldung/system/SystemPropertiesTest.java rename to core-java/src/test/java/com/baeldung/system/SystemPropertiesUnitTest.java index 4fca27f96c..4940e39238 100644 --- a/core-java/src/test/java/com/baeldung/system/SystemPropertiesTest.java +++ b/core-java/src/test/java/com/baeldung/system/SystemPropertiesUnitTest.java @@ -6,7 +6,7 @@ import org.junit.Test; import java.util.Properties; -public class SystemPropertiesTest { +public class SystemPropertiesUnitTest { @Test public void givenSystem_whenCalledGetProperty_thenReturnPropertyinResult() { diff --git a/core-java/src/test/java/com/baeldung/system/WhenDetectingOSTest.java b/core-java/src/test/java/com/baeldung/system/WhenDetectingOSUnitTest.java similarity index 93% rename from core-java/src/test/java/com/baeldung/system/WhenDetectingOSTest.java rename to core-java/src/test/java/com/baeldung/system/WhenDetectingOSUnitTest.java index 77901f6524..27a6dd43c6 100644 --- a/core-java/src/test/java/com/baeldung/system/WhenDetectingOSTest.java +++ b/core-java/src/test/java/com/baeldung/system/WhenDetectingOSUnitTest.java @@ -5,7 +5,7 @@ import org.junit.Ignore; import org.junit.Test; @Ignore -public class WhenDetectingOSTest { +public class WhenDetectingOSUnitTest { private DetectOS os = new DetectOS(); diff --git a/core-java/src/test/java/com/baeldung/threadlocalrandom/ThreadLocalRandomTest.java b/core-java/src/test/java/com/baeldung/threadlocalrandom/ThreadLocalRandomIntegrationTest.java similarity index 97% rename from core-java/src/test/java/com/baeldung/threadlocalrandom/ThreadLocalRandomTest.java rename to core-java/src/test/java/com/baeldung/threadlocalrandom/ThreadLocalRandomIntegrationTest.java index c75813baba..56c77f923f 100644 --- a/core-java/src/test/java/com/baeldung/threadlocalrandom/ThreadLocalRandomTest.java +++ b/core-java/src/test/java/com/baeldung/threadlocalrandom/ThreadLocalRandomIntegrationTest.java @@ -5,7 +5,7 @@ import java.util.concurrent.ThreadLocalRandom; import static org.junit.Assert.assertTrue; import org.junit.Test; -public class ThreadLocalRandomTest { +public class ThreadLocalRandomIntegrationTest { @Test public void givenUsingThreadLocalRandom_whenGeneratingRandomIntBounded_thenCorrect() { diff --git a/core-java/src/test/java/com/baeldung/util/PropertiesLoaderTest.java b/core-java/src/test/java/com/baeldung/util/PropertiesLoaderUnitTest.java similarity index 96% rename from core-java/src/test/java/com/baeldung/util/PropertiesLoaderTest.java rename to core-java/src/test/java/com/baeldung/util/PropertiesLoaderUnitTest.java index fa3c425156..eea3068253 100644 --- a/core-java/src/test/java/com/baeldung/util/PropertiesLoaderTest.java +++ b/core-java/src/test/java/com/baeldung/util/PropertiesLoaderUnitTest.java @@ -7,7 +7,7 @@ import java.util.Properties; import static org.junit.Assert.assertEquals; -public class PropertiesLoaderTest { +public class PropertiesLoaderUnitTest { @Test public void loadProperties_whenPropertyReaded_thenSuccess() throws IOException { diff --git a/core-java/src/test/java/com/baeldung/varargs/FormatterTest.java b/core-java/src/test/java/com/baeldung/varargs/FormatterUnitTest.java similarity index 97% rename from core-java/src/test/java/com/baeldung/varargs/FormatterTest.java rename to core-java/src/test/java/com/baeldung/varargs/FormatterUnitTest.java index 509c8764d2..e9018afd62 100644 --- a/core-java/src/test/java/com/baeldung/varargs/FormatterTest.java +++ b/core-java/src/test/java/com/baeldung/varargs/FormatterUnitTest.java @@ -5,7 +5,7 @@ import org.junit.Test; import static org.hamcrest.CoreMatchers.is; import static org.hamcrest.MatcherAssert.assertThat; -public class FormatterTest { +public class FormatterUnitTest { private final static String FORMAT = "%s %s %s"; diff --git a/core-java/src/test/java/org/baeldung/java/rawtypes/RawTypesTest.java b/core-java/src/test/java/org/baeldung/java/rawtypes/RawTypesUnitTest.java similarity index 91% rename from core-java/src/test/java/org/baeldung/java/rawtypes/RawTypesTest.java rename to core-java/src/test/java/org/baeldung/java/rawtypes/RawTypesUnitTest.java index 2b36786abf..161c053cea 100644 --- a/core-java/src/test/java/org/baeldung/java/rawtypes/RawTypesTest.java +++ b/core-java/src/test/java/org/baeldung/java/rawtypes/RawTypesUnitTest.java @@ -5,7 +5,7 @@ import java.util.List; import org.junit.Test; -public class RawTypesTest { +public class RawTypesUnitTest { @Test public void shouldCreateListUsingRawTypes() { @SuppressWarnings("rawtypes") diff --git a/drools/src/test/java/com/baeldung/drools/backward_chaining/BackwardChainingTest.java b/drools/src/test/java/com/baeldung/drools/backward_chaining/BackwardChainingIntegrationTest.java similarity index 95% rename from drools/src/test/java/com/baeldung/drools/backward_chaining/BackwardChainingTest.java rename to drools/src/test/java/com/baeldung/drools/backward_chaining/BackwardChainingIntegrationTest.java index f49d0b82de..fd49f94479 100644 --- a/drools/src/test/java/com/baeldung/drools/backward_chaining/BackwardChainingTest.java +++ b/drools/src/test/java/com/baeldung/drools/backward_chaining/BackwardChainingIntegrationTest.java @@ -10,7 +10,7 @@ import com.baeldung.drools.model.Result; import static junit.framework.TestCase.assertEquals; -public class BackwardChainingTest { +public class BackwardChainingIntegrationTest { private Result result; private KieSession ksession; diff --git a/guava-modules/guava-18/src/test/java/com/baeldung/guava/GuavaMiscUtilsTest.java b/guava-modules/guava-18/src/test/java/com/baeldung/guava/GuavaMiscUtilsUnitTest.java similarity index 97% rename from guava-modules/guava-18/src/test/java/com/baeldung/guava/GuavaMiscUtilsTest.java rename to guava-modules/guava-18/src/test/java/com/baeldung/guava/GuavaMiscUtilsUnitTest.java index db82ea6da8..bd3a73c60f 100644 --- a/guava-modules/guava-18/src/test/java/com/baeldung/guava/GuavaMiscUtilsTest.java +++ b/guava-modules/guava-18/src/test/java/com/baeldung/guava/GuavaMiscUtilsUnitTest.java @@ -11,7 +11,7 @@ import java.util.concurrent.ConcurrentHashMap; import static org.hamcrest.CoreMatchers.equalTo; -public class GuavaMiscUtilsTest { +public class GuavaMiscUtilsUnitTest { @Test public void whenHashingData_shouldReturnCorrectHashCode() throws Exception { int receivedData = 123; diff --git a/guava-modules/guava-19/src/test/java/com/baeldung/guava/GuavaMiscUtilsTest.java b/guava-modules/guava-19/src/test/java/com/baeldung/guava/GuavaMiscUtilsUnitTest.java similarity index 98% rename from guava-modules/guava-19/src/test/java/com/baeldung/guava/GuavaMiscUtilsTest.java rename to guava-modules/guava-19/src/test/java/com/baeldung/guava/GuavaMiscUtilsUnitTest.java index c7b8441b78..6f2d85bb04 100644 --- a/guava-modules/guava-19/src/test/java/com/baeldung/guava/GuavaMiscUtilsTest.java +++ b/guava-modules/guava-19/src/test/java/com/baeldung/guava/GuavaMiscUtilsUnitTest.java @@ -12,7 +12,7 @@ import static org.hamcrest.collection.IsIterableContainingInAnyOrder.containsInA import static org.hamcrest.core.AnyOf.anyOf; import static org.junit.Assert.*; -public class GuavaMiscUtilsTest { +public class GuavaMiscUtilsUnitTest { @Test public void whenGettingLazyStackTrace_ListShouldBeReturned() throws Exception { diff --git a/guava-modules/guava-21/src/test/java/com.baeldung.guava.zip/ZipCollectionTest.java b/guava-modules/guava-21/src/test/java/com/baeldung/guava/zip/ZipCollectionUnitTest.java similarity index 98% rename from guava-modules/guava-21/src/test/java/com.baeldung.guava.zip/ZipCollectionTest.java rename to guava-modules/guava-21/src/test/java/com/baeldung/guava/zip/ZipCollectionUnitTest.java index 866e09c6a0..e3d31d9404 100644 --- a/guava-modules/guava-21/src/test/java/com.baeldung.guava.zip/ZipCollectionTest.java +++ b/guava-modules/guava-21/src/test/java/com/baeldung/guava/zip/ZipCollectionUnitTest.java @@ -13,7 +13,7 @@ import java.util.stream.IntStream; import static org.junit.Assert.assertEquals; -public class ZipCollectionTest { +public class ZipCollectionUnitTest { private List names; private List ages; diff --git a/guava/src/test/java/org/baeldung/guava/BloomFilterTest.java b/guava/src/test/java/org/baeldung/guava/BloomFilterUnitTest.java similarity index 97% rename from guava/src/test/java/org/baeldung/guava/BloomFilterTest.java rename to guava/src/test/java/org/baeldung/guava/BloomFilterUnitTest.java index d7c25b7c8d..ff3031a0cb 100644 --- a/guava/src/test/java/org/baeldung/guava/BloomFilterTest.java +++ b/guava/src/test/java/org/baeldung/guava/BloomFilterUnitTest.java @@ -9,7 +9,7 @@ import java.util.stream.IntStream; import static org.assertj.core.api.Assertions.assertThat; -public class BloomFilterTest { +public class BloomFilterUnitTest { @Test public void givenBloomFilter_whenAddNStringsToIt_thenShouldNotReturnAnyFalsePositive() { diff --git a/guava/src/test/java/org/baeldung/guava/GuavaCountingOutputStreamTest.java b/guava/src/test/java/org/baeldung/guava/GuavaCountingOutputStreamUnitTest.java similarity index 94% rename from guava/src/test/java/org/baeldung/guava/GuavaCountingOutputStreamTest.java rename to guava/src/test/java/org/baeldung/guava/GuavaCountingOutputStreamUnitTest.java index 5e96f3597c..7293b1631e 100644 --- a/guava/src/test/java/org/baeldung/guava/GuavaCountingOutputStreamTest.java +++ b/guava/src/test/java/org/baeldung/guava/GuavaCountingOutputStreamUnitTest.java @@ -7,7 +7,7 @@ import org.junit.Test; import com.google.common.io.CountingOutputStream; -public class GuavaCountingOutputStreamTest { +public class GuavaCountingOutputStreamUnitTest { public static final int MAX = 5; @Test(expected = RuntimeException.class) diff --git a/java-lite/src/test/java/app/models/ProductTest.java b/java-lite/src/test/java/app/models/ProductUnitTest.java similarity index 95% rename from java-lite/src/test/java/app/models/ProductTest.java rename to java-lite/src/test/java/app/models/ProductUnitTest.java index 5e5c6e8845..416df67d0e 100644 --- a/java-lite/src/test/java/app/models/ProductTest.java +++ b/java-lite/src/test/java/app/models/ProductUnitTest.java @@ -4,7 +4,7 @@ import org.javalite.activejdbc.Base; import org.junit.Assert; import org.junit.Test; -public class ProductTest { +public class ProductUnitTest { //@Test public void givenSavedProduct_WhenFindFirst_ThenSavedProductIsReturned() { diff --git a/javax-servlets/src/test/java/com/baeldung/servlets/EmployeeServletTest.java b/javax-servlets/src/test/java/com/baeldung/servlets/EmployeeServletIntegrationTest.java similarity index 97% rename from javax-servlets/src/test/java/com/baeldung/servlets/EmployeeServletTest.java rename to javax-servlets/src/test/java/com/baeldung/servlets/EmployeeServletIntegrationTest.java index 2ebd58f50b..c96ad0a858 100644 --- a/javax-servlets/src/test/java/com/baeldung/servlets/EmployeeServletTest.java +++ b/javax-servlets/src/test/java/com/baeldung/servlets/EmployeeServletIntegrationTest.java @@ -19,7 +19,7 @@ import com.google.gson.Gson; @RunWith(MockitoJUnitRunner.class) -public class EmployeeServletTest { +public class EmployeeServletIntegrationTest { @Mock HttpServletRequest httpServletRequest; diff --git a/jersey/src/test/java/com/baeldung/jersey/client/JerseyClientTest.java b/jersey/src/test/java/com/baeldung/jersey/client/JerseyClientIntegrationTest.java similarity index 95% rename from jersey/src/test/java/com/baeldung/jersey/client/JerseyClientTest.java rename to jersey/src/test/java/com/baeldung/jersey/client/JerseyClientIntegrationTest.java index 72ba4cc5b9..a6fd606e3f 100644 --- a/jersey/src/test/java/com/baeldung/jersey/client/JerseyClientTest.java +++ b/jersey/src/test/java/com/baeldung/jersey/client/JerseyClientIntegrationTest.java @@ -7,7 +7,7 @@ import org.junit.Ignore; import org.junit.Test; @Ignore -public class JerseyClientTest { +public class JerseyClientIntegrationTest { private static int HTTP_OK = 200; diff --git a/json-path/src/test/java/com/baeldung/jsonpath/introduction/ServiceTest.java b/json-path/src/test/java/com/baeldung/jsonpath/introduction/ServiceIntegrationTest.java similarity index 98% rename from json-path/src/test/java/com/baeldung/jsonpath/introduction/ServiceTest.java rename to json-path/src/test/java/com/baeldung/jsonpath/introduction/ServiceIntegrationTest.java index 067e5cf8ce..85e5d3e826 100644 --- a/json-path/src/test/java/com/baeldung/jsonpath/introduction/ServiceTest.java +++ b/json-path/src/test/java/com/baeldung/jsonpath/introduction/ServiceIntegrationTest.java @@ -17,7 +17,7 @@ import static org.hamcrest.CoreMatchers.containsString; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertThat; -public class ServiceTest { +public class ServiceIntegrationTest { private InputStream jsonInputStream = this.getClass() .getClassLoader() .getResourceAsStream("intro_service.json"); diff --git a/libraries-data/src/test/java/com/baeldung/jcache/CacheLoaderTest.java b/libraries-data/src/test/java/com/baeldung/jcache/CacheLoaderIntegrationTest.java similarity index 97% rename from libraries-data/src/test/java/com/baeldung/jcache/CacheLoaderTest.java rename to libraries-data/src/test/java/com/baeldung/jcache/CacheLoaderIntegrationTest.java index 93ff3f09a3..8017418eba 100644 --- a/libraries-data/src/test/java/com/baeldung/jcache/CacheLoaderTest.java +++ b/libraries-data/src/test/java/com/baeldung/jcache/CacheLoaderIntegrationTest.java @@ -13,7 +13,7 @@ import org.junit.After; import org.junit.Before; import org.junit.Test; -public class CacheLoaderTest { +public class CacheLoaderIntegrationTest { private static final String CACHE_NAME = "SimpleCache"; diff --git a/logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/Log4j2Test.java b/logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/Log4j2BaseIntegrationTest.java similarity index 92% rename from logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/Log4j2Test.java rename to logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/Log4j2BaseIntegrationTest.java index abd92a2202..6b68977fd6 100644 --- a/logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/Log4j2Test.java +++ b/logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/Log4j2BaseIntegrationTest.java @@ -6,7 +6,7 @@ import org.junit.AfterClass; import java.lang.reflect.Field; -public class Log4j2Test { +public class Log4j2BaseIntegrationTest { @AfterClass public static void tearDown() throws Exception { Field factories = ConfigurationFactory.class.getDeclaredField("factories"); diff --git a/logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/setconfigurationfactory/SetConfigurationFactoryTest.java b/logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/setconfigurationfactory/SetConfigurationFactoryIntegrationTest.java similarity index 89% rename from logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/setconfigurationfactory/SetConfigurationFactoryTest.java rename to logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/setconfigurationfactory/SetConfigurationFactoryIntegrationTest.java index 2f9a837424..db3b0780a2 100644 --- a/logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/setconfigurationfactory/SetConfigurationFactoryTest.java +++ b/logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/setconfigurationfactory/SetConfigurationFactoryIntegrationTest.java @@ -4,7 +4,7 @@ **/ package com.baeldung.logging.log4j2.setconfigurationfactory; -import com.baeldung.logging.log4j2.Log4j2Test; +import com.baeldung.logging.log4j2.Log4j2BaseIntegrationTest; import com.baeldung.logging.log4j2.simpleconfiguration.CustomConfigurationFactory; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @@ -17,7 +17,7 @@ import org.junit.runner.RunWith; import org.junit.runners.JUnit4; @RunWith(JUnit4.class) -public class SetConfigurationFactoryTest extends Log4j2Test { +public class SetConfigurationFactoryIntegrationTest extends Log4j2BaseIntegrationTest { @BeforeClass public static void setUp() { CustomConfigurationFactory customConfigurationFactory = new CustomConfigurationFactory(); diff --git a/logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/simpleconfiguration/SimpleConfigurationTest.java b/logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/simpleconfiguration/SimpleConfigurationIntegrationTest.java similarity index 88% rename from logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/simpleconfiguration/SimpleConfigurationTest.java rename to logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/simpleconfiguration/SimpleConfigurationIntegrationTest.java index 02330a808b..25f0736df5 100644 --- a/logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/simpleconfiguration/SimpleConfigurationTest.java +++ b/logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/simpleconfiguration/SimpleConfigurationIntegrationTest.java @@ -4,7 +4,7 @@ **/ package com.baeldung.logging.log4j2.simpleconfiguration; -import com.baeldung.logging.log4j2.Log4j2Test; +import com.baeldung.logging.log4j2.Log4j2BaseIntegrationTest; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.Marker; @@ -13,7 +13,7 @@ import org.apache.logging.log4j.core.config.plugins.util.PluginManager; import org.junit.BeforeClass; import org.junit.Test; -public class SimpleConfigurationTest extends Log4j2Test { +public class SimpleConfigurationIntegrationTest extends Log4j2BaseIntegrationTest { @BeforeClass public static void setUp() { PluginManager.addPackage("com.baeldung.logging.log4j2.simpleconfiguration"); diff --git a/logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/simpleconfigurator/SimpleConfiguratorTest.java b/logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/simpleconfigurator/SimpleConfiguratorIntegrationTest.java similarity index 92% rename from logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/simpleconfigurator/SimpleConfiguratorTest.java rename to logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/simpleconfigurator/SimpleConfiguratorIntegrationTest.java index 03bf996120..49cde67303 100644 --- a/logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/simpleconfigurator/SimpleConfiguratorTest.java +++ b/logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/simpleconfigurator/SimpleConfiguratorIntegrationTest.java @@ -5,7 +5,7 @@ package com.baeldung.logging.log4j2.simpleconfigurator; -import com.baeldung.logging.log4j2.Log4j2Test; +import com.baeldung.logging.log4j2.Log4j2BaseIntegrationTest; import org.apache.logging.log4j.Level; import org.apache.logging.log4j.core.appender.ConsoleAppender; import org.apache.logging.log4j.core.config.Configurator; @@ -18,7 +18,7 @@ import org.junit.runner.RunWith; import org.junit.runners.JUnit4; @RunWith(JUnit4.class) -public class SimpleConfiguratorTest extends Log4j2Test { +public class SimpleConfiguratorIntegrationTest extends Log4j2BaseIntegrationTest { @Test public void givenDefaultLog4j2Environment_whenProgrammaticallyConfigured_thenLogsCorrectly() { diff --git a/logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/tests/JSONLayoutTest.java b/logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/tests/JSONLayoutIntegrationTest.java similarity index 90% rename from logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/tests/JSONLayoutTest.java rename to logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/tests/JSONLayoutIntegrationTest.java index 7a6fbf999c..e4404a6528 100644 --- a/logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/tests/JSONLayoutTest.java +++ b/logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/tests/JSONLayoutIntegrationTest.java @@ -6,7 +6,7 @@ import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.PrintStream; -import com.baeldung.logging.log4j2.Log4j2Test; +import com.baeldung.logging.log4j2.Log4j2BaseIntegrationTest; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.junit.Before; @@ -14,7 +14,7 @@ import org.junit.Test; import com.fasterxml.jackson.databind.ObjectMapper; -public class JSONLayoutTest extends Log4j2Test { +public class JSONLayoutIntegrationTest extends Log4j2BaseIntegrationTest { private static Logger logger; private ByteArrayOutputStream consoleOutput = new ByteArrayOutputStream(); diff --git a/logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/xmlconfiguration/XMLConfigLogTest.java b/logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/xmlconfiguration/XMLConfigLogIntegrationTest.java similarity index 91% rename from logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/xmlconfiguration/XMLConfigLogTest.java rename to logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/xmlconfiguration/XMLConfigLogIntegrationTest.java index 41f733804a..d705b50b1a 100644 --- a/logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/xmlconfiguration/XMLConfigLogTest.java +++ b/logging-modules/log4j2/src/test/java/com/baeldung/logging/log4j2/xmlconfiguration/XMLConfigLogIntegrationTest.java @@ -7,7 +7,7 @@ package com.baeldung.logging.log4j2.xmlconfiguration; -import com.baeldung.logging.log4j2.Log4j2Test; +import com.baeldung.logging.log4j2.Log4j2BaseIntegrationTest; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.Marker; @@ -17,7 +17,7 @@ import org.apache.logging.log4j.core.config.plugins.util.PluginManager; import org.junit.BeforeClass; import org.junit.Test; -public class XMLConfigLogTest extends Log4j2Test { +public class XMLConfigLogIntegrationTest extends Log4j2BaseIntegrationTest { @BeforeClass public static void setUp() { diff --git a/logging-modules/logback/src/test/java/com/baeldung/logback/JSONLayoutTest.java b/logging-modules/logback/src/test/java/com/baeldung/logback/JSONLayoutIntegrationTest.java similarity index 96% rename from logging-modules/logback/src/test/java/com/baeldung/logback/JSONLayoutTest.java rename to logging-modules/logback/src/test/java/com/baeldung/logback/JSONLayoutIntegrationTest.java index ca3c4b3457..06962c1ea1 100644 --- a/logging-modules/logback/src/test/java/com/baeldung/logback/JSONLayoutTest.java +++ b/logging-modules/logback/src/test/java/com/baeldung/logback/JSONLayoutIntegrationTest.java @@ -13,7 +13,7 @@ import org.slf4j.LoggerFactory; import com.fasterxml.jackson.databind.ObjectMapper; -public class JSONLayoutTest { +public class JSONLayoutIntegrationTest { private static Logger logger; private ByteArrayOutputStream consoleOutput = new ByteArrayOutputStream(); diff --git a/logging-modules/logback/src/test/java/com/baeldung/logback/LogbackTests.java b/logging-modules/logback/src/test/java/com/baeldung/logback/LogbackIntegrationTest.java similarity index 96% rename from logging-modules/logback/src/test/java/com/baeldung/logback/LogbackTests.java rename to logging-modules/logback/src/test/java/com/baeldung/logback/LogbackIntegrationTest.java index 85201965dc..2f4553df41 100644 --- a/logging-modules/logback/src/test/java/com/baeldung/logback/LogbackTests.java +++ b/logging-modules/logback/src/test/java/com/baeldung/logback/LogbackIntegrationTest.java @@ -6,7 +6,7 @@ import org.junit.Test; import ch.qos.logback.classic.Logger; import org.slf4j.LoggerFactory; -public class LogbackTests { +public class LogbackIntegrationTest { @Test public void givenLogHierarchy_MessagesFiltered() { @@ -51,7 +51,7 @@ public class LogbackTests { @Test public void givenParameters_ValuesLogged() { - Logger logger = (ch.qos.logback.classic.Logger) LoggerFactory.getLogger(LogbackTests.class); + Logger logger = (ch.qos.logback.classic.Logger) LoggerFactory.getLogger(LogbackIntegrationTest.class); String message = "This is a String"; Integer zero = 0; diff --git a/logging-modules/logback/src/test/java/com/baeldung/logback/MapAppenderTest.java b/logging-modules/logback/src/test/java/com/baeldung/logback/MapAppenderUnitTest.java similarity index 98% rename from logging-modules/logback/src/test/java/com/baeldung/logback/MapAppenderTest.java rename to logging-modules/logback/src/test/java/com/baeldung/logback/MapAppenderUnitTest.java index a5a938a923..742b219a27 100644 --- a/logging-modules/logback/src/test/java/com/baeldung/logback/MapAppenderTest.java +++ b/logging-modules/logback/src/test/java/com/baeldung/logback/MapAppenderUnitTest.java @@ -11,7 +11,7 @@ import org.junit.Test; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; -public class MapAppenderTest { +public class MapAppenderUnitTest { private LoggerContext ctx; diff --git a/lucene/src/test/java/com/baeldung/lucene/LuceneFileSearchTest.java b/lucene/src/test/java/com/baeldung/lucene/LuceneFileSearchIntegrationTest.java similarity index 95% rename from lucene/src/test/java/com/baeldung/lucene/LuceneFileSearchTest.java rename to lucene/src/test/java/com/baeldung/lucene/LuceneFileSearchIntegrationTest.java index 4345057ff7..7d9bfb9cf5 100644 --- a/lucene/src/test/java/com/baeldung/lucene/LuceneFileSearchTest.java +++ b/lucene/src/test/java/com/baeldung/lucene/LuceneFileSearchIntegrationTest.java @@ -12,7 +12,7 @@ import org.apache.lucene.store.FSDirectory; import org.junit.Assert; import org.junit.Test; -public class LuceneFileSearchTest { +public class LuceneFileSearchIntegrationTest { @Test public void givenSearchQueryWhenFetchedFileNamehenCorrect() throws IOException, URISyntaxException { diff --git a/lucene/src/test/java/com/baeldung/lucene/LuceneInMemorySearchTest.java b/lucene/src/test/java/com/baeldung/lucene/LuceneInMemorySearchIntegrationTest.java similarity index 99% rename from lucene/src/test/java/com/baeldung/lucene/LuceneInMemorySearchTest.java rename to lucene/src/test/java/com/baeldung/lucene/LuceneInMemorySearchIntegrationTest.java index acf688cb99..27893762fd 100644 --- a/lucene/src/test/java/com/baeldung/lucene/LuceneInMemorySearchTest.java +++ b/lucene/src/test/java/com/baeldung/lucene/LuceneInMemorySearchIntegrationTest.java @@ -20,7 +20,7 @@ import org.apache.lucene.util.BytesRef; import org.junit.Assert; import org.junit.Test; -public class LuceneInMemorySearchTest { +public class LuceneInMemorySearchIntegrationTest { @Test public void givenSearchQueryWhenFetchedDocumentThenCorrect() { diff --git a/maven/src/test/java/com/baeldung/maven/plugins/DataTest.java b/maven/src/test/java/com/baeldung/maven/plugins/DataUnitTest.java similarity index 90% rename from maven/src/test/java/com/baeldung/maven/plugins/DataTest.java rename to maven/src/test/java/com/baeldung/maven/plugins/DataUnitTest.java index 3f03b6f5d6..197f977fec 100644 --- a/maven/src/test/java/com/baeldung/maven/plugins/DataTest.java +++ b/maven/src/test/java/com/baeldung/maven/plugins/DataUnitTest.java @@ -6,7 +6,7 @@ import org.junit.Test; import com.baeldung.maven.plugins.Data; -public class DataTest { +public class DataUnitTest { @Test public void whenDataObjectIsNotCreated_thenItIsNull() { Data data = null; diff --git a/metrics/src/test/java/com/baeldung/metrics/micrometer/MicrometerAtlasTest.java b/metrics/src/test/java/com/baeldung/metrics/micrometer/MicrometerAtlasIntegrationTest.java similarity index 99% rename from metrics/src/test/java/com/baeldung/metrics/micrometer/MicrometerAtlasTest.java rename to metrics/src/test/java/com/baeldung/metrics/micrometer/MicrometerAtlasIntegrationTest.java index b76dc40ba0..e7f3d7ec72 100644 --- a/metrics/src/test/java/com/baeldung/metrics/micrometer/MicrometerAtlasTest.java +++ b/metrics/src/test/java/com/baeldung/metrics/micrometer/MicrometerAtlasIntegrationTest.java @@ -39,7 +39,7 @@ import com.netflix.spectator.atlas.AtlasConfig; /** * @author aiet */ -public class MicrometerAtlasTest { +public class MicrometerAtlasIntegrationTest { private AtlasConfig atlasConfig; diff --git a/orientdb/src/test/java/com/baeldung/orientdb/OrientDBDocumentAPITest.java b/orientdb/src/test/java/com/baeldung/orientdb/OrientDBDocumentAPILiveTest.java similarity index 97% rename from orientdb/src/test/java/com/baeldung/orientdb/OrientDBDocumentAPITest.java rename to orientdb/src/test/java/com/baeldung/orientdb/OrientDBDocumentAPILiveTest.java index c51ff6928f..be79394292 100644 --- a/orientdb/src/test/java/com/baeldung/orientdb/OrientDBDocumentAPITest.java +++ b/orientdb/src/test/java/com/baeldung/orientdb/OrientDBDocumentAPILiveTest.java @@ -11,7 +11,7 @@ import java.util.List; import static junit.framework.Assert.assertEquals; -public class OrientDBDocumentAPITest { +public class OrientDBDocumentAPILiveTest { private static ODatabaseDocumentTx db = null; // @BeforeClass diff --git a/orientdb/src/test/java/com/baeldung/orientdb/OrientDBGraphAPITest.java b/orientdb/src/test/java/com/baeldung/orientdb/OrientDBGraphAPILiveTest.java similarity index 98% rename from orientdb/src/test/java/com/baeldung/orientdb/OrientDBGraphAPITest.java rename to orientdb/src/test/java/com/baeldung/orientdb/OrientDBGraphAPILiveTest.java index fe16564755..69926e5ed6 100644 --- a/orientdb/src/test/java/com/baeldung/orientdb/OrientDBGraphAPITest.java +++ b/orientdb/src/test/java/com/baeldung/orientdb/OrientDBGraphAPILiveTest.java @@ -10,7 +10,7 @@ import org.junit.Test; import static junit.framework.Assert.assertEquals; -public class OrientDBGraphAPITest { +public class OrientDBGraphAPILiveTest { private static OrientGraphNoTx graph = null; // @BeforeClass diff --git a/orientdb/src/test/java/com/baeldung/orientdb/OrientDBObjectAPITest.java b/orientdb/src/test/java/com/baeldung/orientdb/OrientDBObjectAPILiveTest.java similarity index 97% rename from orientdb/src/test/java/com/baeldung/orientdb/OrientDBObjectAPITest.java rename to orientdb/src/test/java/com/baeldung/orientdb/OrientDBObjectAPILiveTest.java index 71be159107..61dad39050 100644 --- a/orientdb/src/test/java/com/baeldung/orientdb/OrientDBObjectAPITest.java +++ b/orientdb/src/test/java/com/baeldung/orientdb/OrientDBObjectAPILiveTest.java @@ -10,7 +10,7 @@ import java.util.List; import static junit.framework.Assert.assertEquals; -public class OrientDBObjectAPITest { +public class OrientDBObjectAPILiveTest { private static OObjectDatabaseTx db = null; // @BeforeClass diff --git a/patterns/design-patterns/src/test/java/com/baeldung/chainofresponsibility/ChainOfResponsibilityTest.java b/patterns/design-patterns/src/test/java/com/baeldung/chainofresponsibility/ChainOfResponsibilityIntegrationTest.java similarity index 69% rename from patterns/design-patterns/src/test/java/com/baeldung/chainofresponsibility/ChainOfResponsibilityTest.java rename to patterns/design-patterns/src/test/java/com/baeldung/chainofresponsibility/ChainOfResponsibilityIntegrationTest.java index a84f9dd8e5..824b104f81 100644 --- a/patterns/design-patterns/src/test/java/com/baeldung/chainofresponsibility/ChainOfResponsibilityTest.java +++ b/patterns/design-patterns/src/test/java/com/baeldung/chainofresponsibility/ChainOfResponsibilityIntegrationTest.java @@ -1,10 +1,15 @@ -package com.baeldung.pattern.chainofresponsibility; +package com.baeldung.chainofresponsibility; import org.junit.Test; - +import com.baeldung.pattern.chainofresponsibility.AuthenticationProcessor; +import com.baeldung.pattern.chainofresponsibility.OAuthAuthenticationProcessor; +import com.baeldung.pattern.chainofresponsibility.OAuthTokenProvider; +import com.baeldung.pattern.chainofresponsibility.UsernamePasswordProvider; +import com.baeldung.pattern.chainofresponsibility.SamlAuthenticationProvider; +import com.baeldung.pattern.chainofresponsibility.UsernamePasswordAuthenticationProcessor; import static org.junit.Assert.assertTrue; -public class ChainOfResponsibilityTest { +public class ChainOfResponsibilityIntegrationTest { private static AuthenticationProcessor getChainOfAuthProcessor() { diff --git a/patterns/design-patterns/src/test/java/com/baeldung/facade/CarEngineFacadeTest.java b/patterns/design-patterns/src/test/java/com/baeldung/facade/CarEngineFacadeIntegrationTest.java similarity index 98% rename from patterns/design-patterns/src/test/java/com/baeldung/facade/CarEngineFacadeTest.java rename to patterns/design-patterns/src/test/java/com/baeldung/facade/CarEngineFacadeIntegrationTest.java index 88c5d3c9bc..ab4c0717d9 100644 --- a/patterns/design-patterns/src/test/java/com/baeldung/facade/CarEngineFacadeTest.java +++ b/patterns/design-patterns/src/test/java/com/baeldung/facade/CarEngineFacadeIntegrationTest.java @@ -13,7 +13,7 @@ import java.util.List; import static org.junit.Assert.*; -public class CarEngineFacadeTest { +public class CarEngineFacadeIntegrationTest { private InMemoryCustomTestAppender appender; diff --git a/patterns/design-patterns/src/test/java/com/baeldung/templatemethod/test/TemplateMethodPatternTest.java b/patterns/design-patterns/src/test/java/com/baeldung/templatemethod/test/TemplateMethodPatternIntegrationTest.java similarity index 97% rename from patterns/design-patterns/src/test/java/com/baeldung/templatemethod/test/TemplateMethodPatternTest.java rename to patterns/design-patterns/src/test/java/com/baeldung/templatemethod/test/TemplateMethodPatternIntegrationTest.java index 679559af9f..4ad4debb27 100644 --- a/patterns/design-patterns/src/test/java/com/baeldung/templatemethod/test/TemplateMethodPatternTest.java +++ b/patterns/design-patterns/src/test/java/com/baeldung/templatemethod/test/TemplateMethodPatternIntegrationTest.java @@ -1,4 +1,4 @@ -package com.baeldung.pattern.templatemethod.test; +package com.baeldung.templatemethod.test; import com.baeldung.pattern.templatemethod.model.Computer; import com.baeldung.pattern.templatemethod.model.HighEndComputerBuilder; @@ -10,7 +10,7 @@ import org.junit.Test; import static org.hamcrest.CoreMatchers.instanceOf; import static org.junit.Assert.assertThat; -public class TemplateMethodPatternTest { +public class TemplateMethodPatternIntegrationTest { private static StandardComputerBuilder standardComputerBuilder; private static HighEndComputerBuilder highEndComputerBuilder; diff --git a/persistence-modules/java-jdbi/src/test/java/com/baeldung/persistence/jdbi/JdbiTest.java b/persistence-modules/java-jdbi/src/test/java/com/baeldung/persistence/jdbi/JdbiIntegrationTest.java similarity index 99% rename from persistence-modules/java-jdbi/src/test/java/com/baeldung/persistence/jdbi/JdbiTest.java rename to persistence-modules/java-jdbi/src/test/java/com/baeldung/persistence/jdbi/JdbiIntegrationTest.java index 503bf90fdb..dbc8a396ce 100644 --- a/persistence-modules/java-jdbi/src/test/java/com/baeldung/persistence/jdbi/JdbiTest.java +++ b/persistence-modules/java-jdbi/src/test/java/com/baeldung/persistence/jdbi/JdbiIntegrationTest.java @@ -17,7 +17,7 @@ import java.util.stream.Stream; import static org.junit.Assert.*; -public class JdbiTest { +public class JdbiIntegrationTest { @Test public void whenJdbiCreated_thenSuccess() { diff --git a/reactor-core/src/test/java/com/baeldung/reactor/core/CombiningPublishersTest.java b/reactor-core/src/test/java/com/baeldung/reactor/core/CombiningPublishersIntegrationTest.java similarity index 98% rename from reactor-core/src/test/java/com/baeldung/reactor/core/CombiningPublishersTest.java rename to reactor-core/src/test/java/com/baeldung/reactor/core/CombiningPublishersIntegrationTest.java index 5a0dcef5ba..e6108759e1 100644 --- a/reactor-core/src/test/java/com/baeldung/reactor/core/CombiningPublishersTest.java +++ b/reactor-core/src/test/java/com/baeldung/reactor/core/CombiningPublishersIntegrationTest.java @@ -7,7 +7,7 @@ import org.junit.Test; import reactor.core.publisher.Flux; import reactor.test.StepVerifier; -public class CombiningPublishersTest { +public class CombiningPublishersIntegrationTest { private static Integer min = 1; private static Integer max = 5; diff --git a/rxjava/src/test/java/com/baeldung/rxjava/ConnectableObservableTest.java b/rxjava/src/test/java/com/baeldung/rxjava/ConnectableObservableIntegrationTest.java similarity index 93% rename from rxjava/src/test/java/com/baeldung/rxjava/ConnectableObservableTest.java rename to rxjava/src/test/java/com/baeldung/rxjava/ConnectableObservableIntegrationTest.java index 031ff0c5bb..5c28c53d11 100644 --- a/rxjava/src/test/java/com/baeldung/rxjava/ConnectableObservableTest.java +++ b/rxjava/src/test/java/com/baeldung/rxjava/ConnectableObservableIntegrationTest.java @@ -10,7 +10,7 @@ import static com.jayway.awaitility.Awaitility.await; import static junit.framework.Assert.assertFalse; import static junit.framework.Assert.assertTrue; -public class ConnectableObservableTest { +public class ConnectableObservableIntegrationTest { @Test public void givenConnectableObservable_whenConnect_thenGetMessage() throws InterruptedException { diff --git a/rxjava/src/test/java/com/baeldung/rxjava/FlowableTest.java b/rxjava/src/test/java/com/baeldung/rxjava/FlowableIntegrationTest.java similarity index 99% rename from rxjava/src/test/java/com/baeldung/rxjava/FlowableTest.java rename to rxjava/src/test/java/com/baeldung/rxjava/FlowableIntegrationTest.java index b9d1d64c24..9fee2bc005 100644 --- a/rxjava/src/test/java/com/baeldung/rxjava/FlowableTest.java +++ b/rxjava/src/test/java/com/baeldung/rxjava/FlowableIntegrationTest.java @@ -18,7 +18,7 @@ import static org.assertj.core.api.Assertions.assertThat; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; -public class FlowableTest { +public class FlowableIntegrationTest { @Test public void whenFlowableIsCreated_thenItIsProperlyInitialized() { Flowable integerFlowable = Flowable.just(1, 2, 3, 4); diff --git a/rxjava/src/test/java/com/baeldung/rxjava/MaybeTest.java b/rxjava/src/test/java/com/baeldung/rxjava/MaybeUnitTest.java similarity index 97% rename from rxjava/src/test/java/com/baeldung/rxjava/MaybeTest.java rename to rxjava/src/test/java/com/baeldung/rxjava/MaybeUnitTest.java index 501ee1f196..d02fe990c0 100644 --- a/rxjava/src/test/java/com/baeldung/rxjava/MaybeTest.java +++ b/rxjava/src/test/java/com/baeldung/rxjava/MaybeUnitTest.java @@ -5,7 +5,7 @@ import org.junit.Test; import io.reactivex.Flowable; import io.reactivex.Maybe; -public class MaybeTest { +public class MaybeUnitTest { @Test public void whenEmitsSingleValue_thenItIsObserved() { Maybe maybe = Flowable.just(1, 2, 3, 4, 5) diff --git a/rxjava/src/test/java/com/baeldung/rxjava/ObservableTest.java b/rxjava/src/test/java/com/baeldung/rxjava/ObservableUnitTest.java similarity index 99% rename from rxjava/src/test/java/com/baeldung/rxjava/ObservableTest.java rename to rxjava/src/test/java/com/baeldung/rxjava/ObservableUnitTest.java index beb2cbeed3..22e52f73c4 100644 --- a/rxjava/src/test/java/com/baeldung/rxjava/ObservableTest.java +++ b/rxjava/src/test/java/com/baeldung/rxjava/ObservableUnitTest.java @@ -6,7 +6,7 @@ import rx.Observable; import static com.baeldung.rxjava.ObservableImpl.getTitle; import static junit.framework.Assert.assertTrue; -public class ObservableTest { +public class ObservableUnitTest { private String result = ""; diff --git a/rxjava/src/test/java/com/baeldung/rxjava/ResourceManagementTest.java b/rxjava/src/test/java/com/baeldung/rxjava/ResourceManagementUnitTest.java similarity index 94% rename from rxjava/src/test/java/com/baeldung/rxjava/ResourceManagementTest.java rename to rxjava/src/test/java/com/baeldung/rxjava/ResourceManagementUnitTest.java index 81be84fd0d..145194d374 100644 --- a/rxjava/src/test/java/com/baeldung/rxjava/ResourceManagementTest.java +++ b/rxjava/src/test/java/com/baeldung/rxjava/ResourceManagementUnitTest.java @@ -5,7 +5,7 @@ import rx.Observable; import static junit.framework.Assert.assertTrue; -public class ResourceManagementTest { +public class ResourceManagementUnitTest { @Test public void givenResource_whenUsingOberservable_thenCreatePrintDisposeResource() throws InterruptedException { diff --git a/rxjava/src/test/java/com/baeldung/rxjava/RxRelayTest.java b/rxjava/src/test/java/com/baeldung/rxjava/RxRelayIntegrationTest.java similarity index 99% rename from rxjava/src/test/java/com/baeldung/rxjava/RxRelayTest.java rename to rxjava/src/test/java/com/baeldung/rxjava/RxRelayIntegrationTest.java index 091e4df138..9fc5827d86 100644 --- a/rxjava/src/test/java/com/baeldung/rxjava/RxRelayTest.java +++ b/rxjava/src/test/java/com/baeldung/rxjava/RxRelayIntegrationTest.java @@ -9,7 +9,7 @@ import org.junit.Test; import java.util.concurrent.TimeUnit; -public class RxRelayTest { +public class RxRelayIntegrationTest { @Test public void whenObserverSubscribedToPublishRelay_thenItReceivesEmittedEvents () { diff --git a/rxjava/src/test/java/com/baeldung/rxjava/SingleTest.java b/rxjava/src/test/java/com/baeldung/rxjava/SingleUnitTest.java similarity index 95% rename from rxjava/src/test/java/com/baeldung/rxjava/SingleTest.java rename to rxjava/src/test/java/com/baeldung/rxjava/SingleUnitTest.java index 1352841ed9..8c39034cb9 100644 --- a/rxjava/src/test/java/com/baeldung/rxjava/SingleTest.java +++ b/rxjava/src/test/java/com/baeldung/rxjava/SingleUnitTest.java @@ -6,7 +6,7 @@ import rx.Single; import static junit.framework.Assert.assertTrue; -public class SingleTest { +public class SingleUnitTest { @Test public void givenSingleObservable_whenSuccess_thenGetMessage() throws InterruptedException { diff --git a/rxjava/src/test/java/com/baeldung/rxjava/SubjectTest.java b/rxjava/src/test/java/com/baeldung/rxjava/SubjectUnitTest.java similarity index 95% rename from rxjava/src/test/java/com/baeldung/rxjava/SubjectTest.java rename to rxjava/src/test/java/com/baeldung/rxjava/SubjectUnitTest.java index 628b1e5476..a678d83667 100644 --- a/rxjava/src/test/java/com/baeldung/rxjava/SubjectTest.java +++ b/rxjava/src/test/java/com/baeldung/rxjava/SubjectUnitTest.java @@ -5,7 +5,7 @@ import rx.subjects.PublishSubject; import static junit.framework.Assert.assertTrue; -public class SubjectTest { +public class SubjectUnitTest { @Test public void givenSubjectAndTwoSubscribers_whenSubscribeOnSubject_thenSubscriberBeginsToAdd() { diff --git a/rxjava/src/test/java/com/baeldung/rxjava/UtilityOperatorsTest.java b/rxjava/src/test/java/com/baeldung/rxjava/UtilityOperatorsIntegrationTest.java similarity index 99% rename from rxjava/src/test/java/com/baeldung/rxjava/UtilityOperatorsTest.java rename to rxjava/src/test/java/com/baeldung/rxjava/UtilityOperatorsIntegrationTest.java index 0b38f0387b..a11d0ff8c3 100644 --- a/rxjava/src/test/java/com/baeldung/rxjava/UtilityOperatorsTest.java +++ b/rxjava/src/test/java/com/baeldung/rxjava/UtilityOperatorsIntegrationTest.java @@ -14,7 +14,7 @@ import java.util.concurrent.TimeUnit; import static com.jayway.awaitility.Awaitility.await; import static org.junit.Assert.assertTrue; -public class UtilityOperatorsTest { +public class UtilityOperatorsIntegrationTest { private int emittedTotal = 0; private int receivedTotal = 0; diff --git a/rxjava/src/test/java/com/baeldung/rxjava/filters/RxJavaFilterOperatorsTest.java b/rxjava/src/test/java/com/baeldung/rxjava/filters/RxJavaFilterOperatorsIntegrationTest.java similarity index 99% rename from rxjava/src/test/java/com/baeldung/rxjava/filters/RxJavaFilterOperatorsTest.java rename to rxjava/src/test/java/com/baeldung/rxjava/filters/RxJavaFilterOperatorsIntegrationTest.java index be0f390b67..67f4c51cbe 100644 --- a/rxjava/src/test/java/com/baeldung/rxjava/filters/RxJavaFilterOperatorsTest.java +++ b/rxjava/src/test/java/com/baeldung/rxjava/filters/RxJavaFilterOperatorsIntegrationTest.java @@ -5,7 +5,7 @@ import org.junit.Test; import rx.Observable; import rx.observers.TestSubscriber; -public class RxJavaFilterOperatorsTest { +public class RxJavaFilterOperatorsIntegrationTest { @Test public void givenRangeObservable_whenFilteringItems_thenOddItemsAreFiltered() { diff --git a/rxjava/src/test/java/com/baeldung/rxjava/filters/RxJavaSkipOperatorsTest.java b/rxjava/src/test/java/com/baeldung/rxjava/filters/RxJavaSkipOperatorsIntegrationTest.java similarity index 98% rename from rxjava/src/test/java/com/baeldung/rxjava/filters/RxJavaSkipOperatorsTest.java rename to rxjava/src/test/java/com/baeldung/rxjava/filters/RxJavaSkipOperatorsIntegrationTest.java index eca39b17bf..eca65e728e 100644 --- a/rxjava/src/test/java/com/baeldung/rxjava/filters/RxJavaSkipOperatorsTest.java +++ b/rxjava/src/test/java/com/baeldung/rxjava/filters/RxJavaSkipOperatorsIntegrationTest.java @@ -5,7 +5,7 @@ import org.junit.Test; import rx.Observable; import rx.observers.TestSubscriber; -public class RxJavaSkipOperatorsTest { +public class RxJavaSkipOperatorsIntegrationTest { @Test public void givenRangeObservable_whenSkipping_thenFirstFourItemsAreSkipped() { diff --git a/rxjava/src/test/java/com/baeldung/rxjava/filters/RxJavaTimeFilteringOperatorsTest.java b/rxjava/src/test/java/com/baeldung/rxjava/filters/RxJavaTimeFilteringOperatorsIntegrationTest.java similarity index 99% rename from rxjava/src/test/java/com/baeldung/rxjava/filters/RxJavaTimeFilteringOperatorsTest.java rename to rxjava/src/test/java/com/baeldung/rxjava/filters/RxJavaTimeFilteringOperatorsIntegrationTest.java index 63076cbc4a..d9ec6c3798 100644 --- a/rxjava/src/test/java/com/baeldung/rxjava/filters/RxJavaTimeFilteringOperatorsTest.java +++ b/rxjava/src/test/java/com/baeldung/rxjava/filters/RxJavaTimeFilteringOperatorsIntegrationTest.java @@ -9,7 +9,7 @@ import rx.Observable; import rx.observers.TestSubscriber; import rx.schedulers.TestScheduler; -public class RxJavaTimeFilteringOperatorsTest { +public class RxJavaTimeFilteringOperatorsIntegrationTest { @Test public void givenTimedObservable_whenSampling_thenOnlySampleItemsAreEmitted() { diff --git a/rxjava/src/test/java/com/baeldung/rxjava/onerror/ExceptionHandlingTest.java b/rxjava/src/test/java/com/baeldung/rxjava/onerror/ExceptionHandlingIntegrationTest.java similarity index 98% rename from rxjava/src/test/java/com/baeldung/rxjava/onerror/ExceptionHandlingTest.java rename to rxjava/src/test/java/com/baeldung/rxjava/onerror/ExceptionHandlingIntegrationTest.java index b1d711ab39..304dc98274 100644 --- a/rxjava/src/test/java/com/baeldung/rxjava/onerror/ExceptionHandlingTest.java +++ b/rxjava/src/test/java/com/baeldung/rxjava/onerror/ExceptionHandlingIntegrationTest.java @@ -9,7 +9,7 @@ import java.util.concurrent.atomic.AtomicBoolean; import static org.junit.Assert.assertTrue; -public class ExceptionHandlingTest { +public class ExceptionHandlingIntegrationTest { private Error UNKNOWN_ERROR = new Error("unknown error"); private Exception UNKNOWN_EXCEPTION = new Exception("unknown exception"); diff --git a/rxjava/src/test/java/com/baeldung/rxjava/onerror/OnErrorRetryTest.java b/rxjava/src/test/java/com/baeldung/rxjava/onerror/OnErrorRetryIntegrationTest.java similarity index 99% rename from rxjava/src/test/java/com/baeldung/rxjava/onerror/OnErrorRetryTest.java rename to rxjava/src/test/java/com/baeldung/rxjava/onerror/OnErrorRetryIntegrationTest.java index 3cc72056ba..746e3cfbf6 100644 --- a/rxjava/src/test/java/com/baeldung/rxjava/onerror/OnErrorRetryTest.java +++ b/rxjava/src/test/java/com/baeldung/rxjava/onerror/OnErrorRetryIntegrationTest.java @@ -9,7 +9,7 @@ import java.util.concurrent.atomic.AtomicInteger; import static org.junit.Assert.assertTrue; -public class OnErrorRetryTest { +public class OnErrorRetryIntegrationTest { private Error UNKNOWN_ERROR = new Error("unknown error"); diff --git a/rxjava/src/test/java/com/baeldung/rxjava/operators/RxAggregateOperatorsTest.java b/rxjava/src/test/java/com/baeldung/rxjava/operators/RxAggregateOperatorsUnitTest.java similarity index 99% rename from rxjava/src/test/java/com/baeldung/rxjava/operators/RxAggregateOperatorsTest.java rename to rxjava/src/test/java/com/baeldung/rxjava/operators/RxAggregateOperatorsUnitTest.java index 6733aa08c5..f0d7a9a4e4 100644 --- a/rxjava/src/test/java/com/baeldung/rxjava/operators/RxAggregateOperatorsTest.java +++ b/rxjava/src/test/java/com/baeldung/rxjava/operators/RxAggregateOperatorsUnitTest.java @@ -11,7 +11,7 @@ import java.util.HashSet; import java.util.List; import java.util.Map; -public class RxAggregateOperatorsTest { +public class RxAggregateOperatorsUnitTest { @Test public void givenTwoObservable_whenConcatenatingThem_thenSuccessfull() { diff --git a/rxjava/src/test/java/com/baeldung/rxjava/operators/RxMathematicalOperatorsTest.java b/rxjava/src/test/java/com/baeldung/rxjava/operators/RxMathematicalOperatorsUnitTest.java similarity index 98% rename from rxjava/src/test/java/com/baeldung/rxjava/operators/RxMathematicalOperatorsTest.java rename to rxjava/src/test/java/com/baeldung/rxjava/operators/RxMathematicalOperatorsUnitTest.java index cd212a2e18..9390792737 100644 --- a/rxjava/src/test/java/com/baeldung/rxjava/operators/RxMathematicalOperatorsTest.java +++ b/rxjava/src/test/java/com/baeldung/rxjava/operators/RxMathematicalOperatorsUnitTest.java @@ -9,7 +9,7 @@ import java.util.Arrays; import java.util.Comparator; import java.util.List; -public class RxMathematicalOperatorsTest { +public class RxMathematicalOperatorsUnitTest { @Test public void givenRangeNumericObservable_whenCalculatingAverage_ThenSuccessfull() { diff --git a/rxjava/src/test/java/com/baeldung/rxjava/operators/RxStringOperatorsTest.java b/rxjava/src/test/java/com/baeldung/rxjava/operators/RxStringOperatorsUnitTest.java similarity index 99% rename from rxjava/src/test/java/com/baeldung/rxjava/operators/RxStringOperatorsTest.java rename to rxjava/src/test/java/com/baeldung/rxjava/operators/RxStringOperatorsUnitTest.java index 5e58b32d8b..1ffc9b3ca2 100644 --- a/rxjava/src/test/java/com/baeldung/rxjava/operators/RxStringOperatorsTest.java +++ b/rxjava/src/test/java/com/baeldung/rxjava/operators/RxStringOperatorsUnitTest.java @@ -12,7 +12,7 @@ import rx.observables.StringObservable; import rx.observers.TestSubscriber; -public class RxStringOperatorsTest +public class RxStringOperatorsUnitTest { @Test diff --git a/spring-aop/src/test/java/org/baeldung/aspectj/SecuredMethodTest.java b/spring-aop/src/test/java/org/baeldung/aspectj/SecuredMethodUnitTest.java similarity index 86% rename from spring-aop/src/test/java/org/baeldung/aspectj/SecuredMethodTest.java rename to spring-aop/src/test/java/org/baeldung/aspectj/SecuredMethodUnitTest.java index 7ecb2a3ee3..cbdb2db057 100644 --- a/spring-aop/src/test/java/org/baeldung/aspectj/SecuredMethodTest.java +++ b/spring-aop/src/test/java/org/baeldung/aspectj/SecuredMethodUnitTest.java @@ -2,7 +2,7 @@ package org.baeldung.aspectj; import org.junit.Test; -public class SecuredMethodTest { +public class SecuredMethodUnitTest { @Test public void testMethod() throws Exception { SecuredMethod service = new SecuredMethod(); diff --git a/spring-aop/src/test/java/org/baeldung/logger/CalculatorTest.java b/spring-aop/src/test/java/org/baeldung/logger/CalculatorIntegrationTest.java similarity index 92% rename from spring-aop/src/test/java/org/baeldung/logger/CalculatorTest.java rename to spring-aop/src/test/java/org/baeldung/logger/CalculatorIntegrationTest.java index b1c88c67df..8c31b7f892 100644 --- a/spring-aop/src/test/java/org/baeldung/logger/CalculatorTest.java +++ b/spring-aop/src/test/java/org/baeldung/logger/CalculatorIntegrationTest.java @@ -9,7 +9,7 @@ import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(value = {"classpath:springAop-applicationContext.xml"}) -public class CalculatorTest { +public class CalculatorIntegrationTest { @Autowired private SampleAdder sampleAdder; diff --git a/spring-batch/src/test/java/org/baeldung/taskletsvschunks/chunks/ChunksTest.java b/spring-batch/src/test/java/org/baeldung/taskletsvschunks/chunks/ChunksIntegrationTest.java similarity index 96% rename from spring-batch/src/test/java/org/baeldung/taskletsvschunks/chunks/ChunksTest.java rename to spring-batch/src/test/java/org/baeldung/taskletsvschunks/chunks/ChunksIntegrationTest.java index 2a71970637..eaf73e4a4a 100644 --- a/spring-batch/src/test/java/org/baeldung/taskletsvschunks/chunks/ChunksTest.java +++ b/spring-batch/src/test/java/org/baeldung/taskletsvschunks/chunks/ChunksIntegrationTest.java @@ -13,7 +13,7 @@ import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(classes = ChunksConfig.class) -public class ChunksTest { +public class ChunksIntegrationTest { @Autowired private JobLauncherTestUtils jobLauncherTestUtils; diff --git a/spring-batch/src/test/java/org/baeldung/taskletsvschunks/tasklets/TaskletsTest.java b/spring-batch/src/test/java/org/baeldung/taskletsvschunks/tasklets/TaskletsIntegrationTest.java similarity index 96% rename from spring-batch/src/test/java/org/baeldung/taskletsvschunks/tasklets/TaskletsTest.java rename to spring-batch/src/test/java/org/baeldung/taskletsvschunks/tasklets/TaskletsIntegrationTest.java index 20379b58fe..322b17bd55 100644 --- a/spring-batch/src/test/java/org/baeldung/taskletsvschunks/tasklets/TaskletsTest.java +++ b/spring-batch/src/test/java/org/baeldung/taskletsvschunks/tasklets/TaskletsIntegrationTest.java @@ -13,7 +13,7 @@ import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(classes = TaskletsConfig.class) -public class TaskletsTest { +public class TaskletsIntegrationTest { @Autowired private JobLauncherTestUtils jobLauncherTestUtils; diff --git a/spring-core/src/test/java/com/baeldung/dependencyinjectiontypes/DependencyInjectionTest.java b/spring-core/src/test/java/com/baeldung/dependencyinjectiontypes/DependencyInjectionIntegrationTest.java similarity index 96% rename from spring-core/src/test/java/com/baeldung/dependencyinjectiontypes/DependencyInjectionTest.java rename to spring-core/src/test/java/com/baeldung/dependencyinjectiontypes/DependencyInjectionIntegrationTest.java index 57c1927e58..faaadfcbc3 100644 --- a/spring-core/src/test/java/com/baeldung/dependencyinjectiontypes/DependencyInjectionTest.java +++ b/spring-core/src/test/java/com/baeldung/dependencyinjectiontypes/DependencyInjectionIntegrationTest.java @@ -6,7 +6,7 @@ import org.junit.Test; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; -public class DependencyInjectionTest { +public class DependencyInjectionIntegrationTest { @Test public void givenAutowiredAnnotation_WhenSetOnSetter_ThenDependencyValid() { diff --git a/spring-core/src/test/java/com/baeldung/di/spring/BeanInjectionTest.java b/spring-core/src/test/java/com/baeldung/di/spring/BeanInjectionIntegrationTest.java similarity index 92% rename from spring-core/src/test/java/com/baeldung/di/spring/BeanInjectionTest.java rename to spring-core/src/test/java/com/baeldung/di/spring/BeanInjectionIntegrationTest.java index 1660b99726..4bfb3c5de4 100644 --- a/spring-core/src/test/java/com/baeldung/di/spring/BeanInjectionTest.java +++ b/spring-core/src/test/java/com/baeldung/di/spring/BeanInjectionIntegrationTest.java @@ -6,7 +6,7 @@ import org.junit.Test; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; -public class BeanInjectionTest { +public class BeanInjectionIntegrationTest { private ApplicationContext applicationContext; diff --git a/spring-core/src/test/java/com/baeldung/methodinjections/StudentTest.java b/spring-core/src/test/java/com/baeldung/methodinjections/StudentIntegrationTest.java similarity index 97% rename from spring-core/src/test/java/com/baeldung/methodinjections/StudentTest.java rename to spring-core/src/test/java/com/baeldung/methodinjections/StudentIntegrationTest.java index 8c04ef472e..5d326a99dd 100644 --- a/spring-core/src/test/java/com/baeldung/methodinjections/StudentTest.java +++ b/spring-core/src/test/java/com/baeldung/methodinjections/StudentIntegrationTest.java @@ -5,7 +5,7 @@ import org.junit.Test; import org.springframework.context.annotation.AnnotationConfigApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; -public class StudentTest { +public class StudentIntegrationTest { @Test public void whenLookupMethodCalled_thenNewInstanceReturned() { diff --git a/spring-core/src/test/java/com/baeldung/scope/PrototypeBeanInjectionTest.java b/spring-core/src/test/java/com/baeldung/scope/PrototypeBeanInjectionIntegrationTest.java similarity index 98% rename from spring-core/src/test/java/com/baeldung/scope/PrototypeBeanInjectionTest.java rename to spring-core/src/test/java/com/baeldung/scope/PrototypeBeanInjectionIntegrationTest.java index 0c4c5d6069..1c05bb3e8e 100644 --- a/spring-core/src/test/java/com/baeldung/scope/PrototypeBeanInjectionTest.java +++ b/spring-core/src/test/java/com/baeldung/scope/PrototypeBeanInjectionIntegrationTest.java @@ -15,7 +15,7 @@ import org.springframework.test.context.support.AnnotationConfigContextLoader; @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(loader = AnnotationConfigContextLoader.class, classes = AppConfig.class) -public class PrototypeBeanInjectionTest { +public class PrototypeBeanInjectionIntegrationTest { @Test public void givenPrototypeInjection_WhenObjectFactory_ThenNewInstanceReturn() { diff --git a/spring-core/src/test/java/com/baeldung/streamutils/CopyStreamTest.java b/spring-core/src/test/java/com/baeldung/streamutils/CopyStreamIntegrationTest.java similarity index 99% rename from spring-core/src/test/java/com/baeldung/streamutils/CopyStreamTest.java rename to spring-core/src/test/java/com/baeldung/streamutils/CopyStreamIntegrationTest.java index 9fe2f00a77..7f4a026229 100644 --- a/spring-core/src/test/java/com/baeldung/streamutils/CopyStreamTest.java +++ b/spring-core/src/test/java/com/baeldung/streamutils/CopyStreamIntegrationTest.java @@ -16,7 +16,7 @@ import org.springframework.util.StreamUtils; import static com.baeldung.streamutils.CopyStream.getStringFromInputStream; -public class CopyStreamTest { +public class CopyStreamIntegrationTest { @Test public void whenCopyInputStreamToOutputStream_thenCorrect() throws IOException { diff --git a/spring-core/src/test/java/com/baeldung/value/ClassNotManagedBySpringTest.java b/spring-core/src/test/java/com/baeldung/value/ClassNotManagedBySpringIntegrationTest.java similarity index 95% rename from spring-core/src/test/java/com/baeldung/value/ClassNotManagedBySpringTest.java rename to spring-core/src/test/java/com/baeldung/value/ClassNotManagedBySpringIntegrationTest.java index d07d490642..689801bece 100644 --- a/spring-core/src/test/java/com/baeldung/value/ClassNotManagedBySpringTest.java +++ b/spring-core/src/test/java/com/baeldung/value/ClassNotManagedBySpringIntegrationTest.java @@ -10,7 +10,7 @@ import static junit.framework.TestCase.assertEquals; import static org.mockito.Mockito.when; @RunWith(SpringRunner.class) -public class ClassNotManagedBySpringTest { +public class ClassNotManagedBySpringIntegrationTest { @MockBean private InitializerBean initializerBean; diff --git a/spring-data-couchbase-2/src/test/java/org/baeldung/spring/data/couchbase2b/MultiBucketIntegationTest.java b/spring-data-couchbase-2/src/test/java/org/baeldung/spring/data/couchbase2b/MultiBucketIntegrationTest.java similarity index 92% rename from spring-data-couchbase-2/src/test/java/org/baeldung/spring/data/couchbase2b/MultiBucketIntegationTest.java rename to spring-data-couchbase-2/src/test/java/org/baeldung/spring/data/couchbase2b/MultiBucketIntegrationTest.java index cb671dc469..05ba58d616 100644 --- a/spring-data-couchbase-2/src/test/java/org/baeldung/spring/data/couchbase2b/MultiBucketIntegationTest.java +++ b/spring-data-couchbase-2/src/test/java/org/baeldung/spring/data/couchbase2b/MultiBucketIntegrationTest.java @@ -9,6 +9,6 @@ import org.springframework.test.context.support.DependencyInjectionTestExecution @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(classes = { MultiBucketCouchbaseConfig.class, MultiBucketIntegrationTestConfig.class }) @TestExecutionListeners(listeners = { DependencyInjectionTestExecutionListener.class }) -public abstract class MultiBucketIntegationTest { +public abstract class MultiBucketIntegrationTest { } diff --git a/spring-data-couchbase-2/src/test/java/org/baeldung/spring/data/couchbase2b/service/CampusServiceImplIntegrationTest.java b/spring-data-couchbase-2/src/test/java/org/baeldung/spring/data/couchbase2b/service/CampusServiceImplIntegrationTest.java index 71648cf59b..0996b252f1 100644 --- a/spring-data-couchbase-2/src/test/java/org/baeldung/spring/data/couchbase2b/service/CampusServiceImplIntegrationTest.java +++ b/spring-data-couchbase-2/src/test/java/org/baeldung/spring/data/couchbase2b/service/CampusServiceImplIntegrationTest.java @@ -10,7 +10,7 @@ import java.util.Set; import javax.annotation.PostConstruct; import org.baeldung.spring.data.couchbase.model.Campus; -import org.baeldung.spring.data.couchbase2b.MultiBucketIntegationTest; +import org.baeldung.spring.data.couchbase2b.MultiBucketIntegrationTest; import org.baeldung.spring.data.couchbase2b.repos.CampusRepository; import org.junit.Test; import org.springframework.beans.factory.annotation.Autowired; @@ -18,7 +18,7 @@ import org.springframework.data.geo.Distance; import org.springframework.data.geo.Metrics; import org.springframework.data.geo.Point; -public class CampusServiceImplIntegrationTest extends MultiBucketIntegationTest { +public class CampusServiceImplIntegrationTest extends MultiBucketIntegrationTest { @Autowired private CampusServiceImpl campusService; diff --git a/spring-data-couchbase-2/src/test/java/org/baeldung/spring/data/couchbase2b/service/PersonServiceImplIntegrationTest.java b/spring-data-couchbase-2/src/test/java/org/baeldung/spring/data/couchbase2b/service/PersonServiceImplIntegrationTest.java index 819798d536..45475e50f6 100644 --- a/spring-data-couchbase-2/src/test/java/org/baeldung/spring/data/couchbase2b/service/PersonServiceImplIntegrationTest.java +++ b/spring-data-couchbase-2/src/test/java/org/baeldung/spring/data/couchbase2b/service/PersonServiceImplIntegrationTest.java @@ -9,7 +9,7 @@ import java.util.List; import org.baeldung.spring.data.couchbase.model.Person; import org.baeldung.spring.data.couchbase2b.MultiBucketCouchbaseConfig; -import org.baeldung.spring.data.couchbase2b.MultiBucketIntegationTest; +import org.baeldung.spring.data.couchbase2b.MultiBucketIntegrationTest; import org.joda.time.DateTime; import org.junit.BeforeClass; import org.junit.Test; @@ -21,7 +21,7 @@ import com.couchbase.client.java.CouchbaseCluster; import com.couchbase.client.java.document.JsonDocument; import com.couchbase.client.java.document.json.JsonObject; -public class PersonServiceImplIntegrationTest extends MultiBucketIntegationTest { +public class PersonServiceImplIntegrationTest extends MultiBucketIntegrationTest { static final String typeField = "_class"; static final String john = "John"; diff --git a/spring-data-couchbase-2/src/test/java/org/baeldung/spring/data/couchbase2b/service/StudentServiceImplIntegrationTest.java b/spring-data-couchbase-2/src/test/java/org/baeldung/spring/data/couchbase2b/service/StudentServiceImplIntegrationTest.java index f37f11744d..e7c1eab92a 100644 --- a/spring-data-couchbase-2/src/test/java/org/baeldung/spring/data/couchbase2b/service/StudentServiceImplIntegrationTest.java +++ b/spring-data-couchbase-2/src/test/java/org/baeldung/spring/data/couchbase2b/service/StudentServiceImplIntegrationTest.java @@ -11,7 +11,7 @@ import javax.validation.ConstraintViolationException; import org.baeldung.spring.data.couchbase.model.Student; import org.baeldung.spring.data.couchbase2b.MultiBucketCouchbaseConfig; -import org.baeldung.spring.data.couchbase2b.MultiBucketIntegationTest; +import org.baeldung.spring.data.couchbase2b.MultiBucketIntegrationTest; import org.joda.time.DateTime; import org.junit.BeforeClass; import org.junit.Test; @@ -23,7 +23,7 @@ import com.couchbase.client.java.CouchbaseCluster; import com.couchbase.client.java.document.JsonDocument; import com.couchbase.client.java.document.json.JsonObject; -public class StudentServiceImplIntegrationTest extends MultiBucketIntegationTest { +public class StudentServiceImplIntegrationTest extends MultiBucketIntegrationTest { static final String typeField = "_class"; static final String joe = "Joe"; diff --git a/spring-ejb/ejb-beans/src/test/java/com/baeldung/singletonbean/CountryStateCacheBeanTest.java b/spring-ejb/ejb-beans/src/test/java/com/baeldung/singletonbean/CountryStateCacheBeanUnitTest.java similarity index 98% rename from spring-ejb/ejb-beans/src/test/java/com/baeldung/singletonbean/CountryStateCacheBeanTest.java rename to spring-ejb/ejb-beans/src/test/java/com/baeldung/singletonbean/CountryStateCacheBeanUnitTest.java index 2207431702..4cec01a4f7 100644 --- a/spring-ejb/ejb-beans/src/test/java/com/baeldung/singletonbean/CountryStateCacheBeanTest.java +++ b/spring-ejb/ejb-beans/src/test/java/com/baeldung/singletonbean/CountryStateCacheBeanUnitTest.java @@ -14,7 +14,7 @@ import org.junit.After; import org.junit.Before; import org.junit.Test; -public class CountryStateCacheBeanTest { +public class CountryStateCacheBeanUnitTest { private EJBContainer ejbContainer = null; diff --git a/spring-mvc-simple/src/test/java/com/baeldung/spring/servlets/HelloServletTest.java b/spring-mvc-simple/src/test/java/com/baeldung/spring/servlets/HelloServletIntegrationTest.java similarity index 95% rename from spring-mvc-simple/src/test/java/com/baeldung/spring/servlets/HelloServletTest.java rename to spring-mvc-simple/src/test/java/com/baeldung/spring/servlets/HelloServletIntegrationTest.java index e8dd8f1b73..46cc280875 100644 --- a/spring-mvc-simple/src/test/java/com/baeldung/spring/servlets/HelloServletTest.java +++ b/spring-mvc-simple/src/test/java/com/baeldung/spring/servlets/HelloServletIntegrationTest.java @@ -8,7 +8,7 @@ import java.io.IOException; import static org.junit.jupiter.api.Assertions.assertEquals; -public class HelloServletTest { +public class HelloServletIntegrationTest { @Test public void whenRequested_thenForwardToCorrectUrl() throws ServletException, IOException { MockHttpServletRequest request = new MockHttpServletRequest("GET", "/hello"); diff --git a/spring-mvc-simple/src/test/java/com/baeldung/spring/servlets/WelcomeServletTest.java b/spring-mvc-simple/src/test/java/com/baeldung/spring/servlets/WelcomeServletIntegrationTest.java similarity index 95% rename from spring-mvc-simple/src/test/java/com/baeldung/spring/servlets/WelcomeServletTest.java rename to spring-mvc-simple/src/test/java/com/baeldung/spring/servlets/WelcomeServletIntegrationTest.java index 9ec177a452..d942fdd8d6 100644 --- a/spring-mvc-simple/src/test/java/com/baeldung/spring/servlets/WelcomeServletTest.java +++ b/spring-mvc-simple/src/test/java/com/baeldung/spring/servlets/WelcomeServletIntegrationTest.java @@ -8,7 +8,7 @@ import java.io.IOException; import static org.junit.jupiter.api.Assertions.assertEquals; -public class WelcomeServletTest { +public class WelcomeServletIntegrationTest { @Test public void whenRequested_thenRedirectedToCorrectUrl() throws ServletException, IOException { MockHttpServletRequest request = new MockHttpServletRequest("GET", "/welcome"); diff --git a/spring-swagger-codegen/spring-swagger-codegen-api-client/src/test/java/com/baeldung/petstore/client/api/PetApiTest.java b/spring-swagger-codegen/spring-swagger-codegen-api-client/src/test/java/com/baeldung/petstore/client/api/PetApiLiveTest.java similarity index 99% rename from spring-swagger-codegen/spring-swagger-codegen-api-client/src/test/java/com/baeldung/petstore/client/api/PetApiTest.java rename to spring-swagger-codegen/spring-swagger-codegen-api-client/src/test/java/com/baeldung/petstore/client/api/PetApiLiveTest.java index 0b94027df0..42be6b950b 100644 --- a/spring-swagger-codegen/spring-swagger-codegen-api-client/src/test/java/com/baeldung/petstore/client/api/PetApiTest.java +++ b/spring-swagger-codegen/spring-swagger-codegen-api-client/src/test/java/com/baeldung/petstore/client/api/PetApiLiveTest.java @@ -28,7 +28,7 @@ import java.util.Map; * API tests for PetApi */ @Ignore -public class PetApiTest { +public class PetApiLiveTest { private final PetApi api = new PetApi(); diff --git a/spring-swagger-codegen/spring-swagger-codegen-api-client/src/test/java/com/baeldung/petstore/client/api/StoreApiTest.java b/spring-swagger-codegen/spring-swagger-codegen-api-client/src/test/java/com/baeldung/petstore/client/api/StoreApiLiveTest.java similarity index 98% rename from spring-swagger-codegen/spring-swagger-codegen-api-client/src/test/java/com/baeldung/petstore/client/api/StoreApiTest.java rename to spring-swagger-codegen/spring-swagger-codegen-api-client/src/test/java/com/baeldung/petstore/client/api/StoreApiLiveTest.java index ce332bee0d..be0cb8030d 100644 --- a/spring-swagger-codegen/spring-swagger-codegen-api-client/src/test/java/com/baeldung/petstore/client/api/StoreApiTest.java +++ b/spring-swagger-codegen/spring-swagger-codegen-api-client/src/test/java/com/baeldung/petstore/client/api/StoreApiLiveTest.java @@ -26,7 +26,7 @@ import java.util.Map; * API tests for StoreApi */ @Ignore -public class StoreApiTest { +public class StoreApiLiveTest { private final StoreApi api = new StoreApi(); diff --git a/spring-swagger-codegen/spring-swagger-codegen-api-client/src/test/java/com/baeldung/petstore/client/api/UserApiTest.java b/spring-swagger-codegen/spring-swagger-codegen-api-client/src/test/java/com/baeldung/petstore/client/api/UserApiLiveTest.java similarity index 99% rename from spring-swagger-codegen/spring-swagger-codegen-api-client/src/test/java/com/baeldung/petstore/client/api/UserApiTest.java rename to spring-swagger-codegen/spring-swagger-codegen-api-client/src/test/java/com/baeldung/petstore/client/api/UserApiLiveTest.java index 59e7a39679..5dae1430a0 100644 --- a/spring-swagger-codegen/spring-swagger-codegen-api-client/src/test/java/com/baeldung/petstore/client/api/UserApiTest.java +++ b/spring-swagger-codegen/spring-swagger-codegen-api-client/src/test/java/com/baeldung/petstore/client/api/UserApiLiveTest.java @@ -26,7 +26,7 @@ import java.util.Map; * API tests for UserApi */ @Ignore -public class UserApiTest { +public class UserApiLiveTest { private final UserApi api = new UserApi(); diff --git a/spring-thymeleaf/src/test/java/com/baeldung/thymeleaf/controller/FragmentsTest.java b/spring-thymeleaf/src/test/java/com/baeldung/thymeleaf/controller/FragmentsIntegrationTest.java similarity index 98% rename from spring-thymeleaf/src/test/java/com/baeldung/thymeleaf/controller/FragmentsTest.java rename to spring-thymeleaf/src/test/java/com/baeldung/thymeleaf/controller/FragmentsIntegrationTest.java index 93261b02df..5bc45d0004 100644 --- a/spring-thymeleaf/src/test/java/com/baeldung/thymeleaf/controller/FragmentsTest.java +++ b/spring-thymeleaf/src/test/java/com/baeldung/thymeleaf/controller/FragmentsIntegrationTest.java @@ -33,7 +33,7 @@ import static org.hamcrest.Matchers.containsString; @RunWith(SpringJUnit4ClassRunner.class) @WebAppConfiguration @ContextConfiguration(classes = { WebApp.class, WebMVCConfig.class, WebMVCSecurity.class, InitSecurity.class }) -public class FragmentsTest { +public class FragmentsIntegrationTest { @Autowired WebApplicationContext wac; diff --git a/testing-modules/junit-5/src/test/java/com/baeldung/EmployeesTest.java b/testing-modules/junit-5/src/test/java/com/baeldung/EmployeesUnitTest.java similarity index 93% rename from testing-modules/junit-5/src/test/java/com/baeldung/EmployeesTest.java rename to testing-modules/junit-5/src/test/java/com/baeldung/EmployeesUnitTest.java index 71bb52284b..1ea116be6d 100644 --- a/testing-modules/junit-5/src/test/java/com/baeldung/EmployeesTest.java +++ b/testing-modules/junit-5/src/test/java/com/baeldung/EmployeesUnitTest.java @@ -19,13 +19,13 @@ import static org.junit.jupiter.api.Assertions.*; @ExtendWith({ EnvironmentExtension.class, EmployeeDatabaseSetupExtension.class, EmployeeDaoParameterResolver.class }) @ExtendWith(LoggingExtension.class) @ExtendWith(IgnoreFileNotFoundExceptionExtension.class) -public class EmployeesTest { +public class EmployeesUnitTest { private EmployeeJdbcDao employeeDao; private Logger logger; - public EmployeesTest(EmployeeJdbcDao employeeDao) { + public EmployeesUnitTest(EmployeeJdbcDao employeeDao) { this.employeeDao = employeeDao; } diff --git a/testing-modules/junit-5/src/test/java/com/baeldung/GreetingsTest.java b/testing-modules/junit-5/src/test/java/com/baeldung/GreetingsUnitTest.java similarity index 92% rename from testing-modules/junit-5/src/test/java/com/baeldung/GreetingsTest.java rename to testing-modules/junit-5/src/test/java/com/baeldung/GreetingsUnitTest.java index efde4e7404..a07162ceed 100644 --- a/testing-modules/junit-5/src/test/java/com/baeldung/GreetingsTest.java +++ b/testing-modules/junit-5/src/test/java/com/baeldung/GreetingsUnitTest.java @@ -9,7 +9,7 @@ import org.junit.runner.RunWith; import com.baeldung.junit5.Greetings; @RunWith(JUnitPlatform.class) -public class GreetingsTest { +public class GreetingsUnitTest { @Test void whenCallingSayHello_thenReturnHello() { diff --git a/testing-modules/junit-5/src/test/java/com/baeldung/exception/ExceptionAssertionTest.java b/testing-modules/junit-5/src/test/java/com/baeldung/exception/ExceptionAssertionUnitTest.java similarity index 92% rename from testing-modules/junit-5/src/test/java/com/baeldung/exception/ExceptionAssertionTest.java rename to testing-modules/junit-5/src/test/java/com/baeldung/exception/ExceptionAssertionUnitTest.java index f97e2ba9c7..002aae34a8 100644 --- a/testing-modules/junit-5/src/test/java/com/baeldung/exception/ExceptionAssertionTest.java +++ b/testing-modules/junit-5/src/test/java/com/baeldung/exception/ExceptionAssertionUnitTest.java @@ -4,7 +4,7 @@ import static org.junit.jupiter.api.Assertions.assertThrows; import org.junit.jupiter.api.Test; -public class ExceptionAssertionTest { +public class ExceptionAssertionUnitTest { @Test public void whenExceptionThrown_thenAssertionSucceeds() { String test = null; diff --git a/testing-modules/junit-5/src/test/java/com/baeldung/junit5/spring/GreetingsSpringTest.java b/testing-modules/junit-5/src/test/java/com/baeldung/junit5/spring/GreetingsSpringUnitTest.java similarity index 93% rename from testing-modules/junit-5/src/test/java/com/baeldung/junit5/spring/GreetingsSpringTest.java rename to testing-modules/junit-5/src/test/java/com/baeldung/junit5/spring/GreetingsSpringUnitTest.java index 3b89508c88..317a0797ed 100644 --- a/testing-modules/junit-5/src/test/java/com/baeldung/junit5/spring/GreetingsSpringTest.java +++ b/testing-modules/junit-5/src/test/java/com/baeldung/junit5/spring/GreetingsSpringUnitTest.java @@ -11,7 +11,7 @@ import com.baeldung.junit5.Greetings; @ExtendWith(SpringExtension.class) @ContextConfiguration(classes = { SpringTestConfiguration.class }) -public class GreetingsSpringTest { +public class GreetingsSpringUnitTest { @Test void whenCallingSayHello_thenReturnHello() { diff --git a/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/AnnotationTestExampleTest.java b/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/AnnotationTestExampleUnitTest.java similarity index 74% rename from testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/AnnotationTestExampleTest.java rename to testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/AnnotationTestExampleUnitTest.java index fd7fd93d66..45671f200d 100644 --- a/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/AnnotationTestExampleTest.java +++ b/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/AnnotationTestExampleUnitTest.java @@ -5,10 +5,10 @@ import org.junit.Test; import org.junit.experimental.categories.Category; import com.baeldung.migration.junit4.categories.Annotations; -import com.baeldung.migration.junit4.categories.JUnit4Tests; +import com.baeldung.migration.junit4.categories.JUnit4UnitTest; -@Category(value = { Annotations.class, JUnit4Tests.class }) -public class AnnotationTestExampleTest { +@Category(value = { Annotations.class, JUnit4UnitTest.class }) +public class AnnotationTestExampleUnitTest { @Test(expected = Exception.class) public void shouldRaiseAnException() throws Exception { throw new Exception("This is my expected exception"); diff --git a/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/AssertionsExampleTest.java b/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/AssertionsExampleUnitTest.java similarity index 94% rename from testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/AssertionsExampleTest.java rename to testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/AssertionsExampleUnitTest.java index ff2a05a8c4..63446f583d 100644 --- a/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/AssertionsExampleTest.java +++ b/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/AssertionsExampleUnitTest.java @@ -8,7 +8,7 @@ import java.util.List; import org.junit.Ignore; import org.junit.Test; -public class AssertionsExampleTest { +public class AssertionsExampleUnitTest { @Test @Ignore public void shouldFailBecauseTheNumbersAreNotEqualld() { diff --git a/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/BeforeAndAfterAnnotationsTest.java b/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/BeforeAndAfterAnnotationsUnitTest.java similarity index 92% rename from testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/BeforeAndAfterAnnotationsTest.java rename to testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/BeforeAndAfterAnnotationsUnitTest.java index e26b10e7e5..aa3e46defb 100644 --- a/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/BeforeAndAfterAnnotationsTest.java +++ b/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/BeforeAndAfterAnnotationsUnitTest.java @@ -15,9 +15,9 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; @RunWith(JUnit4.class) -public class BeforeAndAfterAnnotationsTest { +public class BeforeAndAfterAnnotationsUnitTest { - private static final Logger LOG = LoggerFactory.getLogger(BeforeAndAfterAnnotationsTest.class); + private static final Logger LOG = LoggerFactory.getLogger(BeforeAndAfterAnnotationsUnitTest.class); private List list; diff --git a/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/BeforeClassAndAfterClassAnnotationsTest.java b/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/BeforeClassAndAfterClassAnnotationsUnitTest.java similarity index 87% rename from testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/BeforeClassAndAfterClassAnnotationsTest.java rename to testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/BeforeClassAndAfterClassAnnotationsUnitTest.java index 31717362ef..8a82a75d3d 100644 --- a/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/BeforeClassAndAfterClassAnnotationsTest.java +++ b/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/BeforeClassAndAfterClassAnnotationsUnitTest.java @@ -9,9 +9,9 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; @RunWith(JUnit4.class) -public class BeforeClassAndAfterClassAnnotationsTest { +public class BeforeClassAndAfterClassAnnotationsUnitTest { - private static final Logger LOG = LoggerFactory.getLogger(BeforeClassAndAfterClassAnnotationsTest.class); + private static final Logger LOG = LoggerFactory.getLogger(BeforeClassAndAfterClassAnnotationsUnitTest.class); @BeforeClass public static void setup() { diff --git a/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/ExceptionAssertionTest.java b/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/ExceptionAssertionUnitTest.java similarity index 93% rename from testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/ExceptionAssertionTest.java rename to testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/ExceptionAssertionUnitTest.java index 6cd2559f57..afe4af8c4a 100644 --- a/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/ExceptionAssertionTest.java +++ b/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/ExceptionAssertionUnitTest.java @@ -4,7 +4,7 @@ import org.junit.Rule; import org.junit.Test; import org.junit.rules.ExpectedException; -public class ExceptionAssertionTest { +public class ExceptionAssertionUnitTest { @Rule public ExpectedException exceptionRule = ExpectedException.none(); diff --git a/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/RuleExampleTest.java b/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/RuleExampleUnitTest.java similarity index 91% rename from testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/RuleExampleTest.java rename to testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/RuleExampleUnitTest.java index 10af6a9254..969d1b370e 100644 --- a/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/RuleExampleTest.java +++ b/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/RuleExampleUnitTest.java @@ -5,7 +5,7 @@ import org.junit.Test; import com.baeldung.migration.junit4.rules.TraceUnitTestRule; -public class RuleExampleTest { +public class RuleExampleUnitTest { @Rule public final TraceUnitTestRule traceRuleTests = new TraceUnitTestRule(); diff --git a/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/categories/JUnit4Tests.java b/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/categories/JUnit4UnitTest.java similarity index 61% rename from testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/categories/JUnit4Tests.java rename to testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/categories/JUnit4UnitTest.java index 6af63d58ab..dc5d4349f3 100644 --- a/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/categories/JUnit4Tests.java +++ b/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/categories/JUnit4UnitTest.java @@ -1,5 +1,5 @@ package com.baeldung.migration.junit4.categories; -public interface JUnit4Tests { +public interface JUnit4UnitTest { } diff --git a/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit5/AnnotationTestExampleTest.java b/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit5/AnnotationTestExampleUnitTest.java similarity index 94% rename from testing-modules/junit-5/src/test/java/com/baeldung/migration/junit5/AnnotationTestExampleTest.java rename to testing-modules/junit-5/src/test/java/com/baeldung/migration/junit5/AnnotationTestExampleUnitTest.java index 07d8ae64e4..c2bbfd4d07 100644 --- a/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit5/AnnotationTestExampleTest.java +++ b/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit5/AnnotationTestExampleUnitTest.java @@ -12,7 +12,7 @@ import org.junit.runner.RunWith; @Tag("annotations") @Tag("junit5") @RunWith(JUnitPlatform.class) -public class AnnotationTestExampleTest { +public class AnnotationTestExampleUnitTest { @Test public void shouldRaiseAnException() throws Exception { Assertions.assertThrows(Exception.class, () -> { diff --git a/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit5/AssertionsExampleTest.java b/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit5/AssertionsExampleUnitTest.java similarity index 96% rename from testing-modules/junit-5/src/test/java/com/baeldung/migration/junit5/AssertionsExampleTest.java rename to testing-modules/junit-5/src/test/java/com/baeldung/migration/junit5/AssertionsExampleUnitTest.java index 3cfe4c59f5..c35611aad1 100644 --- a/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit5/AssertionsExampleTest.java +++ b/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit5/AssertionsExampleUnitTest.java @@ -10,7 +10,7 @@ import org.junit.platform.runner.JUnitPlatform; import org.junit.runner.RunWith; @RunWith(JUnitPlatform.class) -public class AssertionsExampleTest { +public class AssertionsExampleUnitTest { @Test @Disabled public void shouldFailBecauseTheNumbersAreNotEqual() { diff --git a/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit5/BeforeAllAndAfterAllAnnotationsTest.java b/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit5/BeforeAllAndAfterAllAnnotationsUnitTest.java similarity index 88% rename from testing-modules/junit-5/src/test/java/com/baeldung/migration/junit5/BeforeAllAndAfterAllAnnotationsTest.java rename to testing-modules/junit-5/src/test/java/com/baeldung/migration/junit5/BeforeAllAndAfterAllAnnotationsUnitTest.java index 9af837dcb1..b81e9b7b8e 100644 --- a/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit5/BeforeAllAndAfterAllAnnotationsTest.java +++ b/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit5/BeforeAllAndAfterAllAnnotationsUnitTest.java @@ -9,9 +9,9 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; @RunWith(JUnitPlatform.class) -public class BeforeAllAndAfterAllAnnotationsTest { +public class BeforeAllAndAfterAllAnnotationsUnitTest { - private static final Logger LOG = LoggerFactory.getLogger(BeforeAllAndAfterAllAnnotationsTest.class); + private static final Logger LOG = LoggerFactory.getLogger(BeforeAllAndAfterAllAnnotationsUnitTest.class); @BeforeAll public static void setup() { diff --git a/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit5/BeforeEachAndAfterEachAnnotationsTest.java b/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit5/BeforeEachAndAfterEachAnnotationsUnitTest.java similarity index 91% rename from testing-modules/junit-5/src/test/java/com/baeldung/migration/junit5/BeforeEachAndAfterEachAnnotationsTest.java rename to testing-modules/junit-5/src/test/java/com/baeldung/migration/junit5/BeforeEachAndAfterEachAnnotationsUnitTest.java index 6302992a5b..be916d66ea 100644 --- a/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit5/BeforeEachAndAfterEachAnnotationsTest.java +++ b/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit5/BeforeEachAndAfterEachAnnotationsUnitTest.java @@ -15,9 +15,9 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; @RunWith(JUnitPlatform.class) -public class BeforeEachAndAfterEachAnnotationsTest { +public class BeforeEachAndAfterEachAnnotationsUnitTest { - private static final Logger LOG = LoggerFactory.getLogger(BeforeEachAndAfterEachAnnotationsTest.class); + private static final Logger LOG = LoggerFactory.getLogger(BeforeEachAndAfterEachAnnotationsUnitTest.class); private List list; diff --git a/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit5/RuleExampleTest.java b/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit5/RuleExampleUnitTest.java similarity index 92% rename from testing-modules/junit-5/src/test/java/com/baeldung/migration/junit5/RuleExampleTest.java rename to testing-modules/junit-5/src/test/java/com/baeldung/migration/junit5/RuleExampleUnitTest.java index a05360250b..7b1bcda730 100644 --- a/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit5/RuleExampleTest.java +++ b/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit5/RuleExampleUnitTest.java @@ -9,7 +9,7 @@ import com.baeldung.migration.junit5.extensions.TraceUnitExtension; @RunWith(JUnitPlatform.class) @ExtendWith(TraceUnitExtension.class) -public class RuleExampleTest { +public class RuleExampleUnitTest { @Test public void whenTracingTests() { diff --git a/testing-modules/junit-5/src/test/java/com/baeldung/param/PersonValidatorTest.java b/testing-modules/junit-5/src/test/java/com/baeldung/param/PersonValidatorUnitTest.java similarity index 98% rename from testing-modules/junit-5/src/test/java/com/baeldung/param/PersonValidatorTest.java rename to testing-modules/junit-5/src/test/java/com/baeldung/param/PersonValidatorUnitTest.java index cd6f2b7e4f..3db44c9d63 100644 --- a/testing-modules/junit-5/src/test/java/com/baeldung/param/PersonValidatorTest.java +++ b/testing-modules/junit-5/src/test/java/com/baeldung/param/PersonValidatorUnitTest.java @@ -13,7 +13,7 @@ import org.junit.runner.RunWith; @RunWith(JUnitPlatform.class) @DisplayName("Testing PersonValidator") -public class PersonValidatorTest { +public class PersonValidatorUnitTest { /** * Nested class, uses ExtendWith diff --git a/testing-modules/junit-5/src/test/java/com/baeldung/suites/AllTests.java b/testing-modules/junit-5/src/test/java/com/baeldung/suites/AllUnitTest.java similarity index 92% rename from testing-modules/junit-5/src/test/java/com/baeldung/suites/AllTests.java rename to testing-modules/junit-5/src/test/java/com/baeldung/suites/AllUnitTest.java index 29452efc3d..30b92ad428 100644 --- a/testing-modules/junit-5/src/test/java/com/baeldung/suites/AllTests.java +++ b/testing-modules/junit-5/src/test/java/com/baeldung/suites/AllUnitTest.java @@ -7,6 +7,6 @@ import org.junit.runner.RunWith; @RunWith(JUnitPlatform.class) @SelectPackages("com.baeldung") // @SelectClasses({AssertionTest.class, AssumptionTest.class, ExceptionTest.class}) -public class AllTests { +public class AllUnitTest { } diff --git a/testing-modules/mockito-2/src/test/java/com/baeldung/mockito/java8/LazyVerificationTest.java b/testing-modules/mockito-2/src/test/java/com/baeldung/mockito/java8/LazyVerificationUnitTest.java similarity index 96% rename from testing-modules/mockito-2/src/test/java/com/baeldung/mockito/java8/LazyVerificationTest.java rename to testing-modules/mockito-2/src/test/java/com/baeldung/mockito/java8/LazyVerificationUnitTest.java index 43b39d6859..0e6921c7a1 100644 --- a/testing-modules/mockito-2/src/test/java/com/baeldung/mockito/java8/LazyVerificationTest.java +++ b/testing-modules/mockito-2/src/test/java/com/baeldung/mockito/java8/LazyVerificationUnitTest.java @@ -11,7 +11,7 @@ import org.mockito.exceptions.base.MockitoAssertionError; import org.mockito.junit.MockitoJUnit; import org.mockito.junit.VerificationCollector; -public class LazyVerificationTest { +public class LazyVerificationUnitTest { @Test public void whenLazilyVerified_thenReportsMultipleFailures() { diff --git a/testing-modules/mockito/src/test/java/com/baeldung/powermockito/introduction/LuckyNumberGeneratorTest.java b/testing-modules/mockito/src/test/java/com/baeldung/powermockito/introduction/LuckyNumberGeneratorIntegrationTest.java similarity index 97% rename from testing-modules/mockito/src/test/java/com/baeldung/powermockito/introduction/LuckyNumberGeneratorTest.java rename to testing-modules/mockito/src/test/java/com/baeldung/powermockito/introduction/LuckyNumberGeneratorIntegrationTest.java index 2836bcd317..5e311c60f2 100644 --- a/testing-modules/mockito/src/test/java/com/baeldung/powermockito/introduction/LuckyNumberGeneratorTest.java +++ b/testing-modules/mockito/src/test/java/com/baeldung/powermockito/introduction/LuckyNumberGeneratorIntegrationTest.java @@ -14,7 +14,7 @@ import org.powermock.modules.junit4.PowerMockRunner; @RunWith(PowerMockRunner.class) @PrepareForTest(fullyQualifiedNames = "com.baeldung.powermockito.introduction.LuckyNumberGenerator") -public class LuckyNumberGeneratorTest { +public class LuckyNumberGeneratorIntegrationTest { @Test public final void givenPrivateMethodWithReturn_whenUsingPowerMockito_thenCorrect() throws Exception { diff --git a/testing-modules/mockito/src/test/java/org/baeldung/bddmockito/BDDMockitoTest.java b/testing-modules/mockito/src/test/java/org/baeldung/bddmockito/BDDMockitoIntegrationTest.java similarity index 96% rename from testing-modules/mockito/src/test/java/org/baeldung/bddmockito/BDDMockitoTest.java rename to testing-modules/mockito/src/test/java/org/baeldung/bddmockito/BDDMockitoIntegrationTest.java index 9cc586fb84..e772b5e049 100644 --- a/testing-modules/mockito/src/test/java/org/baeldung/bddmockito/BDDMockitoTest.java +++ b/testing-modules/mockito/src/test/java/org/baeldung/bddmockito/BDDMockitoIntegrationTest.java @@ -10,7 +10,7 @@ import org.mockito.Mockito; import org.mockito.invocation.InvocationOnMock; -public class BDDMockitoTest { +public class BDDMockitoIntegrationTest { PhoneBookService phoneBookService; PhoneBookRepository phoneBookRepository; diff --git a/testing-modules/mockito/src/test/java/org/baeldung/hamcrest/HamcrestCoreMatchersTest.java b/testing-modules/mockito/src/test/java/org/baeldung/hamcrest/HamcrestCoreMatchersUnitTest.java similarity index 99% rename from testing-modules/mockito/src/test/java/org/baeldung/hamcrest/HamcrestCoreMatchersTest.java rename to testing-modules/mockito/src/test/java/org/baeldung/hamcrest/HamcrestCoreMatchersUnitTest.java index 8f3e96c956..d66ed98e8d 100644 --- a/testing-modules/mockito/src/test/java/org/baeldung/hamcrest/HamcrestCoreMatchersTest.java +++ b/testing-modules/mockito/src/test/java/org/baeldung/hamcrest/HamcrestCoreMatchersUnitTest.java @@ -11,7 +11,7 @@ import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.core.StringEndsWith.endsWith; import static org.hamcrest.core.StringStartsWith.startsWith; -public class HamcrestCoreMatchersTest { +public class HamcrestCoreMatchersUnitTest { @Test public void givenTestInput_WhenUsingIsForMatch() { diff --git a/testing-modules/mockito/src/test/java/org/baeldung/mockito/MockitoVoidMethodsTest.java b/testing-modules/mockito/src/test/java/org/baeldung/mockito/MockitoVoidMethodsUnitTest.java similarity index 97% rename from testing-modules/mockito/src/test/java/org/baeldung/mockito/MockitoVoidMethodsTest.java rename to testing-modules/mockito/src/test/java/org/baeldung/mockito/MockitoVoidMethodsUnitTest.java index 4de9a88dcc..49360f8d6c 100644 --- a/testing-modules/mockito/src/test/java/org/baeldung/mockito/MockitoVoidMethodsTest.java +++ b/testing-modules/mockito/src/test/java/org/baeldung/mockito/MockitoVoidMethodsUnitTest.java @@ -11,7 +11,7 @@ import org.mockito.stubbing.Answer; import org.mockito.runners.MockitoJUnitRunner; @RunWith(MockitoJUnitRunner.class) -public class MockitoVoidMethodsTest { +public class MockitoVoidMethodsUnitTest { @Test public void whenAddCalledVerified() { diff --git a/testing-modules/mocks/mock-comparisons/src/test/java/com/baeldung/easymock/BaeldungReaderAnnotatedTest.java b/testing-modules/mocks/mock-comparisons/src/test/java/com/baeldung/easymock/BaeldungReaderAnnotatedUnitTest.java similarity index 93% rename from testing-modules/mocks/mock-comparisons/src/test/java/com/baeldung/easymock/BaeldungReaderAnnotatedTest.java rename to testing-modules/mocks/mock-comparisons/src/test/java/com/baeldung/easymock/BaeldungReaderAnnotatedUnitTest.java index af2ef3e6da..afacd8d8ad 100755 --- a/testing-modules/mocks/mock-comparisons/src/test/java/com/baeldung/easymock/BaeldungReaderAnnotatedTest.java +++ b/testing-modules/mocks/mock-comparisons/src/test/java/com/baeldung/easymock/BaeldungReaderAnnotatedUnitTest.java @@ -11,7 +11,7 @@ import java.util.NoSuchElementException; import static org.easymock.EasyMock.*; @RunWith(EasyMockRunner.class) -public class BaeldungReaderAnnotatedTest { +public class BaeldungReaderAnnotatedUnitTest { @Mock ArticleReader mockArticleReader; diff --git a/testing-modules/mocks/mock-comparisons/src/test/java/com/baeldung/easymock/BaeldungReaderAnnotatedWithRuleTest.java b/testing-modules/mocks/mock-comparisons/src/test/java/com/baeldung/easymock/BaeldungReaderAnnotatedWithRuleUnitTest.java similarity index 93% rename from testing-modules/mocks/mock-comparisons/src/test/java/com/baeldung/easymock/BaeldungReaderAnnotatedWithRuleTest.java rename to testing-modules/mocks/mock-comparisons/src/test/java/com/baeldung/easymock/BaeldungReaderAnnotatedWithRuleUnitTest.java index 28ed1484fc..086ed88888 100755 --- a/testing-modules/mocks/mock-comparisons/src/test/java/com/baeldung/easymock/BaeldungReaderAnnotatedWithRuleTest.java +++ b/testing-modules/mocks/mock-comparisons/src/test/java/com/baeldung/easymock/BaeldungReaderAnnotatedWithRuleUnitTest.java @@ -9,7 +9,7 @@ import java.util.NoSuchElementException; import static org.easymock.EasyMock.*; -public class BaeldungReaderAnnotatedWithRuleTest { +public class BaeldungReaderAnnotatedWithRuleUnitTest { @Rule public EasyMockRule mockRule = new EasyMockRule(this); diff --git a/testing-modules/mocks/mock-comparisons/src/test/java/com/baeldung/easymock/BaeldungReaderMockDelegationTest.java b/testing-modules/mocks/mock-comparisons/src/test/java/com/baeldung/easymock/BaeldungReaderMockDelegationUnitTest.java similarity index 91% rename from testing-modules/mocks/mock-comparisons/src/test/java/com/baeldung/easymock/BaeldungReaderMockDelegationTest.java rename to testing-modules/mocks/mock-comparisons/src/test/java/com/baeldung/easymock/BaeldungReaderMockDelegationUnitTest.java index 3ff0d6416e..89d3a2baee 100755 --- a/testing-modules/mocks/mock-comparisons/src/test/java/com/baeldung/easymock/BaeldungReaderMockDelegationTest.java +++ b/testing-modules/mocks/mock-comparisons/src/test/java/com/baeldung/easymock/BaeldungReaderMockDelegationUnitTest.java @@ -5,7 +5,7 @@ import org.junit.*; import static org.easymock.EasyMock.*; -public class BaeldungReaderMockDelegationTest { +public class BaeldungReaderMockDelegationUnitTest { EasyMockSupport easyMockSupport = new EasyMockSupport(); diff --git a/testing-modules/mocks/mock-comparisons/src/test/java/com/baeldung/easymock/BaeldungReaderMockSupportTest.java b/testing-modules/mocks/mock-comparisons/src/test/java/com/baeldung/easymock/BaeldungReaderMockSupportUnitTest.java similarity index 91% rename from testing-modules/mocks/mock-comparisons/src/test/java/com/baeldung/easymock/BaeldungReaderMockSupportTest.java rename to testing-modules/mocks/mock-comparisons/src/test/java/com/baeldung/easymock/BaeldungReaderMockSupportUnitTest.java index 3bed89927f..cd0c906949 100755 --- a/testing-modules/mocks/mock-comparisons/src/test/java/com/baeldung/easymock/BaeldungReaderMockSupportTest.java +++ b/testing-modules/mocks/mock-comparisons/src/test/java/com/baeldung/easymock/BaeldungReaderMockSupportUnitTest.java @@ -10,7 +10,7 @@ import static org.easymock.EasyMock.*; import static org.junit.Assert.assertEquals; @RunWith(EasyMockRunner.class) -public class BaeldungReaderMockSupportTest extends EasyMockSupport { +public class BaeldungReaderMockSupportUnitTest extends EasyMockSupport { @TestSubject BaeldungReader baeldungReader = new BaeldungReader(); @Mock ArticleReader mockArticleReader; diff --git a/testing-modules/mocks/mock-comparisons/src/test/java/com/baeldung/easymock/BaeldungReaderTest.java b/testing-modules/mocks/mock-comparisons/src/test/java/com/baeldung/easymock/BaeldungReaderUnitTest.java similarity index 96% rename from testing-modules/mocks/mock-comparisons/src/test/java/com/baeldung/easymock/BaeldungReaderTest.java rename to testing-modules/mocks/mock-comparisons/src/test/java/com/baeldung/easymock/BaeldungReaderUnitTest.java index 5b485357fd..31f6af116c 100755 --- a/testing-modules/mocks/mock-comparisons/src/test/java/com/baeldung/easymock/BaeldungReaderTest.java +++ b/testing-modules/mocks/mock-comparisons/src/test/java/com/baeldung/easymock/BaeldungReaderUnitTest.java @@ -7,7 +7,7 @@ import java.util.NoSuchElementException; import static org.easymock.EasyMock.*; import static org.junit.Assert.assertEquals; -public class BaeldungReaderTest { +public class BaeldungReaderUnitTest { private BaeldungReader baeldungReader; diff --git a/testing-modules/testing/src/test/java/com/baeldung/introductionjukito/CalculatorTest.java b/testing-modules/testing/src/test/java/com/baeldung/introductionjukito/CalculatorUnitTest.java similarity index 98% rename from testing-modules/testing/src/test/java/com/baeldung/introductionjukito/CalculatorTest.java rename to testing-modules/testing/src/test/java/com/baeldung/introductionjukito/CalculatorUnitTest.java index 313e1d2938..193a4b9cd8 100644 --- a/testing-modules/testing/src/test/java/com/baeldung/introductionjukito/CalculatorTest.java +++ b/testing-modules/testing/src/test/java/com/baeldung/introductionjukito/CalculatorUnitTest.java @@ -8,7 +8,7 @@ import org.junit.runner.RunWith; import static org.junit.Assert.*; @RunWith(JukitoRunner.class) -public class CalculatorTest { +public class CalculatorUnitTest { public static class Module extends JukitoModule { diff --git a/testing-modules/testing/src/test/java/com/baeldung/junit/AdditionTest.java b/testing-modules/testing/src/test/java/com/baeldung/junit/AdditionUnitTest.java similarity index 88% rename from testing-modules/testing/src/test/java/com/baeldung/junit/AdditionTest.java rename to testing-modules/testing/src/test/java/com/baeldung/junit/AdditionUnitTest.java index 0d492f8058..ae6fa355fa 100644 --- a/testing-modules/testing/src/test/java/com/baeldung/junit/AdditionTest.java +++ b/testing-modules/testing/src/test/java/com/baeldung/junit/AdditionUnitTest.java @@ -4,7 +4,7 @@ import org.junit.Test; import static org.junit.Assert.assertEquals; -public class AdditionTest { +public class AdditionUnitTest { Calculator calculator = new Calculator(); @Test diff --git a/testing-modules/testing/src/test/java/com/baeldung/junit/CalculatorTest.java b/testing-modules/testing/src/test/java/com/baeldung/junit/CalculatorUnitTest.java similarity index 91% rename from testing-modules/testing/src/test/java/com/baeldung/junit/CalculatorTest.java rename to testing-modules/testing/src/test/java/com/baeldung/junit/CalculatorUnitTest.java index d1b35d1442..d5ca847106 100644 --- a/testing-modules/testing/src/test/java/com/baeldung/junit/CalculatorTest.java +++ b/testing-modules/testing/src/test/java/com/baeldung/junit/CalculatorUnitTest.java @@ -7,7 +7,7 @@ import org.junit.runners.JUnit4; import static org.junit.Assert.assertEquals; @RunWith(JUnit4.class) -public class CalculatorTest { +public class CalculatorUnitTest { Calculator calculator = new Calculator(); @Test diff --git a/testing-modules/testing/src/test/java/com/baeldung/junit/SubstractionTest.java b/testing-modules/testing/src/test/java/com/baeldung/junit/SubstractionUnitTest.java similarity index 87% rename from testing-modules/testing/src/test/java/com/baeldung/junit/SubstractionTest.java rename to testing-modules/testing/src/test/java/com/baeldung/junit/SubstractionUnitTest.java index 9650d83afe..fd98395ebc 100644 --- a/testing-modules/testing/src/test/java/com/baeldung/junit/SubstractionTest.java +++ b/testing-modules/testing/src/test/java/com/baeldung/junit/SubstractionUnitTest.java @@ -4,7 +4,7 @@ import org.junit.Test; import static org.junit.Assert.assertEquals; -public class SubstractionTest { +public class SubstractionUnitTest { Calculator calculator = new Calculator(); @Test diff --git a/testing-modules/testing/src/test/java/com/baeldung/junit/SuiteTest.java b/testing-modules/testing/src/test/java/com/baeldung/junit/SuiteUnitTest.java similarity index 67% rename from testing-modules/testing/src/test/java/com/baeldung/junit/SuiteTest.java rename to testing-modules/testing/src/test/java/com/baeldung/junit/SuiteUnitTest.java index 428319e72e..76d19f84b2 100644 --- a/testing-modules/testing/src/test/java/com/baeldung/junit/SuiteTest.java +++ b/testing-modules/testing/src/test/java/com/baeldung/junit/SuiteUnitTest.java @@ -6,7 +6,7 @@ import org.junit.runners.Suite.SuiteClasses; @RunWith(Suite.class) @SuiteClasses({ - AdditionTest.class, - SubstractionTest.class}) -public class SuiteTest { + AdditionUnitTest.class, + SubstractionUnitTest.class}) +public class SuiteUnitTest { } diff --git a/testing-modules/testing/src/test/java/com/baeldung/junitparams/SafeAdditionUtilTest.java b/testing-modules/testing/src/test/java/com/baeldung/junitparams/SafeAdditionUtilUnitTest.java similarity index 98% rename from testing-modules/testing/src/test/java/com/baeldung/junitparams/SafeAdditionUtilTest.java rename to testing-modules/testing/src/test/java/com/baeldung/junitparams/SafeAdditionUtilUnitTest.java index f1659437ec..6c98454da0 100644 --- a/testing-modules/testing/src/test/java/com/baeldung/junitparams/SafeAdditionUtilTest.java +++ b/testing-modules/testing/src/test/java/com/baeldung/junitparams/SafeAdditionUtilUnitTest.java @@ -9,7 +9,7 @@ import org.junit.runner.RunWith; import static org.junit.Assert.assertEquals; @RunWith(JUnitParamsRunner.class) -public class SafeAdditionUtilTest { +public class SafeAdditionUtilUnitTest { private SafeAdditionUtil serviceUnderTest = new SafeAdditionUtil(); diff --git a/testing-modules/testing/src/test/java/com/baeldung/lambdabehave/CalculatorTest.java b/testing-modules/testing/src/test/java/com/baeldung/lambdabehave/CalculatorUnitTest.java similarity index 98% rename from testing-modules/testing/src/test/java/com/baeldung/lambdabehave/CalculatorTest.java rename to testing-modules/testing/src/test/java/com/baeldung/lambdabehave/CalculatorUnitTest.java index d179c6eb0e..5b6cd73332 100644 --- a/testing-modules/testing/src/test/java/com/baeldung/lambdabehave/CalculatorTest.java +++ b/testing-modules/testing/src/test/java/com/baeldung/lambdabehave/CalculatorUnitTest.java @@ -7,7 +7,7 @@ import com.insightfullogic.lambdabehave.generators.SourceGenerator; import org.junit.runner.RunWith; @RunWith(JunitSuiteRunner.class) -public class CalculatorTest { +public class CalculatorUnitTest { private Calculator calculator; From 50f5cba9da7e54048257646b330a82f8bafcca90 Mon Sep 17 00:00:00 2001 From: Rokon Uddin Ahmed Date: Fri, 1 Jun 2018 18:04:12 +0600 Subject: [PATCH 18/55] BAEL-6634 (#4376) * Update README.md * Create README.md * Create README.md * Update README.md * Update README.md * Update README.md * Update README.md * Update README.md * Update README.md * Update README.md * Update README.MD * Create README.md * Create README.md * Create README.md * Update README.md * Create README.md * Update README.md * Update README.md * Create README.md * Update README.md * Update README.md * Create README.md * Update README.md * Update README.md * Update README.md * Update README.md * Update README.md * Update README.md * Update README.md * Update README.md --- azure/README.md | 3 ++- core-java-10/README.md | 5 +++++ core-java-8/README.md | 2 ++ core-java-9/README.md | 1 + core-java-collections/README.md | 1 + core-java-io/README.md | 1 + core-java/README.md | 10 ++++++++++ core-kotlin/README.md | 2 ++ dagger/README.md | 4 +++- hibernate5/README.md | 2 ++ java-spi/README.md | 4 ++++ java-vavr-stream/README.md | 5 +++++ javax-servlets/README.md | 1 + jni/README.md | 4 ++++ libraries/README.md | 2 ++ logging-modules/README.md | 2 +- logging-modules/log4j2/README.md | 1 + persistence-modules/README.md | 1 + spring-boot-ctx-fluent/README.md | 4 ++++ spring-boot-jasypt/README.md | 4 ++++ spring-boot-ops/README.md | 4 ++++ spring-boot/README.MD | 1 + spring-ejb/README.md | 1 + spring-rest-simple/README.md | 2 ++ spring-rest/README.md | 4 ++++ spring-thymeleaf/README.md | 1 + testing-modules/mockito/README.md | 1 + twilio/README.md | 5 +++++ vavr/README.md | 1 + xml/README.md | 1 + 30 files changed, 77 insertions(+), 3 deletions(-) create mode 100644 core-java-10/README.md create mode 100644 java-spi/README.md create mode 100644 java-vavr-stream/README.md create mode 100644 jni/README.md create mode 100644 spring-boot-ctx-fluent/README.md create mode 100644 spring-boot-jasypt/README.md create mode 100644 spring-boot-ops/README.md create mode 100644 twilio/README.md diff --git a/azure/README.md b/azure/README.md index d51172c186..c60186e1ce 100644 --- a/azure/README.md +++ b/azure/README.md @@ -1,3 +1,4 @@ ### Relevant Articles: -- [Deploy Spring Boot App to Azure]() +- [Deploy Spring Boot App to Azure](http://www.baeldung.com/spring-boot-azure) + diff --git a/core-java-10/README.md b/core-java-10/README.md new file mode 100644 index 0000000000..863448c194 --- /dev/null +++ b/core-java-10/README.md @@ -0,0 +1,5 @@ + +### Relevant Articles: + +- [Java 10 LocalVariable Type-Inference](http://www.baeldung.com/java-10-local-variable-type-inference) +- [Guide to Java 10](http://www.baeldung.com/java-10-overview) diff --git a/core-java-8/README.md b/core-java-8/README.md index f0d7818f5b..df6d50ad30 100644 --- a/core-java-8/README.md +++ b/core-java-8/README.md @@ -50,4 +50,6 @@ - [Filtering Kotlin Collections](http://www.baeldung.com/kotlin-filter-collection) - [How to Find an Element in a List with Java](http://www.baeldung.com/find-list-element-java) - [Measure Elapsed Time in Java](http://www.baeldung.com/java-measure-elapsed-time) +- [Java Optional – orElse() vs orElseGet()](http://www.baeldung.com/java-optional-or-else-vs-or-else-get) +- [An Introduction to Java.util.Hashtable Class](http://www.baeldung.com/java-hash-table) diff --git a/core-java-9/README.md b/core-java-9/README.md index 59b0929871..4223e57d4b 100644 --- a/core-java-9/README.md +++ b/core-java-9/README.md @@ -24,3 +24,4 @@ - [Method Handles in Java](http://www.baeldung.com/java-method-handles) - [Introduction to Chronicle Queue](http://www.baeldung.com/java-chronicle-queue) - [A Guide to Java 9 Modularity](http://www.baeldung.com/java-9-modularity) +- [Optional orElse Optional](http://www.baeldung.com/java-optional-or-else-optional) diff --git a/core-java-collections/README.md b/core-java-collections/README.md index ba264d7b6a..510eac9dbc 100644 --- a/core-java-collections/README.md +++ b/core-java-collections/README.md @@ -29,3 +29,4 @@ - [Java TreeMap vs HashMap](http://www.baeldung.com/java-treemap-vs-hashmap) - [How to TDD a List Implementation in Java](http://www.baeldung.com/java-test-driven-list) - [How to Store Duplicate Keys in a Map in Java?](http://www.baeldung.com/java-map-duplicate-keys) +- [Getting the Size of an Iterable in Java](http://www.baeldung.com/java-iterable-size) diff --git a/core-java-io/README.md b/core-java-io/README.md index 1354854e1f..011282af12 100644 --- a/core-java-io/README.md +++ b/core-java-io/README.md @@ -27,3 +27,4 @@ - [A Guide to WatchService in Java NIO2](http://www.baeldung.com/java-nio2-watchservice) - [Guide to Java NIO2 Asynchronous Channel APIs](http://www.baeldung.com/java-nio-2-async-channels) - [A Guide to NIO2 Asynchronous Socket Channel](http://www.baeldung.com/java-nio2-async-socket-channel) +- [Download a File From an URL in Java](http://www.baeldung.com/java-download-file) diff --git a/core-java/README.md b/core-java/README.md index 0dda0d0699..9bc7d9f7ee 100644 --- a/core-java/README.md +++ b/core-java/README.md @@ -141,3 +141,13 @@ - [Java KeyStore API](http://www.baeldung.com/java-keystore) - [Double-Checked Locking with Singleton](http://www.baeldung.com/java-singleton-double-checked-locking) - [Guide to Java Clock Class](http://www.baeldung.com/java-clock) +- [Using Java Assertions](http://www.baeldung.com/java-assert) +- [Pass-By-Value as a Parameter Passing Mechanism in Java](http://www.baeldung.com/java-pass-by-value-or-pass-by-reference) +- [Check If a String Is Numeric in Java](http://www.baeldung.com/java-check-string-number) +- [Variable and Method Hiding in Java](http://www.baeldung.com/java-variable-method-hiding) +- [Access Modifiers in Java](http://www.baeldung.com/java-access-modifiers) +- [NaN in Java](http://www.baeldung.com/java-not-a-number) +- [Infinite Loops in Java](http://www.baeldung.com/infinite-loops-java) +- [Why Use char[] Array Over a String for Storing Passwords in Java?](http://www.baeldung.com/java-storing-passwords) + + diff --git a/core-kotlin/README.md b/core-kotlin/README.md index d51c461101..9f3f0bf561 100644 --- a/core-kotlin/README.md +++ b/core-kotlin/README.md @@ -27,3 +27,5 @@ - [Guide to Kotlin @JvmField](http://www.baeldung.com/kotlin-jvm-field-annotation) - [Filtering Kotlin Collections](http://www.baeldung.com/kotlin-filter-collection) - [Writing to a File in Kotlin](http://www.baeldung.com/kotlin-write-file) +- [Lambda Expressions in Kotlin](http://www.baeldung.com/kotlin-lambda-expressions) +- [Writing Specifications with Kotlin and Spek](http://www.baeldung.com/kotlin-spek) diff --git a/dagger/README.md b/dagger/README.md index e9d9986697..72cba3d3f2 100644 --- a/dagger/README.md +++ b/dagger/README.md @@ -1 +1,3 @@ -### Relevant articles \ No newline at end of file +### Relevant articles: + +- [Introduction to Dagger 2](http://www.baeldung.com/dagger-2) diff --git a/hibernate5/README.md b/hibernate5/README.md index fb1319ed57..598f2b4913 100644 --- a/hibernate5/README.md +++ b/hibernate5/README.md @@ -10,3 +10,5 @@ - [JPA Attribute Converters](http://www.baeldung.com/jpa-attribute-converters) - [Mapping LOB Data in Hibernate](http://www.baeldung.com/hibernate-lob) - [@Immutable in Hibernate](http://www.baeldung.com/hibernate-immutable) +- [Pessimistic Locking in JPA](http://www.baeldung.com/jpa-pessimistic-locking) + diff --git a/java-spi/README.md b/java-spi/README.md new file mode 100644 index 0000000000..d2658c42fe --- /dev/null +++ b/java-spi/README.md @@ -0,0 +1,4 @@ + +### Relevant Articles: + +- [Java Service Provider Interface](http://www.baeldung.com/java-spi) diff --git a/java-vavr-stream/README.md b/java-vavr-stream/README.md new file mode 100644 index 0000000000..64299cde11 --- /dev/null +++ b/java-vavr-stream/README.md @@ -0,0 +1,5 @@ + +### Relevant Articles: + +- [Java Streams vs Vavr Streams](http://www.baeldung.com/vavr-java-streams) + diff --git a/javax-servlets/README.md b/javax-servlets/README.md index 84330ac94c..ef8ec168cf 100644 --- a/javax-servlets/README.md +++ b/javax-servlets/README.md @@ -2,3 +2,4 @@ - [Introduction to Java Servlets](http://www.baeldung.com/intro-to-servlets) - [An MVC Example with Servlets and JSP](http://www.baeldung.com/mvc-servlet-jsp) - [Handling Cookies and a Session in a Java Servlet](http://www.baeldung.com/java-servlet-cookies-session) +- [Uploading Files with Servlets and JSP](http://www.baeldung.com/upload-file-servlet) diff --git a/jni/README.md b/jni/README.md new file mode 100644 index 0000000000..663cafb0c0 --- /dev/null +++ b/jni/README.md @@ -0,0 +1,4 @@ + +### Relevant Articles: + +- [Guide to JNI (Java Native Interface)](http://www.baeldung.com/jni) diff --git a/libraries/README.md b/libraries/README.md index bde13401e9..3ef6303c88 100644 --- a/libraries/README.md +++ b/libraries/README.md @@ -79,6 +79,8 @@ - [Java Concurrency Utility with JCTools](http://www.baeldung.com/java-concurrency-jc-tools) - [Apache Commons Collections MapUtils](http://www.baeldung.com/apache-commons-map-utils) - [Testing Netty with EmbeddedChannel](http://www.baeldung.com/testing-netty-embedded-channel) +- [Creating REST Microservices with Javalin](http://www.baeldung.com/javalin-rest-microservices) + The libraries module contains examples related to small libraries that are relatively easy to use and does not require any separate module of its own. diff --git a/logging-modules/README.md b/logging-modules/README.md index a589b1245c..0f12d7eb22 100644 --- a/logging-modules/README.md +++ b/logging-modules/README.md @@ -5,4 +5,4 @@ - [Creating a Custom Logback Appender](http://www.baeldung.com/custom-logback-appender) - [Get Log Output in JSON Format](http://www.baeldung.com/java-log-json-output) -- [A Guide To Logback](http://www.baeldung.com/a-guide-to-logback) +- [A Guide To Logback](http://www.baeldung.com/logback) diff --git a/logging-modules/log4j2/README.md b/logging-modules/log4j2/README.md index 57ca4df21b..e209c6f035 100644 --- a/logging-modules/log4j2/README.md +++ b/logging-modules/log4j2/README.md @@ -2,3 +2,4 @@ - [Intro to Log4j2 – Appenders, Layouts and Filters](http://www.baeldung.com/log4j2-appenders-layouts-filters) - [Log4j 2 and Lambda Expressions](http://www.baeldung.com/log4j-2-lazy-logging) +- [Programmatic Configuration with Log4j 2](http://www.baeldung.com/log4j2-programmatic-config) diff --git a/persistence-modules/README.md b/persistence-modules/README.md index dde4558387..8f8c3eb13d 100644 --- a/persistence-modules/README.md +++ b/persistence-modules/README.md @@ -9,3 +9,4 @@ - [Introduction to Lettuce – the Java Redis Client](http://www.baeldung.com/java-redis-lettuce) - [A Simple Tagging Implementation with JPA](http://www.baeldung.com/jpa-tagging) - [A Guide to Jdbi](http://www.baeldung.com/jdbi) +- [Pessimistic Locking in JPA](http://www.baeldung.com/jpa-pessimistic-locking) diff --git a/spring-boot-ctx-fluent/README.md b/spring-boot-ctx-fluent/README.md new file mode 100644 index 0000000000..0b4b9c1271 --- /dev/null +++ b/spring-boot-ctx-fluent/README.md @@ -0,0 +1,4 @@ + +### Relevant Articles: + +- [Context Hierarchy with the Spring Boot Fluent Builder API](http://www.baeldung.com/spring-boot-context-hierarchy) diff --git a/spring-boot-jasypt/README.md b/spring-boot-jasypt/README.md new file mode 100644 index 0000000000..5df2a4a6e5 --- /dev/null +++ b/spring-boot-jasypt/README.md @@ -0,0 +1,4 @@ + +### Relevant Articles: + +- [Spring Boot Configuration with Jasypt](http://www.baeldung.com/spring-boot-jasypt) diff --git a/spring-boot-ops/README.md b/spring-boot-ops/README.md new file mode 100644 index 0000000000..b58015ac0f --- /dev/null +++ b/spring-boot-ops/README.md @@ -0,0 +1,4 @@ + +### Relevant Articles: + +- [Deploy a Spring Boot WAR into a Tomcat Server](http://www.baeldung.com/spring-boot-war-tomcat-deploy) diff --git a/spring-boot/README.MD b/spring-boot/README.MD index 124dd17921..dd3f930126 100644 --- a/spring-boot/README.MD +++ b/spring-boot/README.MD @@ -31,3 +31,4 @@ The "REST With Spring" Classes: http://bit.ly/restwithspring - [A Quick Intro to the SpringBootServletInitializer](http://www.baeldung.com/spring-boot-servlet-initializer) - [How to Define a Spring Boot Filter?](http://www.baeldung.com/spring-boot-add-filter) - [How to Change the Default Port in Spring Boot](http://www.baeldung.com/spring-boot-change-port) +- [Spring Boot Exit Codes](http://www.baeldung.com/spring-boot-exit-codes) diff --git a/spring-ejb/README.md b/spring-ejb/README.md index 8fa8833f3a..d09b27db27 100644 --- a/spring-ejb/README.md +++ b/spring-ejb/README.md @@ -1,3 +1,4 @@ ### Relevant Articles - [Integration Guide for Spring and EJB](http://www.baeldung.com/spring-ejb) +- [Singleton Session Bean in Java EE](http://www.baeldung.com/java-ee-singleton-session-bean) diff --git a/spring-rest-simple/README.md b/spring-rest-simple/README.md index 982e16d5a5..9345cb70cc 100644 --- a/spring-rest-simple/README.md +++ b/spring-rest-simple/README.md @@ -6,3 +6,5 @@ - [Spring RequestMapping](http://www.baeldung.com/spring-requestmapping) - [ETags for REST with Spring](http://www.baeldung.com/etags-for-rest-with-spring) - [Spring and Apache FileUpload](http://www.baeldung.com/spring-apache-file-upload) +- [Spring RestTemplate Error Handling](http://www.baeldung.com/spring-rest-template-error-handling) + diff --git a/spring-rest/README.md b/spring-rest/README.md index 6c6f39e544..c1183b500a 100644 --- a/spring-rest/README.md +++ b/spring-rest/README.md @@ -19,3 +19,7 @@ The "REST With Spring" Classes: http://bit.ly/restwithspring - [RequestBody and ResponseBody Annotations](http://www.baeldung.com/requestbody-and-responsebody-annotations) - [Introduction to CheckStyle](http://www.baeldung.com/checkstyle-java) - [How to Change the Default Port in Spring Boot](http://www.baeldung.com/spring-boot-change-port) +- [Guide to DeferredResult in Spring](http://www.baeldung.com/spring-deferred-result) +- [Spring Custom Property Editor](http://www.baeldung.com/spring-mvc-custom-property-editor) +- [Using the Spring RestTemplate Interceptor](http://www.baeldung.com/spring-rest-template-interceptor) + diff --git a/spring-thymeleaf/README.md b/spring-thymeleaf/README.md index 9346b74c89..27af6c077a 100644 --- a/spring-thymeleaf/README.md +++ b/spring-thymeleaf/README.md @@ -14,6 +14,7 @@ - [Working with Fragments in Thymeleaf](http://www.baeldung.com/spring-thymeleaf-fragments) - [Conditionals in Thymeleaf](http://www.baeldung.com/spring-thymeleaf-conditionals) - [Iteration in Thymeleaf](http://www.baeldung.com/thymeleaf-iteration) +- [Working With Arrays in Thymeleaf](http://www.baeldung.com/thymeleaf-arrays) ### Build the Project diff --git a/testing-modules/mockito/README.md b/testing-modules/mockito/README.md index 5a8d2289a4..05cc7ca936 100644 --- a/testing-modules/mockito/README.md +++ b/testing-modules/mockito/README.md @@ -17,3 +17,4 @@ - [Hamcrest Text Matchers](http://www.baeldung.com/hamcrest-text-matchers) - [Hamcrest File Matchers](http://www.baeldung.com/hamcrest-file-matchers) - [Hamcrest Custom Matchers](http://www.baeldung.com/hamcrest-custom-matchers) +- [Hamcrest Common Core Matchers](http://www.baeldung.com/hamcrest-core-matchers) diff --git a/twilio/README.md b/twilio/README.md new file mode 100644 index 0000000000..9d230610c7 --- /dev/null +++ b/twilio/README.md @@ -0,0 +1,5 @@ + + +### Relevant Articles: + +- [Sending SMS in Java with Twilio](http://www.baeldung.com/java-sms-twilio) diff --git a/vavr/README.md b/vavr/README.md index c8570db04c..b7ba72229b 100644 --- a/vavr/README.md +++ b/vavr/README.md @@ -11,3 +11,4 @@ - [Introduction to Future in Vavr](http://www.baeldung.com/vavr-future) - [Introduction to VRaptor in Java](http://www.baeldung.com/vraptor) - [Introduction to Vavr’s Either](http://www.baeldung.com/vavr-either) +- [Interoperability Between Java and Vavr](http://www.baeldung.com/java-vavr) diff --git a/xml/README.md b/xml/README.md index 7c3ebccac6..80c6a069f0 100644 --- a/xml/README.md +++ b/xml/README.md @@ -2,3 +2,4 @@ - [Intro to XPath with Java](http://www.baeldung.com/java-xpath) - [Introduction to JiBX](http://www.baeldung.com/jibx) - [XML Libraries Support in Java](http://www.baeldung.com/java-xml-libraries) +- [DOM parsing with Xerces](http://www.baeldung.com/java-xerces-dom-parsing) From c99aae6e563903a3d2941a0dde95e7a2296e1894 Mon Sep 17 00:00:00 2001 From: Amit Pandey Date: Fri, 1 Jun 2018 22:37:37 +0530 Subject: [PATCH 19/55] Bael 6556 5 (#4385) * Added parent module on poms that have no parent defined * Removed dependency reduced pom from undertow module * Added README * [BAEL-6556] - Renamed next set of testcases * [BAEL-6556] - Renamed next set of testcases * [BAEL-6556] - Renamed next set of testcases --- pom.xml | 2 +- spring-boot-ops/README.md | 2 +- ...sts.java => SpringBootTomcatApplicationIntegrationTest.java} | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) rename spring-boot-ops/src/test/java/com/baeldung/springbootsimple/{SpringBootTomcatApplicationTests.java => SpringBootTomcatApplicationIntegrationTest.java} (84%) diff --git a/pom.xml b/pom.xml index f3ef55e8cf..96dfb4f8cd 100644 --- a/pom.xml +++ b/pom.xml @@ -374,7 +374,7 @@ 5 true - false + true true true true diff --git a/spring-boot-ops/README.md b/spring-boot-ops/README.md index b58015ac0f..74eabd56e6 100644 --- a/spring-boot-ops/README.md +++ b/spring-boot-ops/README.md @@ -1,4 +1,4 @@ ### Relevant Articles: -- [Deploy a Spring Boot WAR into a Tomcat Server](http://www.baeldung.com/spring-boot-war-tomcat-deploy) +- [Deploy a Spring Boot WAR into a Tomcat Server](http://www.baeldung.com/spring-boot-war-tomcat-deploy) \ No newline at end of file diff --git a/spring-boot-ops/src/test/java/com/baeldung/springbootsimple/SpringBootTomcatApplicationTests.java b/spring-boot-ops/src/test/java/com/baeldung/springbootsimple/SpringBootTomcatApplicationIntegrationTest.java similarity index 84% rename from spring-boot-ops/src/test/java/com/baeldung/springbootsimple/SpringBootTomcatApplicationTests.java rename to spring-boot-ops/src/test/java/com/baeldung/springbootsimple/SpringBootTomcatApplicationIntegrationTest.java index 4c0d4d577a..a10ebbbd35 100644 --- a/spring-boot-ops/src/test/java/com/baeldung/springbootsimple/SpringBootTomcatApplicationTests.java +++ b/spring-boot-ops/src/test/java/com/baeldung/springbootsimple/SpringBootTomcatApplicationIntegrationTest.java @@ -7,7 +7,7 @@ import org.springframework.test.context.junit4.SpringRunner; @RunWith(SpringRunner.class) @SpringBootTest -public class SpringBootTomcatApplicationTests { +public class SpringBootTomcatApplicationIntegrationTest { @Test public void contextLoads() { From 9c26833fa1b29630afac0549a14bede424edd696 Mon Sep 17 00:00:00 2001 From: Denis Date: Sat, 2 Jun 2018 06:41:52 +0200 Subject: [PATCH 20/55] BAEL-1792 overview of visitor design pattern (#4352) --- .../java/com/baeldung/visitor/Document.java | 20 ++++++++++++++++ .../java/com/baeldung/visitor/Element.java | 12 ++++++++++ .../com/baeldung/visitor/ElementVisitor.java | 14 +++++++++++ .../com/baeldung/visitor/JsonElement.java | 12 ++++++++++ .../java/com/baeldung/visitor/Visitor.java | 8 +++++++ .../com/baeldung/visitor/VisitorDemo.java | 23 +++++++++++++++++++ .../java/com/baeldung/visitor/XmlElement.java | 12 ++++++++++ 7 files changed, 101 insertions(+) create mode 100644 patterns/design-patterns/src/main/java/com/baeldung/visitor/Document.java create mode 100644 patterns/design-patterns/src/main/java/com/baeldung/visitor/Element.java create mode 100644 patterns/design-patterns/src/main/java/com/baeldung/visitor/ElementVisitor.java create mode 100644 patterns/design-patterns/src/main/java/com/baeldung/visitor/JsonElement.java create mode 100644 patterns/design-patterns/src/main/java/com/baeldung/visitor/Visitor.java create mode 100644 patterns/design-patterns/src/main/java/com/baeldung/visitor/VisitorDemo.java create mode 100644 patterns/design-patterns/src/main/java/com/baeldung/visitor/XmlElement.java diff --git a/patterns/design-patterns/src/main/java/com/baeldung/visitor/Document.java b/patterns/design-patterns/src/main/java/com/baeldung/visitor/Document.java new file mode 100644 index 0000000000..575146a8e0 --- /dev/null +++ b/patterns/design-patterns/src/main/java/com/baeldung/visitor/Document.java @@ -0,0 +1,20 @@ +package com.baeldung.visitor; + +import java.util.ArrayList; +import java.util.List; + +public class Document extends Element { + + List elements = new ArrayList<>(); + + public Document(String uuid) { + super(uuid); + } + + @Override + public void accept(Visitor v) { + for (Element e : this.elements) { + e.accept(v); + } + } +} \ No newline at end of file diff --git a/patterns/design-patterns/src/main/java/com/baeldung/visitor/Element.java b/patterns/design-patterns/src/main/java/com/baeldung/visitor/Element.java new file mode 100644 index 0000000000..70c96c99e1 --- /dev/null +++ b/patterns/design-patterns/src/main/java/com/baeldung/visitor/Element.java @@ -0,0 +1,12 @@ +package com.baeldung.visitor; + +public abstract class Element { + + public String uuid; + + public Element(String uuid) { + this.uuid = uuid; + } + + public abstract void accept(Visitor v); +} \ No newline at end of file diff --git a/patterns/design-patterns/src/main/java/com/baeldung/visitor/ElementVisitor.java b/patterns/design-patterns/src/main/java/com/baeldung/visitor/ElementVisitor.java new file mode 100644 index 0000000000..f8af42d554 --- /dev/null +++ b/patterns/design-patterns/src/main/java/com/baeldung/visitor/ElementVisitor.java @@ -0,0 +1,14 @@ +package com.baeldung.visitor; + +public class ElementVisitor implements Visitor { + + @Override + public void visit(XmlElement xe) { + System.out.println("processing xml element with uuid: " + xe.uuid); + } + + @Override + public void visit(JsonElement je) { + System.out.println("processing json element with uuid: " + je.uuid); + } +} \ No newline at end of file diff --git a/patterns/design-patterns/src/main/java/com/baeldung/visitor/JsonElement.java b/patterns/design-patterns/src/main/java/com/baeldung/visitor/JsonElement.java new file mode 100644 index 0000000000..a65fe277f1 --- /dev/null +++ b/patterns/design-patterns/src/main/java/com/baeldung/visitor/JsonElement.java @@ -0,0 +1,12 @@ +package com.baeldung.visitor; + +public class JsonElement extends Element { + + public JsonElement(String uuid) { + super(uuid); + } + + public void accept(Visitor v) { + v.visit(this); + } +} \ No newline at end of file diff --git a/patterns/design-patterns/src/main/java/com/baeldung/visitor/Visitor.java b/patterns/design-patterns/src/main/java/com/baeldung/visitor/Visitor.java new file mode 100644 index 0000000000..1cd94911a3 --- /dev/null +++ b/patterns/design-patterns/src/main/java/com/baeldung/visitor/Visitor.java @@ -0,0 +1,8 @@ +package com.baeldung.visitor; + +public interface Visitor { + + void visit(XmlElement xe); + + void visit(JsonElement je); +} diff --git a/patterns/design-patterns/src/main/java/com/baeldung/visitor/VisitorDemo.java b/patterns/design-patterns/src/main/java/com/baeldung/visitor/VisitorDemo.java new file mode 100644 index 0000000000..ee3436616a --- /dev/null +++ b/patterns/design-patterns/src/main/java/com/baeldung/visitor/VisitorDemo.java @@ -0,0 +1,23 @@ +package com.baeldung.visitor; + +import java.util.UUID; + +public class VisitorDemo { + + public static void main(String[] args) { + + Visitor v = new ElementVisitor(); + + Document d = new Document(generateUuid()); + d.elements.add(new JsonElement(generateUuid())); + d.elements.add(new JsonElement(generateUuid())); + d.elements.add(new XmlElement(generateUuid())); + + d.accept(v); + } + + private static String generateUuid() { + return UUID.randomUUID() + .toString(); + } +} \ No newline at end of file diff --git a/patterns/design-patterns/src/main/java/com/baeldung/visitor/XmlElement.java b/patterns/design-patterns/src/main/java/com/baeldung/visitor/XmlElement.java new file mode 100644 index 0000000000..41998de428 --- /dev/null +++ b/patterns/design-patterns/src/main/java/com/baeldung/visitor/XmlElement.java @@ -0,0 +1,12 @@ +package com.baeldung.visitor; + +public class XmlElement extends Element { + + public XmlElement(String uuid) { + super(uuid); + } + + public void accept(Visitor v) { + v.visit(this); + } +} \ No newline at end of file From 9245ba0925dee4708db7538bbc1fd3473ea27243 Mon Sep 17 00:00:00 2001 From: Amit Pandey Date: Sat, 2 Jun 2018 20:14:15 +0530 Subject: [PATCH 21/55] Bael 6729 (#4389) * Added parent module on poms that have no parent defined * Removed dependency reduced pom from undertow module * Added README * [BAEL-6729] - Spring modules needs a spring parent * [BAEL-6729] - Spring modules needs a spring parent --- cdi/pom.xml | 5 +- drools/pom.xml | 5 +- handling-spring-static-resources/pom.xml | 25 +++--- logging-modules/log-mdc/pom.xml | 5 +- {parent-spring => parent-spring-4}/README.md | 0 parent-spring-4/pom.xml | 36 ++++++++ parent-spring-5/README.md | 1 + {parent-spring => parent-spring-5}/pom.xml | 8 +- .../spring-data-cassandra/pom.xml | 9 +- persistence-modules/spring-data-redis/pom.xml | 5 +- persistence-modules/spring-data-solr/pom.xml | 5 +- pom.xml | 3 +- spring-5-mvc/pom.xml | 12 +-- spring-5-reactive/pom.xml | 8 +- spring-5-security/pom.xml | 8 +- ...tractExtraLoginFieldsIntegrationTest.java} | 2 +- ...va => LoginFieldsFullIntegrationTest.java} | 2 +- ... => LoginFieldsSimpleIntegrationTest.java} | 2 +- spring-5/pom.xml | 8 +- ...ing5EnabledAnnotationIntegrationTest.java} | 4 +- ... => SpringJUnitConfigIntegrationTest.java} | 4 +- ... SpringJUnitWebConfigIntegrationTest.java} | 4 +- spring-boot-ops/README.md | 12 ++- spring-core/pom.xml | 5 +- spring-data-elasticsearch/pom.xml | 9 +- spring-data-mongodb/pom.xml | 9 +- spring-dispatcher-servlet/pom.xml | 5 +- spring-groovy/pom.xml | 4 +- spring-mvc-simple/pom.xml | 11 ++- spring-mvc-tiles/pom.xml | 11 ++- spring-mvc-velocity/pom.xml | 7 +- spring-rest-embedded-tomcat/pom.xml | 5 +- spring-security-mvc-custom/pom.xml | 7 +- spring-security-mvc-digest-auth/pom.xml | 31 ++++--- spring-security-mvc-login/pom.xml | 27 +++--- .../pom.xml | 27 +++--- spring-security-mvc-session/pom.xml | 25 +++--- spring-security-mvc-socket/pom.xml | 17 ++-- spring-security-rest-basic-auth/pom.xml | 29 +++--- spring-security-rest/pom.xml | 27 +++--- spring-userservice/pom.xml | 19 ++-- struts-2/pom.xml | 4 +- undertow/dependency-reduced-pom.xml | 90 ------------------- 43 files changed, 236 insertions(+), 306 deletions(-) rename {parent-spring => parent-spring-4}/README.md (100%) create mode 100644 parent-spring-4/pom.xml create mode 100644 parent-spring-5/README.md rename {parent-spring => parent-spring-5}/pom.xml (83%) rename spring-5-security/src/test/java/com/baeldung/loginextrafields/{AbstractExtraLoginFieldsTest.java => AbstractExtraLoginFieldsIntegrationTest.java} (93%) rename spring-5-security/src/test/java/com/baeldung/loginextrafields/{LoginFieldsFullTest.java => LoginFieldsFullIntegrationTest.java} (95%) rename spring-5-security/src/test/java/com/baeldung/loginextrafields/{LoginFieldsSimpleTest.java => LoginFieldsSimpleIntegrationTest.java} (95%) rename spring-5/src/test/java/com/baeldung/jupiter/{Spring5EnabledAnnotationTest.java => Spring5EnabledAnnotationIntegrationTest.java} (91%) rename spring-5/src/test/java/com/baeldung/jupiter/{SpringJUnitConfigTest.java => SpringJUnitConfigIntegrationTest.java} (87%) rename spring-5/src/test/java/com/baeldung/jupiter/{SpringJUnitWebConfigTest.java => SpringJUnitWebConfigIntegrationTest.java} (87%) delete mode 100644 undertow/dependency-reduced-pom.xml diff --git a/cdi/pom.xml b/cdi/pom.xml index 00cc96a7ed..0c14df6e73 100644 --- a/cdi/pom.xml +++ b/cdi/pom.xml @@ -8,9 +8,9 @@ com.baeldung - parent-spring + parent-spring-4 0.0.1-SNAPSHOT - ../parent-spring + ../parent-spring-4 @@ -38,7 +38,6 @@ - 4.3.4.RELEASE 1.8.9 2.4.1.Final diff --git a/drools/pom.xml b/drools/pom.xml index 60df7157f2..a060563eeb 100644 --- a/drools/pom.xml +++ b/drools/pom.xml @@ -6,9 +6,9 @@ com.baeldung - parent-spring + parent-spring-4 0.0.1-SNAPSHOT - ../parent-spring + ../parent-spring-4 @@ -54,7 +54,6 @@ 4.4.6 7.4.1.Final 3.13 - 4.3.6.RELEASE diff --git a/handling-spring-static-resources/pom.xml b/handling-spring-static-resources/pom.xml index da8f88ee22..771b37fb52 100644 --- a/handling-spring-static-resources/pom.xml +++ b/handling-spring-static-resources/pom.xml @@ -10,9 +10,9 @@ com.baeldung - parent-spring + parent-spring-4 0.0.1-SNAPSHOT - ../parent-spring + ../parent-spring-4 @@ -37,7 +37,7 @@ org.springframework spring-core - ${org.springframework.version} + ${spring.version} commons-logging @@ -48,43 +48,43 @@ org.springframework spring-context - ${org.springframework.version} + ${spring.version} org.springframework spring-jdbc - ${org.springframework.version} + ${spring.version} org.springframework spring-beans - ${org.springframework.version} + ${spring.version} org.springframework spring-aop - ${org.springframework.version} + ${spring.version} org.springframework spring-tx - ${org.springframework.version} + ${spring.version} org.springframework spring-expression - ${org.springframework.version} + ${spring.version} org.springframework spring-web - ${org.springframework.version} + ${spring.version} org.springframework spring-webmvc - ${org.springframework.version} + ${spring.version} @@ -190,8 +190,7 @@ 1.8 - 4.3.4.RELEASE - 4.2.0.RELEASE + 4.2.6.RELEASE 1.8.9 2.3.2-b02 diff --git a/logging-modules/log-mdc/pom.xml b/logging-modules/log-mdc/pom.xml index 7628c708e9..6cfef12980 100644 --- a/logging-modules/log-mdc/pom.xml +++ b/logging-modules/log-mdc/pom.xml @@ -10,9 +10,9 @@ com.baeldung - parent-spring + parent-spring-4 0.0.1-SNAPSHOT - ../../parent-spring + ../../parent-spring-4 @@ -80,7 +80,6 @@ - 4.3.4.RELEASE 1.2.17 2.7 3.3.6 diff --git a/parent-spring/README.md b/parent-spring-4/README.md similarity index 100% rename from parent-spring/README.md rename to parent-spring-4/README.md diff --git a/parent-spring-4/pom.xml b/parent-spring-4/pom.xml new file mode 100644 index 0000000000..b2b8295f01 --- /dev/null +++ b/parent-spring-4/pom.xml @@ -0,0 +1,36 @@ + + 4.0.0 + com.baeldung + parent-spring-4 + 0.0.1-SNAPSHOT + pom + parent-spring-4 + Parent for all spring 4 core modules + + + com.baeldung + parent-modules + 1.0.0-SNAPSHOT + + + + + org.springframework + spring-core + ${spring.version} + + + org.junit.jupiter + junit-jupiter-engine + ${junit.jupiter.version} + test + + + + + 4.3.17.RELEASE + 5.0.2 + + + \ No newline at end of file diff --git a/parent-spring-5/README.md b/parent-spring-5/README.md new file mode 100644 index 0000000000..ff12555376 --- /dev/null +++ b/parent-spring-5/README.md @@ -0,0 +1 @@ +## Relevant articles: diff --git a/parent-spring/pom.xml b/parent-spring-5/pom.xml similarity index 83% rename from parent-spring/pom.xml rename to parent-spring-5/pom.xml index 547c43dc27..87479d5e2f 100644 --- a/parent-spring/pom.xml +++ b/parent-spring-5/pom.xml @@ -2,11 +2,11 @@ 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 + parent-spring-5 0.0.1-SNAPSHOT pom - parent-spring - Parent for all spring core modules + parent-spring-5 + Parent for all spring 5 core modules com.baeldung @@ -29,7 +29,7 @@ - 4.3.6.RELEASE + 5.0.6.RELEASE 5.0.2 diff --git a/persistence-modules/spring-data-cassandra/pom.xml b/persistence-modules/spring-data-cassandra/pom.xml index 84165564ba..b11a1fd07b 100644 --- a/persistence-modules/spring-data-cassandra/pom.xml +++ b/persistence-modules/spring-data-cassandra/pom.xml @@ -9,9 +9,9 @@ com.baeldung - parent-spring + parent-spring-4 0.0.1-SNAPSHOT - ../../parent-spring + ../../parent-spring-4 @@ -23,7 +23,7 @@ org.springframework spring-core - ${org.springframework.version} + ${spring.version} commons-logging @@ -34,7 +34,7 @@ org.springframework spring-test - ${org.springframework.version} + ${spring.version} test @@ -76,7 +76,6 @@ UTF-8 - 4.3.4.RELEASE 1.3.2.RELEASE 2.1.5 2.1.9.2 diff --git a/persistence-modules/spring-data-redis/pom.xml b/persistence-modules/spring-data-redis/pom.xml index 26d5c6bddf..c5e0049e83 100644 --- a/persistence-modules/spring-data-redis/pom.xml +++ b/persistence-modules/spring-data-redis/pom.xml @@ -9,9 +9,9 @@ com.baeldung - parent-spring + parent-spring-5 0.0.1-SNAPSHOT - ../../parent-spring + ../../parent-spring-5 @@ -74,7 +74,6 @@ UTF-8 - 5.0.3.RELEASE 2.0.3.RELEASE 3.2.4 2.9.0 diff --git a/persistence-modules/spring-data-solr/pom.xml b/persistence-modules/spring-data-solr/pom.xml index f1c20344c1..036b40a7ed 100644 --- a/persistence-modules/spring-data-solr/pom.xml +++ b/persistence-modules/spring-data-solr/pom.xml @@ -10,9 +10,9 @@ com.baeldung - parent-spring + parent-spring-4 0.0.1-SNAPSHOT - ../../parent-spring + ../../parent-spring-4 @@ -47,7 +47,6 @@ UTF-8 - 4.3.4.RELEASE 2.0.5.RELEASE diff --git a/pom.xml b/pom.xml index 96dfb4f8cd..92d93e8df7 100644 --- a/pom.xml +++ b/pom.xml @@ -11,7 +11,8 @@ parent-boot-5 parent-boot-2 - parent-spring + parent-spring-4 + parent-spring-5 parent-java asm atomix diff --git a/spring-5-mvc/pom.xml b/spring-5-mvc/pom.xml index 06ddfb82d9..711463c430 100644 --- a/spring-5-mvc/pom.xml +++ b/spring-5-mvc/pom.xml @@ -10,10 +10,10 @@ spring 5 MVC sample project about new features - org.springframework.boot - spring-boot-starter-parent - 2.0.0.M7 - + com.baeldung + parent-boot-2 + 0.0.1-SNAPSHOT + ../parent-boot-2 @@ -90,7 +90,7 @@ com.jayway.restassured rest-assured - ${rest-assured.version} + ${jayway-rest-assured.version} test @@ -174,7 +174,7 @@ - 2.9.0 + 2.9.0 UTF-8 UTF-8 1.8 diff --git a/spring-5-reactive/pom.xml b/spring-5-reactive/pom.xml index fa86e9ca8a..9c317e9966 100644 --- a/spring-5-reactive/pom.xml +++ b/spring-5-reactive/pom.xml @@ -11,10 +11,10 @@ spring 5 sample project about new features - org.springframework.boot - spring-boot-starter-parent - 2.0.0.RELEASE - + com.baeldung + parent-boot-2 + 0.0.1-SNAPSHOT + ../parent-boot-2 diff --git a/spring-5-security/pom.xml b/spring-5-security/pom.xml index c9b16f8b88..96cbff8938 100644 --- a/spring-5-security/pom.xml +++ b/spring-5-security/pom.xml @@ -9,10 +9,10 @@ spring 5 security sample project - org.springframework.boot - spring-boot-starter-parent - 2.0.0.RELEASE - + com.baeldung + parent-boot-2 + 0.0.1-SNAPSHOT + ../parent-boot-2 diff --git a/spring-5-security/src/test/java/com/baeldung/loginextrafields/AbstractExtraLoginFieldsTest.java b/spring-5-security/src/test/java/com/baeldung/loginextrafields/AbstractExtraLoginFieldsIntegrationTest.java similarity index 93% rename from spring-5-security/src/test/java/com/baeldung/loginextrafields/AbstractExtraLoginFieldsTest.java rename to spring-5-security/src/test/java/com/baeldung/loginextrafields/AbstractExtraLoginFieldsIntegrationTest.java index 30b869714f..c46cbd8113 100644 --- a/spring-5-security/src/test/java/com/baeldung/loginextrafields/AbstractExtraLoginFieldsTest.java +++ b/spring-5-security/src/test/java/com/baeldung/loginextrafields/AbstractExtraLoginFieldsIntegrationTest.java @@ -13,7 +13,7 @@ import org.springframework.test.web.servlet.MockMvc; import org.springframework.test.web.servlet.setup.MockMvcBuilders; import org.springframework.web.context.WebApplicationContext; -public abstract class AbstractExtraLoginFieldsTest { +public abstract class AbstractExtraLoginFieldsIntegrationTest { @Autowired private FilterChainProxy springSecurityFilterChain; diff --git a/spring-5-security/src/test/java/com/baeldung/loginextrafields/LoginFieldsFullTest.java b/spring-5-security/src/test/java/com/baeldung/loginextrafields/LoginFieldsFullIntegrationTest.java similarity index 95% rename from spring-5-security/src/test/java/com/baeldung/loginextrafields/LoginFieldsFullTest.java rename to spring-5-security/src/test/java/com/baeldung/loginextrafields/LoginFieldsFullIntegrationTest.java index 38c219cb5e..20826eb9d7 100644 --- a/spring-5-security/src/test/java/com/baeldung/loginextrafields/LoginFieldsFullTest.java +++ b/spring-5-security/src/test/java/com/baeldung/loginextrafields/LoginFieldsFullIntegrationTest.java @@ -29,7 +29,7 @@ import com.baeldung.loginextrafieldscustom.User; @RunWith(SpringRunner.class) @SpringJUnitWebConfig @SpringBootTest(classes = ExtraLoginFieldsApplication.class) -public class LoginFieldsFullTest extends AbstractExtraLoginFieldsTest { +public class LoginFieldsFullIntegrationTest extends AbstractExtraLoginFieldsIntegrationTest { @Test public void givenAccessSecuredResource_whenAuthenticated_thenAuthHasExtraFields() throws Exception { diff --git a/spring-5-security/src/test/java/com/baeldung/loginextrafields/LoginFieldsSimpleTest.java b/spring-5-security/src/test/java/com/baeldung/loginextrafields/LoginFieldsSimpleIntegrationTest.java similarity index 95% rename from spring-5-security/src/test/java/com/baeldung/loginextrafields/LoginFieldsSimpleTest.java rename to spring-5-security/src/test/java/com/baeldung/loginextrafields/LoginFieldsSimpleIntegrationTest.java index 5c0d462772..3d0e2a8d09 100644 --- a/spring-5-security/src/test/java/com/baeldung/loginextrafields/LoginFieldsSimpleTest.java +++ b/spring-5-security/src/test/java/com/baeldung/loginextrafields/LoginFieldsSimpleIntegrationTest.java @@ -29,7 +29,7 @@ import com.baeldung.loginextrafieldssimple.User; @RunWith(SpringRunner.class) @SpringJUnitWebConfig @SpringBootTest(classes = ExtraLoginFieldsApplication.class) -public class LoginFieldsSimpleTest extends AbstractExtraLoginFieldsTest { +public class LoginFieldsSimpleIntegrationTest extends AbstractExtraLoginFieldsIntegrationTest { @Test public void givenAccessSecuredResource_whenAuthenticated_thenAuthHasExtraFields() throws Exception { diff --git a/spring-5/pom.xml b/spring-5/pom.xml index 67a6930569..bbd5272ae1 100644 --- a/spring-5/pom.xml +++ b/spring-5/pom.xml @@ -11,10 +11,10 @@ spring 5 sample project about new features - org.springframework.boot - spring-boot-starter-parent - 2.0.0.RELEASE - + com.baeldung + parent-boot-2 + 0.0.1-SNAPSHOT + ../parent-boot-2 diff --git a/spring-5/src/test/java/com/baeldung/jupiter/Spring5EnabledAnnotationTest.java b/spring-5/src/test/java/com/baeldung/jupiter/Spring5EnabledAnnotationIntegrationTest.java similarity index 91% rename from spring-5/src/test/java/com/baeldung/jupiter/Spring5EnabledAnnotationTest.java rename to spring-5/src/test/java/com/baeldung/jupiter/Spring5EnabledAnnotationIntegrationTest.java index ae058bc8ba..35363e0ea3 100644 --- a/spring-5/src/test/java/com/baeldung/jupiter/Spring5EnabledAnnotationTest.java +++ b/spring-5/src/test/java/com/baeldung/jupiter/Spring5EnabledAnnotationIntegrationTest.java @@ -9,9 +9,9 @@ import org.springframework.test.context.junit.jupiter.DisabledIf; import org.springframework.test.context.junit.jupiter.EnabledIf; import org.springframework.test.context.junit.jupiter.SpringJUnitConfig; -@SpringJUnitConfig(Spring5EnabledAnnotationTest.Config.class) +@SpringJUnitConfig(Spring5EnabledAnnotationIntegrationTest.Config.class) @TestPropertySource(properties = { "tests.enabled=true" }) -public class Spring5EnabledAnnotationTest { +public class Spring5EnabledAnnotationIntegrationTest { @Configuration static class Config { diff --git a/spring-5/src/test/java/com/baeldung/jupiter/SpringJUnitConfigTest.java b/spring-5/src/test/java/com/baeldung/jupiter/SpringJUnitConfigIntegrationTest.java similarity index 87% rename from spring-5/src/test/java/com/baeldung/jupiter/SpringJUnitConfigTest.java rename to spring-5/src/test/java/com/baeldung/jupiter/SpringJUnitConfigIntegrationTest.java index 6b0a6f9808..5f81c94aa0 100644 --- a/spring-5/src/test/java/com/baeldung/jupiter/SpringJUnitConfigTest.java +++ b/spring-5/src/test/java/com/baeldung/jupiter/SpringJUnitConfigIntegrationTest.java @@ -15,8 +15,8 @@ import org.springframework.test.context.junit.jupiter.SpringJUnitConfig; * @ContextConfiguration(classes = SpringJUnitConfigTest.Config.class ) * */ -@SpringJUnitConfig(SpringJUnitConfigTest.Config.class) -public class SpringJUnitConfigTest { +@SpringJUnitConfig(SpringJUnitConfigIntegrationTest.Config.class) +public class SpringJUnitConfigIntegrationTest { @Configuration static class Config { diff --git a/spring-5/src/test/java/com/baeldung/jupiter/SpringJUnitWebConfigTest.java b/spring-5/src/test/java/com/baeldung/jupiter/SpringJUnitWebConfigIntegrationTest.java similarity index 87% rename from spring-5/src/test/java/com/baeldung/jupiter/SpringJUnitWebConfigTest.java rename to spring-5/src/test/java/com/baeldung/jupiter/SpringJUnitWebConfigIntegrationTest.java index c679dce77f..4c3ffda203 100644 --- a/spring-5/src/test/java/com/baeldung/jupiter/SpringJUnitWebConfigTest.java +++ b/spring-5/src/test/java/com/baeldung/jupiter/SpringJUnitWebConfigIntegrationTest.java @@ -16,8 +16,8 @@ import org.springframework.web.context.WebApplicationContext; * @ContextConfiguration(classes = SpringJUnitWebConfigTest.Config.class ) * */ -@SpringJUnitWebConfig(SpringJUnitWebConfigTest.Config.class) -public class SpringJUnitWebConfigTest { +@SpringJUnitWebConfig(SpringJUnitWebConfigIntegrationTest.Config.class) +public class SpringJUnitWebConfigIntegrationTest { @Configuration static class Config { diff --git a/spring-boot-ops/README.md b/spring-boot-ops/README.md index 74eabd56e6..7de2fed24f 100644 --- a/spring-boot-ops/README.md +++ b/spring-boot-ops/README.md @@ -1,4 +1,12 @@ +### The Course +The "REST With Spring" Classes: http://bit.ly/restwithspring -### Relevant Articles: +### Relevant Articles: -- [Deploy a Spring Boot WAR into a Tomcat Server](http://www.baeldung.com/spring-boot-war-tomcat-deploy) \ No newline at end of file +- [Intro to Spring Boot Starters](http://www.baeldung.com/spring-boot-starters) +- [A Custom Data Binder in Spring MVC](http://www.baeldung.com/spring-mvc-custom-data-binder) +- [Introduction to WebJars](http://www.baeldung.com/maven-webjars) +- [A Quick Guide to Maven Wrapper](http://www.baeldung.com/maven-wrapper) +- [Shutdown a Spring Boot Application](http://www.baeldung.com/spring-boot-shutdown) +- [Create a Fat Jar App with Spring Boot](http://www.baeldung.com/deployable-fat-jar-spring-boot) +- [Spring Boot Dependency Management with a Custom Parent](http://www.baeldung.com/spring-boot-dependency-management-custom-parent) \ No newline at end of file diff --git a/spring-core/pom.xml b/spring-core/pom.xml index 93ff73bb37..032f2214d2 100644 --- a/spring-core/pom.xml +++ b/spring-core/pom.xml @@ -11,9 +11,9 @@ com.baeldung - parent-spring + parent-spring-4 0.0.1-SNAPSHOT - ../parent-spring + ../parent-spring-4 @@ -86,7 +86,6 @@ 1.10.19 1.4.4.RELEASE - 4.3.4.RELEASE 1 20.0 2.6 diff --git a/spring-data-elasticsearch/pom.xml b/spring-data-elasticsearch/pom.xml index 804cf23a69..386bd54ee8 100644 --- a/spring-data-elasticsearch/pom.xml +++ b/spring-data-elasticsearch/pom.xml @@ -9,16 +9,16 @@ com.baeldung - parent-spring + parent-spring-4 0.0.1-SNAPSHOT - ../parent-spring + ../parent-spring-4 org.springframework spring-core - ${org.springframework.version} + ${spring.version} commons-logging @@ -53,7 +53,7 @@ org.springframework spring-test - ${org.springframework.version} + ${spring.version} test @@ -80,7 +80,6 @@ UTF-8 1.8 1.8 - 4.3.4.RELEASE 2.0.5.RELEASE 4.2.2 2.4.2 diff --git a/spring-data-mongodb/pom.xml b/spring-data-mongodb/pom.xml index 24847aaec6..c3d1f74b4b 100644 --- a/spring-data-mongodb/pom.xml +++ b/spring-data-mongodb/pom.xml @@ -8,9 +8,9 @@ com.baeldung - parent-spring + parent-spring-4 0.0.1-SNAPSHOT - ../parent-spring + ../parent-spring-4 @@ -22,7 +22,7 @@ org.springframework spring-core - ${org.springframework.version} + ${spring.version} commons-logging @@ -33,7 +33,7 @@ org.springframework spring-test - ${org.springframework.version} + ${spring.version} test @@ -71,7 +71,6 @@ UTF-8 - 4.3.4.RELEASE 1.10.4.RELEASE 2.9.0 4.1.4 diff --git a/spring-dispatcher-servlet/pom.xml b/spring-dispatcher-servlet/pom.xml index 9fa02f157d..9dfd3c0f39 100644 --- a/spring-dispatcher-servlet/pom.xml +++ b/spring-dispatcher-servlet/pom.xml @@ -11,9 +11,9 @@ com.baeldung - parent-spring + parent-spring-4 0.0.1-SNAPSHOT - ../parent-spring + ../parent-spring-4 @@ -90,7 +90,6 @@
- 4.3.7.RELEASE 3.0-r1655215 3.0.0 diff --git a/spring-groovy/pom.xml b/spring-groovy/pom.xml index eec78d21a6..c9e28deee6 100644 --- a/spring-groovy/pom.xml +++ b/spring-groovy/pom.xml @@ -12,9 +12,9 @@ com.baeldung - parent-spring + parent-spring-4 0.0.1-SNAPSHOT - ../parent-spring + ../parent-spring-4 diff --git a/spring-mvc-simple/pom.xml b/spring-mvc-simple/pom.xml index 07d7221048..1464958865 100644 --- a/spring-mvc-simple/pom.xml +++ b/spring-mvc-simple/pom.xml @@ -9,9 +9,9 @@ com.baeldung - parent-spring + parent-spring-5 0.0.1-SNAPSHOT - ../parent-spring + ../parent-spring-5 @@ -48,7 +48,7 @@ org.springframework spring-webmvc - ${springframework.version} + ${spring.version} @@ -72,7 +72,7 @@ org.springframework spring-context-support - ${springframework.version} + ${spring.version} @@ -93,7 +93,7 @@ org.springframework spring-test - ${springframework.version} + ${spring.version} test @@ -159,7 +159,6 @@ 1.8 1.8 UTF-8 - 5.0.2.RELEASE 3.2.0 3.7.0 2.21.0 diff --git a/spring-mvc-tiles/pom.xml b/spring-mvc-tiles/pom.xml index 94908d5d8b..007f7c0844 100644 --- a/spring-mvc-tiles/pom.xml +++ b/spring-mvc-tiles/pom.xml @@ -10,9 +10,9 @@ com.baeldung - parent-spring + parent-spring-4 0.0.1-SNAPSHOT - ../parent-spring + ../parent-spring-4 @@ -20,7 +20,7 @@ org.springframework spring-core - ${springframework.version} + ${spring.version} commons-logging @@ -31,12 +31,12 @@ org.springframework spring-web - ${springframework.version} + ${spring.version} org.springframework spring-webmvc - ${springframework.version} + ${spring.version} @@ -83,7 +83,6 @@ - 4.3.4.RELEASE 3.0.7 3.1.0 2.3.1 diff --git a/spring-mvc-velocity/pom.xml b/spring-mvc-velocity/pom.xml index 07d7182b7d..330de252e7 100644 --- a/spring-mvc-velocity/pom.xml +++ b/spring-mvc-velocity/pom.xml @@ -10,9 +10,9 @@ com.baeldung - parent-spring + parent-spring-4 0.0.1-SNAPSHOT - ../parent-spring + ../parent-spring-4 @@ -125,9 +125,6 @@ - - 4.3.4.RELEASE - 1.6.6 diff --git a/spring-rest-embedded-tomcat/pom.xml b/spring-rest-embedded-tomcat/pom.xml index 9ab9b4b718..0bb947f96d 100644 --- a/spring-rest-embedded-tomcat/pom.xml +++ b/spring-rest-embedded-tomcat/pom.xml @@ -10,9 +10,9 @@ com.baeldung - parent-spring + parent-spring-5 0.0.1-SNAPSHOT - ../parent-spring + ../parent-spring-5 @@ -85,7 +85,6 @@ - 5.0.2.RELEASE 2.19.1 2.9.2 1.8 diff --git a/spring-security-mvc-custom/pom.xml b/spring-security-mvc-custom/pom.xml index a320f6b137..52ec1e4ef0 100644 --- a/spring-security-mvc-custom/pom.xml +++ b/spring-security-mvc-custom/pom.xml @@ -9,9 +9,9 @@ com.baeldung - parent-spring + parent-spring-4 0.0.1-SNAPSHOT - ../parent-spring + ../parent-spring-4 @@ -193,8 +193,7 @@ - 4.3.4.RELEASE - 4.2.0.RELEASE + 4.2.6.RELEASE 5.2.5.Final diff --git a/spring-security-mvc-digest-auth/pom.xml b/spring-security-mvc-digest-auth/pom.xml index 9387220b2a..a0a6a9647e 100644 --- a/spring-security-mvc-digest-auth/pom.xml +++ b/spring-security-mvc-digest-auth/pom.xml @@ -10,9 +10,9 @@ com.baeldung - parent-spring + parent-spring-4 0.0.1-SNAPSHOT - ../parent-spring + ../parent-spring-4 @@ -35,7 +35,7 @@ org.springframework spring-core - ${org.springframework.version} + ${spring.version} commons-logging @@ -46,55 +46,55 @@ org.springframework spring-context - ${org.springframework.version} + ${spring.version} org.springframework spring-jdbc - ${org.springframework.version} + ${spring.version} org.springframework spring-beans - ${org.springframework.version} + ${spring.version} org.springframework spring-aop - ${org.springframework.version} + ${spring.version} org.springframework spring-tx - ${org.springframework.version} + ${spring.version} org.springframework spring-expression - ${org.springframework.version} + ${spring.version} org.springframework spring-web - ${org.springframework.version} + ${spring.version} org.springframework spring-webmvc - ${org.springframework.version} + ${spring.version} org.springframework spring-oxm - ${org.springframework.version} + ${spring.version} org.springframework spring-web - ${org.springframework.version} + ${spring.version} @@ -149,7 +149,7 @@ org.springframework spring-test - ${org.springframework.version} + ${spring.version} test @@ -200,8 +200,7 @@ - 4.3.4.RELEASE - 4.2.0.RELEASE + 4.2.6.RELEASE 5.2.5.Final diff --git a/spring-security-mvc-login/pom.xml b/spring-security-mvc-login/pom.xml index ee11bf067c..6f4bd8c8e0 100644 --- a/spring-security-mvc-login/pom.xml +++ b/spring-security-mvc-login/pom.xml @@ -10,9 +10,9 @@ com.baeldung - parent-spring + parent-spring-4 0.0.1-SNAPSHOT - ../parent-spring + ../parent-spring-4 @@ -40,7 +40,7 @@ org.springframework spring-core - ${org.springframework.version} + ${spring.version} commons-logging @@ -51,43 +51,43 @@ org.springframework spring-context - ${org.springframework.version} + ${spring.version} org.springframework spring-jdbc - ${org.springframework.version} + ${spring.version} org.springframework spring-beans - ${org.springframework.version} + ${spring.version} org.springframework spring-aop - ${org.springframework.version} + ${spring.version} org.springframework spring-tx - ${org.springframework.version} + ${spring.version} org.springframework spring-expression - ${org.springframework.version} + ${spring.version} org.springframework spring-web - ${org.springframework.version} + ${spring.version} org.springframework spring-webmvc - ${org.springframework.version} + ${spring.version} @@ -111,7 +111,7 @@ org.springframework spring-test - ${org.springframework.version} + ${spring.version} test @@ -167,8 +167,7 @@ - 4.3.6.RELEASE - 4.2.1.RELEASE + 4.2.6.RELEASE 5.2.5.Final diff --git a/spring-security-mvc-persisted-remember-me/pom.xml b/spring-security-mvc-persisted-remember-me/pom.xml index 5c3ac4b7c4..f8fa4400c9 100644 --- a/spring-security-mvc-persisted-remember-me/pom.xml +++ b/spring-security-mvc-persisted-remember-me/pom.xml @@ -10,9 +10,9 @@ com.baeldung - parent-spring + parent-spring-4 0.0.1-SNAPSHOT - ../parent-spring + ../parent-spring-4 @@ -37,7 +37,7 @@ org.springframework spring-orm - ${org.springframework.version} + ${spring.version} @@ -45,7 +45,7 @@ org.springframework spring-core - ${org.springframework.version} + ${spring.version} commons-logging @@ -56,43 +56,43 @@ org.springframework spring-context - ${org.springframework.version} + ${spring.version} org.springframework spring-jdbc - ${org.springframework.version} + ${spring.version} org.springframework spring-beans - ${org.springframework.version} + ${spring.version} org.springframework spring-aop - ${org.springframework.version} + ${spring.version} org.springframework spring-tx - ${org.springframework.version} + ${spring.version} org.springframework spring-expression - ${org.springframework.version} + ${spring.version} org.springframework spring-web - ${org.springframework.version} + ${spring.version} org.springframework spring-webmvc - ${org.springframework.version} + ${spring.version} @@ -189,8 +189,7 @@ - 4.3.4.RELEASE - 4.2.0.RELEASE + 4.2.6.RELEASE 5.2.5.Final diff --git a/spring-security-mvc-session/pom.xml b/spring-security-mvc-session/pom.xml index 130778151f..da0bede349 100644 --- a/spring-security-mvc-session/pom.xml +++ b/spring-security-mvc-session/pom.xml @@ -10,9 +10,9 @@ com.baeldung - parent-spring + parent-spring-4 0.0.1-SNAPSHOT - ../parent-spring + ../parent-spring-4 @@ -40,7 +40,7 @@ org.springframework spring-core - ${org.springframework.version} + ${spring.version} commons-logging @@ -51,43 +51,43 @@ org.springframework spring-context - ${org.springframework.version} + ${spring.version} org.springframework spring-jdbc - ${org.springframework.version} + ${spring.version} org.springframework spring-beans - ${org.springframework.version} + ${spring.version} org.springframework spring-aop - ${org.springframework.version} + ${spring.version} org.springframework spring-tx - ${org.springframework.version} + ${spring.version} org.springframework spring-expression - ${org.springframework.version} + ${spring.version} org.springframework spring-web - ${org.springframework.version} + ${spring.version} org.springframework spring-webmvc - ${org.springframework.version} + ${spring.version} @@ -160,8 +160,7 @@ - 4.3.4.RELEASE - 4.2.0.RELEASE + 4.2.6.RELEASE 5.2.5.Final diff --git a/spring-security-mvc-socket/pom.xml b/spring-security-mvc-socket/pom.xml index 6168740cb7..5cd2c080d2 100644 --- a/spring-security-mvc-socket/pom.xml +++ b/spring-security-mvc-socket/pom.xml @@ -10,9 +10,9 @@ com.baeldung - parent-spring + parent-spring-4 0.0.1-SNAPSHOT - ../parent-spring + ../parent-spring-4 @@ -20,7 +20,7 @@ org.springframework spring-core - ${springframework.version} + ${spring.version} commons-logging @@ -31,7 +31,7 @@ org.springframework spring-web - ${springframework.version} + ${spring.version} commons-logging @@ -42,7 +42,7 @@ org.springframework spring-webmvc - ${springframework.version} + ${spring.version} commons-logging @@ -84,12 +84,12 @@ org.springframework spring-websocket - ${springframework.version} + ${spring.version} org.springframework spring-messaging - ${springframework.version} + ${spring.version} org.springframework.security @@ -174,8 +174,7 @@ - 4.3.8.RELEASE - 4.2.3.RELEASE + 4.2.6.RELEASE 2.8.7 1.7.25 5.2.10.Final diff --git a/spring-security-rest-basic-auth/pom.xml b/spring-security-rest-basic-auth/pom.xml index bed3cd033d..a30b783842 100644 --- a/spring-security-rest-basic-auth/pom.xml +++ b/spring-security-rest-basic-auth/pom.xml @@ -10,9 +10,9 @@ com.baeldung - parent-spring + parent-spring-4 0.0.1-SNAPSHOT - ../parent-spring + ../parent-spring-4 @@ -35,7 +35,7 @@ org.springframework spring-core - ${org.springframework.version} + ${spring.version} commons-logging @@ -46,49 +46,49 @@ org.springframework spring-context - ${org.springframework.version} + ${spring.version} org.springframework spring-jdbc - ${org.springframework.version} + ${spring.version} org.springframework spring-beans - ${org.springframework.version} + ${spring.version} org.springframework spring-aop - ${org.springframework.version} + ${spring.version} org.springframework spring-tx - ${org.springframework.version} + ${spring.version} org.springframework spring-expression - ${org.springframework.version} + ${spring.version} org.springframework spring-web - ${org.springframework.version} + ${spring.version} org.springframework spring-webmvc - ${org.springframework.version} + ${spring.version} org.springframework spring-oxm - ${org.springframework.version} + ${spring.version} @@ -166,7 +166,7 @@ org.springframework spring-test - ${org.springframework.version} + ${spring.version} test @@ -271,8 +271,7 @@ - 4.3.6.RELEASE - 4.2.1.RELEASE + 4.2.6.RELEASE 5.2.5.Final diff --git a/spring-security-rest/pom.xml b/spring-security-rest/pom.xml index e29012a3a5..e6721c9fc7 100644 --- a/spring-security-rest/pom.xml +++ b/spring-security-rest/pom.xml @@ -10,9 +10,9 @@ com.baeldung - parent-spring + parent-spring-4 0.0.1-SNAPSHOT - ../parent-spring + ../parent-spring-4 @@ -35,7 +35,7 @@ org.springframework spring-core - ${org.springframework.version} + ${spring.version} commons-logging @@ -46,43 +46,43 @@ org.springframework spring-context - ${org.springframework.version} + ${spring.version} org.springframework spring-jdbc - ${org.springframework.version} + ${spring.version} org.springframework spring-beans - ${org.springframework.version} + ${spring.version} org.springframework spring-aop - ${org.springframework.version} + ${spring.version} org.springframework spring-tx - ${org.springframework.version} + ${spring.version} org.springframework spring-expression - ${org.springframework.version} + ${spring.version} org.springframework spring-web - ${org.springframework.version} + ${spring.version} org.springframework spring-webmvc - ${org.springframework.version} + ${spring.version} @@ -138,7 +138,7 @@ org.springframework spring-test - ${org.springframework.version} + ${spring.version} test @@ -284,8 +284,7 @@ - 4.3.4.RELEASE - 4.2.0.RELEASE + 4.2.6.RELEASE 0.21.0.RELEASE diff --git a/spring-userservice/pom.xml b/spring-userservice/pom.xml index 872b8ed352..c372beaa3c 100644 --- a/spring-userservice/pom.xml +++ b/spring-userservice/pom.xml @@ -8,9 +8,9 @@ com.baeldung - parent-spring + parent-spring-4 0.0.1-SNAPSHOT - ../parent-spring + ../parent-spring-4 @@ -20,12 +20,12 @@ org.springframework spring-orm - ${org.springframework.version} + ${spring.version} org.springframework spring-context - ${org.springframework.version} + ${spring.version} @@ -100,14 +100,14 @@ org.springframework spring-test - ${org.springframework.version} + ${spring.version} test org.springframework spring-core - ${org.springframework.version} + ${spring.version} commons-logging @@ -118,12 +118,12 @@ org.springframework spring-web - ${org.springframework.version} + ${spring.version} org.springframework spring-webmvc - ${org.springframework.version} + ${spring.version} @@ -216,8 +216,7 @@ - 4.2.0.RELEASE - 4.3.4.RELEASE + 4.2.6.RELEASE 1.4.2.RELEASE 3.21.0-GA diff --git a/struts-2/pom.xml b/struts-2/pom.xml index bb23600446..51e5b9a55c 100644 --- a/struts-2/pom.xml +++ b/struts-2/pom.xml @@ -9,9 +9,9 @@ com.baeldung - parent-spring + parent-spring-4 0.0.1-SNAPSHOT - ../parent-spring + ../parent-spring-4 diff --git a/undertow/dependency-reduced-pom.xml b/undertow/dependency-reduced-pom.xml deleted file mode 100644 index a4a17f94d6..0000000000 --- a/undertow/dependency-reduced-pom.xml +++ /dev/null @@ -1,90 +0,0 @@ - - - - parent-modules - com.baeldung - 1.0.0-SNAPSHOT - - 4.0.0 - com.baeldung.undertow - undertow - undertow - 1.0-SNAPSHOT - http://maven.apache.org - - ${project.artifactId} - - - maven-shade-plugin - - - package - - shade - - - - - - maven-jar-plugin - - - - com.baeldung.undertow.SimpleServer - - - - - - - - - junit - junit - 4.12 - test - - - org.hamcrest - hamcrest-core - 1.3 - test - - - org.hamcrest - hamcrest-library - 1.3 - test - - - org.hamcrest - hamcrest-all - 1.3 - test - - - org.mockito - mockito-core - 2.8.9 - test - - - byte-buddy - net.bytebuddy - - - byte-buddy-agent - net.bytebuddy - - - objenesis - org.objenesis - - - - - - 1.8 - 1.8 - - From efd8b187909044e92b068e296ecc135344f178af Mon Sep 17 00:00:00 2001 From: KevinGilmore Date: Sat, 2 Jun 2018 14:22:41 -0500 Subject: [PATCH 22/55] Add link to article (#4391) * BAEL-1612: Update README * BAEL-1562: Update README * BAEL-1562: Update README * BAEL-1679: Update README * BAEL-1701: Update README * Added article links to README files * BAEL-1787 update README * BAEL-1399: add article link to README --- core-kotlin/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/core-kotlin/README.md b/core-kotlin/README.md index 9f3f0bf561..7fcdc68429 100644 --- a/core-kotlin/README.md +++ b/core-kotlin/README.md @@ -29,3 +29,4 @@ - [Writing to a File in Kotlin](http://www.baeldung.com/kotlin-write-file) - [Lambda Expressions in Kotlin](http://www.baeldung.com/kotlin-lambda-expressions) - [Writing Specifications with Kotlin and Spek](http://www.baeldung.com/kotlin-spek) +- [Processing JSON with Kotlin and Klaxson](http://www.baeldung.com/kotlin-json-klaxson) From a673f2d809b25faa4797b9856b1912c00b1b261e Mon Sep 17 00:00:00 2001 From: Loredana Crusoveanu Date: Sat, 2 Jun 2018 23:14:27 +0300 Subject: [PATCH 23/55] fix package name --- .../baeldung/annotation/CascadeSave.java | 2 +- .../{org => com}/baeldung/config/MongoConfig.java | 12 ++++++------ .../baeldung/config/SimpleMongoConfig.java | 4 ++-- .../baeldung/converter/UserWriterConverter.java | 4 ++-- .../{org => com}/baeldung/event/CascadeCallback.java | 4 ++-- .../event/CascadeSaveMongoEventListener.java | 2 +- .../{org => com}/baeldung/event/FieldCallback.java | 2 +- .../event/UserCascadeSaveMongoEventListener.java | 4 ++-- .../{org => com}/baeldung/model/EmailAddress.java | 2 +- .../main/java/{org => com}/baeldung/model/User.java | 4 ++-- .../baeldung/repository/UserRepository.java | 4 ++-- .../aggregation/ZipsAggregationLiveTest.java | 6 +++--- .../baeldung/aggregation/model/StatePopulation.java | 2 +- .../{org => com}/baeldung/gridfs/GridFSLiveTest.java | 2 +- .../mongotemplate/DocumentQueryLiveTest.java | 8 ++++---- .../MongoTemplateProjectionLiveTest.java | 6 +++--- .../mongotemplate/MongoTemplateQueryLiveTest.java | 8 ++++---- .../baeldung/repository/BaseQueryLiveTest.java | 6 +++--- .../baeldung/repository/DSLQueryLiveTest.java | 8 ++++---- .../baeldung/repository/JSONQueryLiveTest.java | 6 +++--- .../baeldung/repository/QueryMethodsLiveTest.java | 6 +++--- .../baeldung/repository/UserRepositoryLiveTest.java | 6 +++--- .../repository/UserRepositoryProjectionLiveTest.java | 6 +++--- 23 files changed, 57 insertions(+), 57 deletions(-) rename spring-data-mongodb/src/main/java/{org => com}/baeldung/annotation/CascadeSave.java (88%) rename spring-data-mongodb/src/main/java/{org => com}/baeldung/config/MongoConfig.java (84%) rename spring-data-mongodb/src/main/java/{org => com}/baeldung/config/SimpleMongoConfig.java (86%) rename spring-data-mongodb/src/main/java/{org => com}/baeldung/converter/UserWriterConverter.java (92%) rename spring-data-mongodb/src/main/java/{org => com}/baeldung/event/CascadeCallback.java (95%) rename spring-data-mongodb/src/main/java/{org => com}/baeldung/event/CascadeSaveMongoEventListener.java (96%) rename spring-data-mongodb/src/main/java/{org => com}/baeldung/event/FieldCallback.java (95%) rename spring-data-mongodb/src/main/java/{org => com}/baeldung/event/UserCascadeSaveMongoEventListener.java (92%) rename spring-data-mongodb/src/main/java/{org => com}/baeldung/model/EmailAddress.java (94%) rename spring-data-mongodb/src/main/java/{org => com}/baeldung/model/User.java (96%) rename spring-data-mongodb/src/main/java/{org => com}/baeldung/repository/UserRepository.java (94%) rename spring-data-mongodb/src/test/java/{org => com}/baeldung/aggregation/ZipsAggregationLiveTest.java (97%) rename spring-data-mongodb/src/test/java/{org => com}/baeldung/aggregation/model/StatePopulation.java (95%) rename spring-data-mongodb/src/test/java/{org => com}/baeldung/gridfs/GridFSLiveTest.java (99%) rename spring-data-mongodb/src/test/java/{org => com}/baeldung/mongotemplate/DocumentQueryLiveTest.java (97%) rename spring-data-mongodb/src/test/java/{org => com}/baeldung/mongotemplate/MongoTemplateProjectionLiveTest.java (94%) rename spring-data-mongodb/src/test/java/{org => com}/baeldung/mongotemplate/MongoTemplateQueryLiveTest.java (97%) rename spring-data-mongodb/src/test/java/{org => com}/baeldung/repository/BaseQueryLiveTest.java (83%) rename spring-data-mongodb/src/test/java/{org => com}/baeldung/repository/DSLQueryLiveTest.java (95%) rename spring-data-mongodb/src/test/java/{org => com}/baeldung/repository/JSONQueryLiveTest.java (96%) rename spring-data-mongodb/src/test/java/{org => com}/baeldung/repository/QueryMethodsLiveTest.java (96%) rename spring-data-mongodb/src/test/java/{org => com}/baeldung/repository/UserRepositoryLiveTest.java (97%) rename spring-data-mongodb/src/test/java/{org => com}/baeldung/repository/UserRepositoryProjectionLiveTest.java (93%) diff --git a/spring-data-mongodb/src/main/java/org/baeldung/annotation/CascadeSave.java b/spring-data-mongodb/src/main/java/com/baeldung/annotation/CascadeSave.java similarity index 88% rename from spring-data-mongodb/src/main/java/org/baeldung/annotation/CascadeSave.java rename to spring-data-mongodb/src/main/java/com/baeldung/annotation/CascadeSave.java index aae0214d09..3e43221aff 100644 --- a/spring-data-mongodb/src/main/java/org/baeldung/annotation/CascadeSave.java +++ b/spring-data-mongodb/src/main/java/com/baeldung/annotation/CascadeSave.java @@ -1,4 +1,4 @@ -package org.baeldung.annotation; +package com.baeldung.annotation; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; diff --git a/spring-data-mongodb/src/main/java/org/baeldung/config/MongoConfig.java b/spring-data-mongodb/src/main/java/com/baeldung/config/MongoConfig.java similarity index 84% rename from spring-data-mongodb/src/main/java/org/baeldung/config/MongoConfig.java rename to spring-data-mongodb/src/main/java/com/baeldung/config/MongoConfig.java index 80b177f4c9..551a9142a6 100644 --- a/spring-data-mongodb/src/main/java/org/baeldung/config/MongoConfig.java +++ b/spring-data-mongodb/src/main/java/com/baeldung/config/MongoConfig.java @@ -1,10 +1,10 @@ -package org.baeldung.config; +package com.baeldung.config; import com.mongodb.Mongo; import com.mongodb.MongoClient; -import org.baeldung.converter.UserWriterConverter; -import org.baeldung.event.CascadeSaveMongoEventListener; -import org.baeldung.event.UserCascadeSaveMongoEventListener; +import com.baeldung.converter.UserWriterConverter; +import com.baeldung.event.CascadeSaveMongoEventListener; +import com.baeldung.event.UserCascadeSaveMongoEventListener; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.core.convert.converter.Converter; @@ -17,7 +17,7 @@ import java.util.ArrayList; import java.util.List; @Configuration -@EnableMongoRepositories(basePackages = "org.baeldung.repository") +@EnableMongoRepositories(basePackages = "com.baeldung.repository") public class MongoConfig extends AbstractMongoConfiguration { private final List> converters = new ArrayList>(); @@ -34,7 +34,7 @@ public class MongoConfig extends AbstractMongoConfiguration { @Override public String getMappingBasePackage() { - return "org.baeldung"; + return "com.baeldung"; } @Bean diff --git a/spring-data-mongodb/src/main/java/org/baeldung/config/SimpleMongoConfig.java b/spring-data-mongodb/src/main/java/com/baeldung/config/SimpleMongoConfig.java similarity index 86% rename from spring-data-mongodb/src/main/java/org/baeldung/config/SimpleMongoConfig.java rename to spring-data-mongodb/src/main/java/com/baeldung/config/SimpleMongoConfig.java index 9653796d8d..95f192811f 100644 --- a/spring-data-mongodb/src/main/java/org/baeldung/config/SimpleMongoConfig.java +++ b/spring-data-mongodb/src/main/java/com/baeldung/config/SimpleMongoConfig.java @@ -1,4 +1,4 @@ -package org.baeldung.config; +package com.baeldung.config; import com.mongodb.Mongo; import com.mongodb.MongoClient; @@ -8,7 +8,7 @@ import org.springframework.data.mongodb.core.MongoTemplate; import org.springframework.data.mongodb.repository.config.EnableMongoRepositories; @Configuration -@EnableMongoRepositories(basePackages = "org.baeldung.repository") +@EnableMongoRepositories(basePackages = "com.baeldung.repository") public class SimpleMongoConfig { @Bean diff --git a/spring-data-mongodb/src/main/java/org/baeldung/converter/UserWriterConverter.java b/spring-data-mongodb/src/main/java/com/baeldung/converter/UserWriterConverter.java similarity index 92% rename from spring-data-mongodb/src/main/java/org/baeldung/converter/UserWriterConverter.java rename to spring-data-mongodb/src/main/java/com/baeldung/converter/UserWriterConverter.java index 4a6970489e..542ebb2c85 100644 --- a/spring-data-mongodb/src/main/java/org/baeldung/converter/UserWriterConverter.java +++ b/spring-data-mongodb/src/main/java/com/baeldung/converter/UserWriterConverter.java @@ -1,8 +1,8 @@ -package org.baeldung.converter; +package com.baeldung.converter; import com.mongodb.BasicDBObject; import com.mongodb.DBObject; -import org.baeldung.model.User; +import com.baeldung.model.User; import org.springframework.core.convert.converter.Converter; import org.springframework.stereotype.Component; diff --git a/spring-data-mongodb/src/main/java/org/baeldung/event/CascadeCallback.java b/spring-data-mongodb/src/main/java/com/baeldung/event/CascadeCallback.java similarity index 95% rename from spring-data-mongodb/src/main/java/org/baeldung/event/CascadeCallback.java rename to spring-data-mongodb/src/main/java/com/baeldung/event/CascadeCallback.java index 94cad4566a..6ce5747793 100644 --- a/spring-data-mongodb/src/main/java/org/baeldung/event/CascadeCallback.java +++ b/spring-data-mongodb/src/main/java/com/baeldung/event/CascadeCallback.java @@ -1,8 +1,8 @@ -package org.baeldung.event; +package com.baeldung.event; import java.lang.reflect.Field; -import org.baeldung.annotation.CascadeSave; +import com.baeldung.annotation.CascadeSave; import org.springframework.data.mongodb.core.MongoOperations; import org.springframework.data.mongodb.core.mapping.DBRef; import org.springframework.util.ReflectionUtils; diff --git a/spring-data-mongodb/src/main/java/org/baeldung/event/CascadeSaveMongoEventListener.java b/spring-data-mongodb/src/main/java/com/baeldung/event/CascadeSaveMongoEventListener.java similarity index 96% rename from spring-data-mongodb/src/main/java/org/baeldung/event/CascadeSaveMongoEventListener.java rename to spring-data-mongodb/src/main/java/com/baeldung/event/CascadeSaveMongoEventListener.java index acc377011d..499e727a90 100644 --- a/spring-data-mongodb/src/main/java/org/baeldung/event/CascadeSaveMongoEventListener.java +++ b/spring-data-mongodb/src/main/java/com/baeldung/event/CascadeSaveMongoEventListener.java @@ -1,4 +1,4 @@ -package org.baeldung.event; +package com.baeldung.event; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.mongodb.core.MongoOperations; diff --git a/spring-data-mongodb/src/main/java/org/baeldung/event/FieldCallback.java b/spring-data-mongodb/src/main/java/com/baeldung/event/FieldCallback.java similarity index 95% rename from spring-data-mongodb/src/main/java/org/baeldung/event/FieldCallback.java rename to spring-data-mongodb/src/main/java/com/baeldung/event/FieldCallback.java index c6bd90d4f3..5e478270c1 100644 --- a/spring-data-mongodb/src/main/java/org/baeldung/event/FieldCallback.java +++ b/spring-data-mongodb/src/main/java/com/baeldung/event/FieldCallback.java @@ -1,4 +1,4 @@ -package org.baeldung.event; +package com.baeldung.event; import java.lang.reflect.Field; diff --git a/spring-data-mongodb/src/main/java/org/baeldung/event/UserCascadeSaveMongoEventListener.java b/spring-data-mongodb/src/main/java/com/baeldung/event/UserCascadeSaveMongoEventListener.java similarity index 92% rename from spring-data-mongodb/src/main/java/org/baeldung/event/UserCascadeSaveMongoEventListener.java rename to spring-data-mongodb/src/main/java/com/baeldung/event/UserCascadeSaveMongoEventListener.java index ade20bcc1d..832e3563f9 100644 --- a/spring-data-mongodb/src/main/java/org/baeldung/event/UserCascadeSaveMongoEventListener.java +++ b/spring-data-mongodb/src/main/java/com/baeldung/event/UserCascadeSaveMongoEventListener.java @@ -1,6 +1,6 @@ -package org.baeldung.event; +package com.baeldung.event; -import org.baeldung.model.User; +import com.baeldung.model.User; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.mongodb.core.MongoOperations; import org.springframework.data.mongodb.core.mapping.event.AbstractMongoEventListener; diff --git a/spring-data-mongodb/src/main/java/org/baeldung/model/EmailAddress.java b/spring-data-mongodb/src/main/java/com/baeldung/model/EmailAddress.java similarity index 94% rename from spring-data-mongodb/src/main/java/org/baeldung/model/EmailAddress.java rename to spring-data-mongodb/src/main/java/com/baeldung/model/EmailAddress.java index 6db7d160d7..13fe340f69 100644 --- a/spring-data-mongodb/src/main/java/org/baeldung/model/EmailAddress.java +++ b/spring-data-mongodb/src/main/java/com/baeldung/model/EmailAddress.java @@ -1,4 +1,4 @@ -package org.baeldung.model; +package com.baeldung.model; import org.springframework.data.annotation.Id; import org.springframework.data.mongodb.core.mapping.Document; diff --git a/spring-data-mongodb/src/main/java/org/baeldung/model/User.java b/spring-data-mongodb/src/main/java/com/baeldung/model/User.java similarity index 96% rename from spring-data-mongodb/src/main/java/org/baeldung/model/User.java rename to spring-data-mongodb/src/main/java/com/baeldung/model/User.java index 9b8c47a58f..1bbe49ee1d 100644 --- a/spring-data-mongodb/src/main/java/org/baeldung/model/User.java +++ b/spring-data-mongodb/src/main/java/com/baeldung/model/User.java @@ -1,6 +1,6 @@ -package org.baeldung.model; +package com.baeldung.model; -import org.baeldung.annotation.CascadeSave; +import com.baeldung.annotation.CascadeSave; import org.springframework.beans.factory.annotation.Value; import org.springframework.data.annotation.Id; import org.springframework.data.annotation.PersistenceConstructor; diff --git a/spring-data-mongodb/src/main/java/org/baeldung/repository/UserRepository.java b/spring-data-mongodb/src/main/java/com/baeldung/repository/UserRepository.java similarity index 94% rename from spring-data-mongodb/src/main/java/org/baeldung/repository/UserRepository.java rename to spring-data-mongodb/src/main/java/com/baeldung/repository/UserRepository.java index 8e442e8b7f..e9dc0f5c95 100644 --- a/spring-data-mongodb/src/main/java/org/baeldung/repository/UserRepository.java +++ b/spring-data-mongodb/src/main/java/com/baeldung/repository/UserRepository.java @@ -1,6 +1,6 @@ -package org.baeldung.repository; +package com.baeldung.repository; -import org.baeldung.model.User; +import com.baeldung.model.User; import org.springframework.data.mongodb.repository.MongoRepository; import org.springframework.data.mongodb.repository.Query; import org.springframework.data.querydsl.QueryDslPredicateExecutor; diff --git a/spring-data-mongodb/src/test/java/org/baeldung/aggregation/ZipsAggregationLiveTest.java b/spring-data-mongodb/src/test/java/com/baeldung/aggregation/ZipsAggregationLiveTest.java similarity index 97% rename from spring-data-mongodb/src/test/java/org/baeldung/aggregation/ZipsAggregationLiveTest.java rename to spring-data-mongodb/src/test/java/com/baeldung/aggregation/ZipsAggregationLiveTest.java index 5686465c19..a4bea45fcf 100644 --- a/spring-data-mongodb/src/test/java/org/baeldung/aggregation/ZipsAggregationLiveTest.java +++ b/spring-data-mongodb/src/test/java/com/baeldung/aggregation/ZipsAggregationLiveTest.java @@ -1,12 +1,12 @@ -package org.baeldung.aggregation; +package com.baeldung.aggregation; import com.mongodb.DB; import com.mongodb.DBCollection; import com.mongodb.DBObject; import com.mongodb.MongoClient; import com.mongodb.util.JSON; -import org.baeldung.aggregation.model.StatePopulation; -import org.baeldung.config.MongoConfig; +import com.baeldung.aggregation.model.StatePopulation; +import com.baeldung.config.MongoConfig; import org.junit.AfterClass; import org.junit.BeforeClass; import org.junit.Test; diff --git a/spring-data-mongodb/src/test/java/org/baeldung/aggregation/model/StatePopulation.java b/spring-data-mongodb/src/test/java/com/baeldung/aggregation/model/StatePopulation.java similarity index 95% rename from spring-data-mongodb/src/test/java/org/baeldung/aggregation/model/StatePopulation.java rename to spring-data-mongodb/src/test/java/com/baeldung/aggregation/model/StatePopulation.java index 6a3cd0d426..be77783439 100644 --- a/spring-data-mongodb/src/test/java/org/baeldung/aggregation/model/StatePopulation.java +++ b/spring-data-mongodb/src/test/java/com/baeldung/aggregation/model/StatePopulation.java @@ -1,4 +1,4 @@ -package org.baeldung.aggregation.model; +package com.baeldung.aggregation.model; import org.springframework.data.annotation.Id; diff --git a/spring-data-mongodb/src/test/java/org/baeldung/gridfs/GridFSLiveTest.java b/spring-data-mongodb/src/test/java/com/baeldung/gridfs/GridFSLiveTest.java similarity index 99% rename from spring-data-mongodb/src/test/java/org/baeldung/gridfs/GridFSLiveTest.java rename to spring-data-mongodb/src/test/java/com/baeldung/gridfs/GridFSLiveTest.java index 88205ba7fd..02485e8517 100644 --- a/spring-data-mongodb/src/test/java/org/baeldung/gridfs/GridFSLiveTest.java +++ b/spring-data-mongodb/src/test/java/com/baeldung/gridfs/GridFSLiveTest.java @@ -1,4 +1,4 @@ -package org.baeldung.gridfs; +package com.baeldung.gridfs; import com.mongodb.BasicDBObject; import com.mongodb.DBObject; diff --git a/spring-data-mongodb/src/test/java/org/baeldung/mongotemplate/DocumentQueryLiveTest.java b/spring-data-mongodb/src/test/java/com/baeldung/mongotemplate/DocumentQueryLiveTest.java similarity index 97% rename from spring-data-mongodb/src/test/java/org/baeldung/mongotemplate/DocumentQueryLiveTest.java rename to spring-data-mongodb/src/test/java/com/baeldung/mongotemplate/DocumentQueryLiveTest.java index 729b0f6dfa..7a61f9f98a 100644 --- a/spring-data-mongodb/src/test/java/org/baeldung/mongotemplate/DocumentQueryLiveTest.java +++ b/spring-data-mongodb/src/test/java/com/baeldung/mongotemplate/DocumentQueryLiveTest.java @@ -1,8 +1,8 @@ -package org.baeldung.mongotemplate; +package com.baeldung.mongotemplate; -import org.baeldung.config.MongoConfig; -import org.baeldung.model.EmailAddress; -import org.baeldung.model.User; +import com.baeldung.config.MongoConfig; +import com.baeldung.model.EmailAddress; +import com.baeldung.model.User; import org.junit.After; import org.junit.Before; import org.junit.Test; diff --git a/spring-data-mongodb/src/test/java/org/baeldung/mongotemplate/MongoTemplateProjectionLiveTest.java b/spring-data-mongodb/src/test/java/com/baeldung/mongotemplate/MongoTemplateProjectionLiveTest.java similarity index 94% rename from spring-data-mongodb/src/test/java/org/baeldung/mongotemplate/MongoTemplateProjectionLiveTest.java rename to spring-data-mongodb/src/test/java/com/baeldung/mongotemplate/MongoTemplateProjectionLiveTest.java index 2d2117afbb..309f14e995 100644 --- a/spring-data-mongodb/src/test/java/org/baeldung/mongotemplate/MongoTemplateProjectionLiveTest.java +++ b/spring-data-mongodb/src/test/java/com/baeldung/mongotemplate/MongoTemplateProjectionLiveTest.java @@ -1,7 +1,7 @@ -package org.baeldung.mongotemplate; +package com.baeldung.mongotemplate; -import org.baeldung.config.SimpleMongoConfig; -import org.baeldung.model.User; +import com.baeldung.config.SimpleMongoConfig; +import com.baeldung.model.User; import org.junit.After; import org.junit.Before; import org.junit.Test; diff --git a/spring-data-mongodb/src/test/java/org/baeldung/mongotemplate/MongoTemplateQueryLiveTest.java b/spring-data-mongodb/src/test/java/com/baeldung/mongotemplate/MongoTemplateQueryLiveTest.java similarity index 97% rename from spring-data-mongodb/src/test/java/org/baeldung/mongotemplate/MongoTemplateQueryLiveTest.java rename to spring-data-mongodb/src/test/java/com/baeldung/mongotemplate/MongoTemplateQueryLiveTest.java index b7ce0cafae..ee1d4f4760 100644 --- a/spring-data-mongodb/src/test/java/org/baeldung/mongotemplate/MongoTemplateQueryLiveTest.java +++ b/spring-data-mongodb/src/test/java/com/baeldung/mongotemplate/MongoTemplateQueryLiveTest.java @@ -1,8 +1,8 @@ -package org.baeldung.mongotemplate; +package com.baeldung.mongotemplate; -import org.baeldung.config.MongoConfig; -import org.baeldung.model.EmailAddress; -import org.baeldung.model.User; +import com.baeldung.config.MongoConfig; +import com.baeldung.model.EmailAddress; +import com.baeldung.model.User; import org.junit.After; import org.junit.Before; import org.junit.Test; diff --git a/spring-data-mongodb/src/test/java/org/baeldung/repository/BaseQueryLiveTest.java b/spring-data-mongodb/src/test/java/com/baeldung/repository/BaseQueryLiveTest.java similarity index 83% rename from spring-data-mongodb/src/test/java/org/baeldung/repository/BaseQueryLiveTest.java rename to spring-data-mongodb/src/test/java/com/baeldung/repository/BaseQueryLiveTest.java index afd7259c6c..e4849181e5 100644 --- a/spring-data-mongodb/src/test/java/org/baeldung/repository/BaseQueryLiveTest.java +++ b/spring-data-mongodb/src/test/java/com/baeldung/repository/BaseQueryLiveTest.java @@ -1,7 +1,7 @@ -package org.baeldung.repository; +package com.baeldung.repository; -import org.baeldung.model.User; -import org.baeldung.repository.UserRepository; +import com.baeldung.model.User; +import com.baeldung.repository.UserRepository; import org.junit.After; import org.junit.Before; import org.springframework.beans.factory.annotation.Autowired; diff --git a/spring-data-mongodb/src/test/java/org/baeldung/repository/DSLQueryLiveTest.java b/spring-data-mongodb/src/test/java/com/baeldung/repository/DSLQueryLiveTest.java similarity index 95% rename from spring-data-mongodb/src/test/java/org/baeldung/repository/DSLQueryLiveTest.java rename to spring-data-mongodb/src/test/java/com/baeldung/repository/DSLQueryLiveTest.java index 5924dea9fe..f87ca5cbb5 100644 --- a/spring-data-mongodb/src/test/java/org/baeldung/repository/DSLQueryLiveTest.java +++ b/spring-data-mongodb/src/test/java/com/baeldung/repository/DSLQueryLiveTest.java @@ -1,13 +1,13 @@ -package org.baeldung.repository; +package com.baeldung.repository; import static org.hamcrest.CoreMatchers.is; import static org.junit.Assert.assertThat; import java.util.List; -import org.baeldung.config.MongoConfig; -import org.baeldung.model.QUser; -import org.baeldung.model.User; +import com.baeldung.config.MongoConfig; +import com.baeldung.model.QUser; +import com.baeldung.model.User; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.test.context.ContextConfiguration; diff --git a/spring-data-mongodb/src/test/java/org/baeldung/repository/JSONQueryLiveTest.java b/spring-data-mongodb/src/test/java/com/baeldung/repository/JSONQueryLiveTest.java similarity index 96% rename from spring-data-mongodb/src/test/java/org/baeldung/repository/JSONQueryLiveTest.java rename to spring-data-mongodb/src/test/java/com/baeldung/repository/JSONQueryLiveTest.java index 9464a4eb52..4e99c0b140 100644 --- a/spring-data-mongodb/src/test/java/org/baeldung/repository/JSONQueryLiveTest.java +++ b/spring-data-mongodb/src/test/java/com/baeldung/repository/JSONQueryLiveTest.java @@ -1,12 +1,12 @@ -package org.baeldung.repository; +package com.baeldung.repository; import static org.hamcrest.CoreMatchers.is; import static org.junit.Assert.assertThat; import java.util.List; -import org.baeldung.config.MongoConfig; -import org.baeldung.model.User; +import com.baeldung.config.MongoConfig; +import com.baeldung.model.User; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.test.context.ContextConfiguration; diff --git a/spring-data-mongodb/src/test/java/org/baeldung/repository/QueryMethodsLiveTest.java b/spring-data-mongodb/src/test/java/com/baeldung/repository/QueryMethodsLiveTest.java similarity index 96% rename from spring-data-mongodb/src/test/java/org/baeldung/repository/QueryMethodsLiveTest.java rename to spring-data-mongodb/src/test/java/com/baeldung/repository/QueryMethodsLiveTest.java index 5705c119b8..47e67a6b4c 100644 --- a/spring-data-mongodb/src/test/java/org/baeldung/repository/QueryMethodsLiveTest.java +++ b/spring-data-mongodb/src/test/java/com/baeldung/repository/QueryMethodsLiveTest.java @@ -1,12 +1,12 @@ -package org.baeldung.repository; +package com.baeldung.repository; import static org.hamcrest.CoreMatchers.is; import static org.junit.Assert.assertThat; import java.util.List; -import org.baeldung.config.MongoConfig; -import org.baeldung.model.User; +import com.baeldung.config.MongoConfig; +import com.baeldung.model.User; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.test.context.ContextConfiguration; diff --git a/spring-data-mongodb/src/test/java/org/baeldung/repository/UserRepositoryLiveTest.java b/spring-data-mongodb/src/test/java/com/baeldung/repository/UserRepositoryLiveTest.java similarity index 97% rename from spring-data-mongodb/src/test/java/org/baeldung/repository/UserRepositoryLiveTest.java rename to spring-data-mongodb/src/test/java/com/baeldung/repository/UserRepositoryLiveTest.java index 1543b847ba..da4e91baec 100644 --- a/spring-data-mongodb/src/test/java/org/baeldung/repository/UserRepositoryLiveTest.java +++ b/spring-data-mongodb/src/test/java/com/baeldung/repository/UserRepositoryLiveTest.java @@ -1,12 +1,12 @@ -package org.baeldung.repository; +package com.baeldung.repository; import static org.hamcrest.CoreMatchers.is; import static org.junit.Assert.assertThat; import java.util.List; -import org.baeldung.config.MongoConfig; -import org.baeldung.model.User; +import com.baeldung.config.MongoConfig; +import com.baeldung.model.User; import org.junit.After; import org.junit.Before; import org.junit.Test; diff --git a/spring-data-mongodb/src/test/java/org/baeldung/repository/UserRepositoryProjectionLiveTest.java b/spring-data-mongodb/src/test/java/com/baeldung/repository/UserRepositoryProjectionLiveTest.java similarity index 93% rename from spring-data-mongodb/src/test/java/org/baeldung/repository/UserRepositoryProjectionLiveTest.java rename to spring-data-mongodb/src/test/java/com/baeldung/repository/UserRepositoryProjectionLiveTest.java index 5436896f08..80f4275794 100644 --- a/spring-data-mongodb/src/test/java/org/baeldung/repository/UserRepositoryProjectionLiveTest.java +++ b/spring-data-mongodb/src/test/java/com/baeldung/repository/UserRepositoryProjectionLiveTest.java @@ -1,9 +1,9 @@ -package org.baeldung.repository; +package com.baeldung.repository; import static org.junit.Assert.*; -import org.baeldung.config.MongoConfig; -import org.baeldung.model.User; +import com.baeldung.config.MongoConfig; +import com.baeldung.model.User; import org.junit.After; import org.junit.Before; import org.junit.Test; From 3f9cf77272e56b784f9adc71b2a6bf86fa2d6aab Mon Sep 17 00:00:00 2001 From: Seun Matt Date: Sun, 3 Jun 2018 06:13:07 +0100 Subject: [PATCH 24/55] Example Code for BAEL-1425 (#4394) * added example code for Java mail * added examp code for BAEL-1425 * updated example code for BAEL-1425 --- core-java/pom.xml | 5 ++ libraries/pom.xml | 13 +++ .../com/baeldung/commons/math3/Histogram.java | 90 +++++++++++++++++++ 3 files changed, 108 insertions(+) create mode 100644 libraries/src/main/java/com/baeldung/commons/math3/Histogram.java diff --git a/core-java/pom.xml b/core-java/pom.xml index 88fae5edea..f7a2139d99 100644 --- a/core-java/pom.xml +++ b/core-java/pom.xml @@ -198,6 +198,11 @@ mail ${javax.mail.version} + + javax.mail + mail + 1.5.0-b01 + diff --git a/libraries/pom.xml b/libraries/pom.xml index 678ba3279c..4f90d63d93 100644 --- a/libraries/pom.xml +++ b/libraries/pom.xml @@ -698,6 +698,17 @@ jctools-core ${jctools.version} + + + org.apache.commons + commons-math3 + ${common-math3-version} + + + org.knowm.xchart + xchart + ${xchart-version} + @@ -910,6 +921,8 @@ 0.9.4.0006L 2.1.2 2.5.11 + 3.6.1 + 3.5.2 \ No newline at end of file diff --git a/libraries/src/main/java/com/baeldung/commons/math3/Histogram.java b/libraries/src/main/java/com/baeldung/commons/math3/Histogram.java new file mode 100644 index 0000000000..63cc4514c0 --- /dev/null +++ b/libraries/src/main/java/com/baeldung/commons/math3/Histogram.java @@ -0,0 +1,90 @@ +package com.baeldung.commons.math3; + +import org.apache.commons.math3.stat.Frequency; +import org.knowm.xchart.CategoryChart; +import org.knowm.xchart.CategoryChartBuilder; +import org.knowm.xchart.SwingWrapper; +import org.knowm.xchart.style.Styler; + +import java.util.*; + +public class Histogram { + + public Histogram() { + + Map distributionMap = processRawData(); + List yData = new ArrayList(); + yData.addAll(distributionMap.values()); + List xData = Arrays.asList(distributionMap.keySet().toArray()); + + CategoryChart chart = buildChart(xData, yData); + new SwingWrapper<>(chart).displayChart(); + + } + + private CategoryChart buildChart(List xData, List yData) { + + // Create Chart + CategoryChart chart = new CategoryChartBuilder().width(800).height(600) + .title("Age Distribution") + .xAxisTitle("Age Group") + .yAxisTitle("Frequency") + .build(); + + chart.getStyler().setLegendPosition(Styler.LegendPosition.InsideNW); + chart.getStyler().setAvailableSpaceFill(0.99); + chart.getStyler().setOverlapped(true); + + chart.addSeries("age group", xData, yData); + + return chart; + } + + private Map processRawData() { + + List datasetList = Arrays.asList(36, 25, 38, 46, 55, 68, 72, 55, 36, 38, 67, 45, 22, 48, 91, 46, 52, 61, 58, 55); + Frequency frequency = new Frequency(); + datasetList.forEach(d -> frequency.addValue(Double.parseDouble(d.toString()))); + + int classWidth = 10; + + Map distributionMap = new TreeMap(); + List processed = new ArrayList(); + datasetList.forEach(d -> { + + double observation = Double.parseDouble(d.toString()); + + if(processed.contains(observation)) + return; + + long observationFrequency = frequency.getCount(observation); + int upperBoundary = (observation > classWidth) ? Math.multiplyExact( (int) Math.ceil(observation / classWidth), classWidth) : classWidth; + int lowerBoundary = (upperBoundary > classWidth) ? Math.subtractExact(upperBoundary, classWidth) : 0; + String bin = lowerBoundary + "-" + upperBoundary; + + int prevUpperBoundary = lowerBoundary; + int prevLowerBoundary = (lowerBoundary > classWidth) ? lowerBoundary - classWidth : 0; + String prevBin = prevLowerBoundary + "-" + prevUpperBoundary; + if(!distributionMap.containsKey(prevBin)) + distributionMap.put(prevBin, 0); + + if(!distributionMap.containsKey(bin)) { + distributionMap.put(bin, observationFrequency); + } + else { + long oldFrequency = Long.parseLong(distributionMap.get(bin).toString()); + distributionMap.replace(bin, oldFrequency + observationFrequency); + } + + processed.add(observation); + + }); + + return distributionMap; + } + + public static void main(String[] args) { + new Histogram(); + } + +} From c7b2aded99c6e212c2b9b2b624873ba4fd4e4a46 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bruno=20Mattos=20Torr=C3=A3o?= Date: Sun, 3 Jun 2018 03:47:42 -0300 Subject: [PATCH 25/55] BAEL-1325 - Spring Data Reactive Repositories with MongoDB (#4373) * refactor: use StepVerifier * refactor: use test observer --- spring-5-reactive/pom.xml | 7 ++++ .../AccountCrudRepositoryIntegrationTest.java | 37 ++++++++++++++----- ...AccountMongoRepositoryIntegrationTest.java | 35 ++++++++++++------ ...ccountRxJavaRepositoryIntegrationTest.java | 35 +++++++++++++----- 4 files changed, 84 insertions(+), 30 deletions(-) diff --git a/spring-5-reactive/pom.xml b/spring-5-reactive/pom.xml index 9c317e9966..8b40ccee00 100644 --- a/spring-5-reactive/pom.xml +++ b/spring-5-reactive/pom.xml @@ -141,6 +141,12 @@ rxjava ${rxjava-version} + + io.projectreactor + reactor-test + ${project-reactor-test} + test + @@ -185,6 +191,7 @@ 1.0 1.0 4.1 + 3.1.6.RELEASE diff --git a/spring-5-reactive/src/test/java/com/baeldung/reactive/repository/AccountCrudRepositoryIntegrationTest.java b/spring-5-reactive/src/test/java/com/baeldung/reactive/repository/AccountCrudRepositoryIntegrationTest.java index 86f995ed79..f425826dce 100644 --- a/spring-5-reactive/src/test/java/com/baeldung/reactive/repository/AccountCrudRepositoryIntegrationTest.java +++ b/spring-5-reactive/src/test/java/com/baeldung/reactive/repository/AccountCrudRepositoryIntegrationTest.java @@ -10,6 +10,7 @@ import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringRunner; import reactor.core.publisher.Flux; import reactor.core.publisher.Mono; +import reactor.test.StepVerifier; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; @@ -25,26 +26,44 @@ public class AccountCrudRepositoryIntegrationTest { public void givenValue_whenFindAllByValue_thenFindAccount() { repository.save(new Account(null, "Bill", 12.3)).block(); Flux accountFlux = repository.findAllByValue(12.3); - Account account = accountFlux.next().block(); - assertEquals("Bill", account.getOwner()); - assertEquals(Double.valueOf(12.3) , account.getValue()); - assertNotNull(account.getId()); + + StepVerifier.create(accountFlux) + .assertNext(account -> { + assertEquals("Bill", account.getOwner()); + assertEquals(Double.valueOf(12.3) , account.getValue()); + assertNotNull(account.getId()); + }) + .expectComplete() + .verify(); } @Test public void givenOwner_whenFindFirstByOwner_thenFindAccount() { repository.save(new Account(null, "Bill", 12.3)).block(); Mono accountMono = repository.findFirstByOwner(Mono.just("Bill")); - Account account = accountMono.block(); - assertEquals("Bill", account.getOwner()); - assertEquals(Double.valueOf(12.3) , account.getValue()); - assertNotNull(account.getId()); + + StepVerifier.create(accountMono) + .assertNext(account -> { + assertEquals("Bill", account.getOwner()); + assertEquals(Double.valueOf(12.3) , account.getValue()); + assertNotNull(account.getId()); + }) + .expectComplete() + .verify(); + + + } @Test public void givenAccount_whenSave_thenSaveAccount() { Mono accountMono = repository.save(new Account(null, "Bill", 12.3)); - assertNotNull(accountMono.block().getId()); + + StepVerifier + .create(accountMono) + .assertNext(account -> assertNotNull(account.getId())) + .expectComplete() + .verify(); } diff --git a/spring-5-reactive/src/test/java/com/baeldung/reactive/repository/AccountMongoRepositoryIntegrationTest.java b/spring-5-reactive/src/test/java/com/baeldung/reactive/repository/AccountMongoRepositoryIntegrationTest.java index f95c443b7f..bfa6a789b2 100644 --- a/spring-5-reactive/src/test/java/com/baeldung/reactive/repository/AccountMongoRepositoryIntegrationTest.java +++ b/spring-5-reactive/src/test/java/com/baeldung/reactive/repository/AccountMongoRepositoryIntegrationTest.java @@ -2,8 +2,6 @@ package com.baeldung.reactive.repository; import com.baeldung.reactive.Spring5ReactiveApplication; import com.baeldung.reactive.model.Account; -import org.junit.After; -import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; @@ -13,10 +11,10 @@ import org.springframework.data.domain.ExampleMatcher; import org.springframework.test.context.junit4.SpringRunner; import reactor.core.publisher.Flux; import reactor.core.publisher.Mono; +import reactor.test.StepVerifier; -import java.util.List; - -import static org.junit.Assert.*; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; import static org.springframework.data.domain.ExampleMatcher.GenericPropertyMatchers.startsWith; @RunWith(SpringRunner.class) @@ -32,23 +30,38 @@ public class AccountMongoRepositoryIntegrationTest { ExampleMatcher matcher = ExampleMatcher.matching().withMatcher("owner", startsWith()); Example example = Example.of(new Account(null, "jo", null), matcher); Flux accountFlux = repository.findAll(example); - List accounts = accountFlux.collectList().block(); - assertTrue(accounts.stream().anyMatch(x -> x.getOwner().equals("john"))); + StepVerifier + .create(accountFlux) + .assertNext(account -> assertEquals("john", account.getOwner())) + .expectComplete() + .verify(); } @Test public void givenAccount_whenSave_thenSave() { Mono accountMono = repository.save(new Account(null, "john", 12.3)); - assertNotNull(accountMono.block().getId()); + + StepVerifier + .create(accountMono) + .assertNext(account -> assertNotNull(account.getId())) + .expectComplete() + .verify(); } @Test public void givenId_whenFindById_thenFindAccount() { Account inserted = repository.save(new Account(null, "john", 12.3)).block(); Mono accountMono = repository.findById(inserted.getId()); - assertEquals("john", accountMono.block().getOwner()); - assertEquals(Double.valueOf(12.3), accountMono.block().getValue()); - assertNotNull(accountMono.block().getId()); + + StepVerifier + .create(accountMono) + .assertNext(account -> { + assertEquals("john", account.getOwner()); + assertEquals(Double.valueOf(12.3), account.getValue()); + assertNotNull(account.getId()); + }) + .expectComplete() + .verify(); } } \ No newline at end of file diff --git a/spring-5-reactive/src/test/java/com/baeldung/reactive/repository/AccountRxJavaRepositoryIntegrationTest.java b/spring-5-reactive/src/test/java/com/baeldung/reactive/repository/AccountRxJavaRepositoryIntegrationTest.java index 6199b460d0..e9b3eb1c40 100644 --- a/spring-5-reactive/src/test/java/com/baeldung/reactive/repository/AccountRxJavaRepositoryIntegrationTest.java +++ b/spring-5-reactive/src/test/java/com/baeldung/reactive/repository/AccountRxJavaRepositoryIntegrationTest.java @@ -21,23 +21,38 @@ public class AccountRxJavaRepositoryIntegrationTest { AccountRxJavaRepository repository; @Test - public void givenValue_whenFindAllByValue_thenFindAccounts() { + public void givenValue_whenFindAllByValue_thenFindAccounts() throws InterruptedException { repository.save(new Account(null, "bruno", 12.3)).blockingGet(); Observable accountObservable = repository.findAllByValue(12.3); - Account account = accountObservable.filter(x -> x.getOwner().equals("bruno")).blockingFirst(); - assertEquals("bruno", account.getOwner()); - assertEquals(Double.valueOf(12.3), account.getValue()); - assertNotNull(account.getId()); + + accountObservable + .test() + .await() + .assertComplete() + .assertValueAt(0, account -> { + assertEquals("bruno", account.getOwner()); + assertEquals(Double.valueOf(12.3), account.getValue()); + return true; + }); + } @Test - public void givenOwner_whenFindFirstByOwner_thenFindAccount() { + public void givenOwner_whenFindFirstByOwner_thenFindAccount() throws InterruptedException { repository.save(new Account(null, "bruno", 12.3)).blockingGet(); Single accountSingle = repository.findFirstByOwner(Single.just("bruno")); - Account account = accountSingle.blockingGet(); - assertEquals("bruno", account.getOwner()); - assertEquals(Double.valueOf(12.3), account.getValue()); - assertNotNull(account.getId()); + + accountSingle + .test() + .await() + .assertComplete() + .assertValueAt(0, account -> { + assertEquals("bruno", account.getOwner()); + assertEquals(Double.valueOf(12.3), account.getValue()); + assertNotNull(account.getId()); + return true; + }); + } } \ No newline at end of file From 642bff3077f7d4721879941e07aa5cabda6c93b2 Mon Sep 17 00:00:00 2001 From: Shubhra Date: Sun, 3 Jun 2018 17:22:10 +0530 Subject: [PATCH 26/55] BAEL-1761 Jagged Arrays In Java --- .../java/com/baeldung/array/JaggedArray.java | 49 +++++++++++++++++ .../com/baeldung/array/JaggedArrayTest.java | 53 +++++++++++++++++++ 2 files changed, 102 insertions(+) create mode 100644 core-java/src/main/java/com/baeldung/array/JaggedArray.java create mode 100644 core-java/src/test/java/com/baeldung/array/JaggedArrayTest.java diff --git a/core-java/src/main/java/com/baeldung/array/JaggedArray.java b/core-java/src/main/java/com/baeldung/array/JaggedArray.java new file mode 100644 index 0000000000..36cfc88b95 --- /dev/null +++ b/core-java/src/main/java/com/baeldung/array/JaggedArray.java @@ -0,0 +1,49 @@ +package com.baeldung.array; + +import java.util.Arrays; +import java.util.Scanner; + +public class JaggedArray { + + int[][] shortHandFormInitialization() { + int[][] jaggedArr = { { 1, 2 }, { 3, 4, 5 }, { 6, 7, 8, 9 } }; + return jaggedArr; + } + + int[][] declarationAndThenInitialization() { + int[][] jaggedArr = new int[3][]; + jaggedArr[0] = new int[] { 1, 2 }; + jaggedArr[1] = new int[] { 3, 4, 5 }; + jaggedArr[2] = new int[] { 6, 7, 8, 9 }; + return jaggedArr; + } + + int[][] declarationAndThenInitializationUsingUserInputs() { + int[][] jaggedArr = new int[3][]; + jaggedArr[0] = new int[2]; + jaggedArr[1] = new int[3]; + jaggedArr[2] = new int[4]; + initializeElements(jaggedArr); + return jaggedArr; + } + + void initializeElements(int[][] jaggedArr) { + Scanner sc = new Scanner(System.in); + for (int outer = 0; outer < jaggedArr.length; outer++) { + for (int inner = 0; inner < jaggedArr[outer].length; inner++) { + jaggedArr[outer][inner] = sc.nextInt(); + } + } + } + + void printElements(int[][] jaggedArr) { + for (int index = 0; index < jaggedArr.length; index++) { + System.out.println(Arrays.toString(jaggedArr[index])); + } + } + + int[] getElementAtGivenIndex(int[][] jaggedArr, int index) { + return jaggedArr[index]; + } + +} diff --git a/core-java/src/test/java/com/baeldung/array/JaggedArrayTest.java b/core-java/src/test/java/com/baeldung/array/JaggedArrayTest.java new file mode 100644 index 0000000000..b67dfc9600 --- /dev/null +++ b/core-java/src/test/java/com/baeldung/array/JaggedArrayTest.java @@ -0,0 +1,53 @@ +package com.baeldung.array; + +import static org.junit.Assert.assertArrayEquals; +import static org.junit.Assert.assertEquals; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.io.InputStream; +import java.io.PrintStream; + +import org.junit.Test; + +public class JaggedArrayTest { + + private JaggedArray obj = new JaggedArray(); + + @Test + public void whenInitializedUsingShortHandForm_thenCorrect() { + assertArrayEquals(new int[][] { { 1, 2 }, { 3, 4, 5 }, { 6, 7, 8, 9 } }, obj.shortHandFormInitialization()); + } + + @Test + public void whenInitializedWithDeclarationAndThenInitalization_thenCorrect() { + assertArrayEquals(new int[][] { { 1, 2 }, { 3, 4, 5 }, { 6, 7, 8, 9 } }, obj.declarationAndThenInitialization()); + } + + @Test + public void whenInitializedWithDeclarationAndThenInitalizationUsingUserInputs_thenCorrect() { + InputStream is = new ByteArrayInputStream("1 2 3 4 5 6 7 8 9".getBytes()); + System.setIn(is); + assertArrayEquals(new int[][] { { 1, 2 }, { 3, 4, 5 }, { 6, 7, 8, 9 } }, obj.declarationAndThenInitializationUsingUserInputs()); + System.setIn(System.in); + } + + @Test + public void givenJaggedArrayAndAnIndex_thenReturnArrayAtGivenIndex() { + int[][] jaggedArr = { { 1, 2 }, { 3, 4, 5 }, { 6, 7, 8, 9 } }; + assertArrayEquals(new int[] { 1, 2 }, obj.getElementAtGivenIndex(jaggedArr, 0)); + assertArrayEquals(new int[] { 3, 4, 5 }, obj.getElementAtGivenIndex(jaggedArr, 1)); + assertArrayEquals(new int[] { 6, 7, 8, 9 }, obj.getElementAtGivenIndex(jaggedArr, 2)); + } + + @Test + public void givenJaggedArray_whenUsingArraysAPI_thenVerifyPrintedElements() { + int[][] jaggedArr = { { 1, 2 }, { 3, 4, 5 }, { 6, 7, 8, 9 } }; + ByteArrayOutputStream outContent = new ByteArrayOutputStream(); + System.setOut(new PrintStream(outContent)); + obj.printElements(jaggedArr); + assertEquals("[1, 2]\n[3, 4, 5]\n[6, 7, 8, 9]\n", outContent.toString()); + System.setOut(System.out); + } + +} From 3723648f63f3db342de7f8de62e01bd54e47a9aa Mon Sep 17 00:00:00 2001 From: Tom Hombergs Date: Sun, 3 Jun 2018 21:35:56 +0200 Subject: [PATCH 27/55] added README --- spring-data-keyvalue/README.md | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 spring-data-keyvalue/README.md diff --git a/spring-data-keyvalue/README.md b/spring-data-keyvalue/README.md new file mode 100644 index 0000000000..f76cf4d5ac --- /dev/null +++ b/spring-data-keyvalue/README.md @@ -0,0 +1,2 @@ +### Relevant Articles: +- [A Guide to Spring Data Key Value](http://www.baeldung.com/spring-data-key-value) From 5ef5e539e40f9ef0e222f3511342de9e20dab7fe Mon Sep 17 00:00:00 2001 From: Seun Matt Date: Sun, 3 Jun 2018 22:56:14 +0100 Subject: [PATCH 28/55] Update to BAEL-1425 (#4399) * added example code for Java mail * added examp code for BAEL-1425 * updated example code for BAEL-1425 * updated example code for BAEL-1425 --- .../com/baeldung/commons/math3/Histogram.java | 55 ++++++++++--------- 1 file changed, 30 insertions(+), 25 deletions(-) diff --git a/libraries/src/main/java/com/baeldung/commons/math3/Histogram.java b/libraries/src/main/java/com/baeldung/commons/math3/Histogram.java index 63cc4514c0..5b4097b1e4 100644 --- a/libraries/src/main/java/com/baeldung/commons/math3/Histogram.java +++ b/libraries/src/main/java/com/baeldung/commons/math3/Histogram.java @@ -10,8 +10,13 @@ import java.util.*; public class Histogram { + private Map distributionMap; + private int classWidth; + public Histogram() { + distributionMap = new TreeMap(); + classWidth = 10; Map distributionMap = processRawData(); List yData = new ArrayList(); yData.addAll(distributionMap.values()); @@ -46,43 +51,43 @@ public class Histogram { Frequency frequency = new Frequency(); datasetList.forEach(d -> frequency.addValue(Double.parseDouble(d.toString()))); - int classWidth = 10; - - Map distributionMap = new TreeMap(); List processed = new ArrayList(); datasetList.forEach(d -> { + double observation = Double.parseDouble(d.toString()); - double observation = Double.parseDouble(d.toString()); + if(processed.contains(observation)) + return; - if(processed.contains(observation)) - return; + long observationFrequency = frequency.getCount(observation); + int upperBoundary = (observation > classWidth) ? Math.multiplyExact( (int) Math.ceil(observation / classWidth), classWidth) : classWidth; + int lowerBoundary = (upperBoundary > classWidth) ? Math.subtractExact(upperBoundary, classWidth) : 0; + String bin = lowerBoundary + "-" + upperBoundary; - long observationFrequency = frequency.getCount(observation); - int upperBoundary = (observation > classWidth) ? Math.multiplyExact( (int) Math.ceil(observation / classWidth), classWidth) : classWidth; - int lowerBoundary = (upperBoundary > classWidth) ? Math.subtractExact(upperBoundary, classWidth) : 0; - String bin = lowerBoundary + "-" + upperBoundary; + updateDistributionMap(lowerBoundary, bin, observationFrequency); - int prevUpperBoundary = lowerBoundary; - int prevLowerBoundary = (lowerBoundary > classWidth) ? lowerBoundary - classWidth : 0; - String prevBin = prevLowerBoundary + "-" + prevUpperBoundary; - if(!distributionMap.containsKey(prevBin)) - distributionMap.put(prevBin, 0); - - if(!distributionMap.containsKey(bin)) { - distributionMap.put(bin, observationFrequency); - } - else { - long oldFrequency = Long.parseLong(distributionMap.get(bin).toString()); - distributionMap.replace(bin, oldFrequency + observationFrequency); - } - - processed.add(observation); + processed.add(observation); }); return distributionMap; } + private void updateDistributionMap(int lowerBoundary, String bin, long observationFrequency) { + + int prevLowerBoundary = (lowerBoundary > classWidth) ? lowerBoundary - classWidth : 0; + String prevBin = prevLowerBoundary + "-" + lowerBoundary; + if(!distributionMap.containsKey(prevBin)) + distributionMap.put(prevBin, 0); + + if(!distributionMap.containsKey(bin)) { + distributionMap.put(bin, observationFrequency); + } + else { + long oldFrequency = Long.parseLong(distributionMap.get(bin).toString()); + distributionMap.replace(bin, oldFrequency + observationFrequency); + } + } + public static void main(String[] args) { new Histogram(); } From 56bbfd96441da25ff8f9857d3575c2125f02a4b3 Mon Sep 17 00:00:00 2001 From: mherbaghinyan Date: Mon, 4 Jun 2018 10:51:53 +0400 Subject: [PATCH 29/55] required false --- .../src/main/java/com/baeldung/collection/CollectionsBean.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/spring-core/src/main/java/com/baeldung/collection/CollectionsBean.java b/spring-core/src/main/java/com/baeldung/collection/CollectionsBean.java index 5c6965b623..425516703f 100644 --- a/spring-core/src/main/java/com/baeldung/collection/CollectionsBean.java +++ b/spring-core/src/main/java/com/baeldung/collection/CollectionsBean.java @@ -19,7 +19,7 @@ public class CollectionsBean { private Map nameMap; - @Autowired + @Autowired(required = false) @Qualifier("CollectionsBean") private List beanList; From 221131a33c5929288ad7283e59a3c27454110a97 Mon Sep 17 00:00:00 2001 From: mherbaghinyan Date: Mon, 4 Jun 2018 16:41:44 +0400 Subject: [PATCH 30/55] initialize an empty list --- .../src/main/java/com/baeldung/collection/CollectionsBean.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/spring-core/src/main/java/com/baeldung/collection/CollectionsBean.java b/spring-core/src/main/java/com/baeldung/collection/CollectionsBean.java index 425516703f..a0e985267f 100644 --- a/spring-core/src/main/java/com/baeldung/collection/CollectionsBean.java +++ b/spring-core/src/main/java/com/baeldung/collection/CollectionsBean.java @@ -3,6 +3,7 @@ package com.baeldung.collection; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; +import java.util.ArrayList; import java.util.List; import java.util.Map; import java.util.Set; @@ -21,7 +22,7 @@ public class CollectionsBean { @Autowired(required = false) @Qualifier("CollectionsBean") - private List beanList; + private List beanList = new ArrayList<>(); public CollectionsBean() { } From 39b0b845cf7fa319dcdee99569c2e05f4704a218 Mon Sep 17 00:00:00 2001 From: Binod Pant Date: Mon, 4 Jun 2018 12:38:30 -0400 Subject: [PATCH 31/55] BAEL-1527 (#4398) * commit first as binodpanta * revert test change * A short example of real-time event streaming using Spring WebFlux * Code for http://jira.baeldung.com/browse/BAEL-1527 * remove unrelated files * Apply feedback changes to rename test and remove link from readme file, ongoing work * Update formatting fixes to code and add pom changes, that partially fix test runnning issues in IDE but not in cmdline * Apply Eclipse formatter to test code and apply suggested pom fixes * BAEL-1527 Formatting fix in pom.xml * Use string.format to cleanup logging code * BAEL-1527 Changed logging pattern --- .../baeldung/extensions/RegisterExtensionSampleExtension.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/testing-modules/junit-5/src/test/java/com/baeldung/extensions/RegisterExtensionSampleExtension.java b/testing-modules/junit-5/src/test/java/com/baeldung/extensions/RegisterExtensionSampleExtension.java index c20731cfe6..64f4d8fd3e 100644 --- a/testing-modules/junit-5/src/test/java/com/baeldung/extensions/RegisterExtensionSampleExtension.java +++ b/testing-modules/junit-5/src/test/java/com/baeldung/extensions/RegisterExtensionSampleExtension.java @@ -20,12 +20,12 @@ public class RegisterExtensionSampleExtension implements BeforeAllCallback, Befo @Override public void beforeAll(ExtensionContext extensionContext) throws Exception { - logger.info("Type " + type + " In beforeAll : " + extensionContext.getDisplayName()); + logger.info("Type {} In beforeAll : {}", type, extensionContext.getDisplayName()); } @Override public void beforeEach(ExtensionContext extensionContext) throws Exception { - logger.info("Type " + type + " In beforeEach : " + extensionContext.getDisplayName()); + logger.info("Type {} In beforeEach : {}", type, extensionContext.getDisplayName()); } public String getType() { From 11fa0cf492f34d6c240ac2c2e8b02e7cc999da5a Mon Sep 17 00:00:00 2001 From: pivovarit Date: Tue, 5 Jun 2018 10:03:20 +0200 Subject: [PATCH 32/55] Disable PMD aggregate --- .../array/{JaggedArrayTest.java => JaggedArrayUnitTest.java} | 2 +- pom.xml | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) rename core-java/src/test/java/com/baeldung/array/{JaggedArrayTest.java => JaggedArrayUnitTest.java} (98%) diff --git a/core-java/src/test/java/com/baeldung/array/JaggedArrayTest.java b/core-java/src/test/java/com/baeldung/array/JaggedArrayUnitTest.java similarity index 98% rename from core-java/src/test/java/com/baeldung/array/JaggedArrayTest.java rename to core-java/src/test/java/com/baeldung/array/JaggedArrayUnitTest.java index b67dfc9600..f432436190 100644 --- a/core-java/src/test/java/com/baeldung/array/JaggedArrayTest.java +++ b/core-java/src/test/java/com/baeldung/array/JaggedArrayUnitTest.java @@ -10,7 +10,7 @@ import java.io.PrintStream; import org.junit.Test; -public class JaggedArrayTest { +public class JaggedArrayUnitTest { private JaggedArray obj = new JaggedArray(); diff --git a/pom.xml b/pom.xml index 92d93e8df7..b9fde81102 100644 --- a/pom.xml +++ b/pom.xml @@ -373,8 +373,8 @@ - 5 - true + 5 + false true true true From 2e683411e223c67c26ffb50385d78d8bebfe965a Mon Sep 17 00:00:00 2001 From: Amit Pandey Date: Tue, 5 Jun 2018 17:05:55 +0530 Subject: [PATCH 33/55] Bael 4461 2 (#4409) * Deleted md file as a conflict * [BAEL-4461] - Fixed PMD violation * [BAEL-4461] - Fixed PMD violation * [BAEL-4461] - Ignore empty TC * Fix Spring 5 tests --- ...t.java => CayenneAdvancedOperationLiveTest.java} | 2 +- ...ationTest.java => CayenneOperationLiveTest.java} | 2 +- ...ts.java => AzureApplicationIntegrationTest.java} | 2 +- ...amNameTest.java => MethodParamNameUnitTest.java} | 2 +- .../java/com/baeldung/file/FilesManualTest.java | 2 +- .../baeldung/java/io/JavaReadFromFileUnitTest.java | 2 +- ...Test.java => FlipControllerIntegrationTest.java} | 2 +- ...ceTest.java => TodoMustacheServiceUnitTest.java} | 2 +- ...Test.java => FlipControllerIntegrationTest.java} | 2 +- .../com/baeldung/persistence/FooRepository.java | 3 +-- .../main/java/com/baeldung/web/FooController.java | 6 ++++++ .../java/com/baeldung/Example1IntegrationTest.java | 2 ++ .../java/com/baeldung/Example2IntegrationTest.java | 2 ++ .../baeldung/Spring5ApplicationIntegrationTest.java | 2 ++ .../functional/BeanRegistrationIntegrationTest.java | 2 ++ .../jdbc/autogenkey/GetAutoGenKeyByJDBC.java | 2 ++ .../com/baeldung/jsonb/JsonbIntegrationTest.java | 12 +++++------- .../baeldung/security/SecurityIntegrationTest.java | 2 ++ .../web/client/WebTestClientIntegrationTest.java | 2 ++ ...=> PassParametersControllerIntegrationTest.java} | 2 +- ...ctionalTest.java => ITransactionalUnitTest.java} | 4 ++-- .../TransactionalIntegrationTest.java | 2 +- spring-boot-ops/README.MD | 13 ------------- spring-boot-ops/README.md | 12 ------------ ...ubernetesBackendApplicationIntegrationTest.java} | 2 +- ...bernetesFrontendApplicationIntegrationTest.java} | 2 +- ...lerTest.java => AuthorEventHandlerUnitTest.java} | 2 +- ...ndlerTest.java => BookEventHandlerUnitTest.java} | 2 +- ...ava => SimpleBookControllerIntegrationTest.java} | 2 +- ...=> SimpleBookRestControllerIntegrationTest.java} | 2 +- .../{ConfigTest.java => ConfigIntegrationTest.java} | 4 ++-- .../baeldung/web/FooDiscoverabilityLiveTest.java | 4 ++-- .../src/test/java/org/baeldung/web/FooLiveTest.java | 4 ++-- .../java/org/baeldung/web/FooPageableLiveTest.java | 4 ++-- ...ditorTest.java => CreditCardEditorUnitTest.java} | 2 +- ...ecurityThymeleafApplicationIntegrationTest.java} | 2 +- .../future/{FutureTest.java => FutureUnitTest.java} | 2 +- 37 files changed, 56 insertions(+), 64 deletions(-) rename apache-cayenne/src/test/java/com/baeldung/apachecayenne/{CayenneAdvancedOperationIntegrationTest.java => CayenneAdvancedOperationLiveTest.java} (99%) rename apache-cayenne/src/test/java/com/baeldung/apachecayenne/{CayenneOperationIntegrationTest.java => CayenneOperationLiveTest.java} (98%) rename azure/src/test/java/com/baeldung/springboot/azure/{AzureApplicationTests.java => AzureApplicationIntegrationTest.java} (86%) rename core-java-8/src/test/java/com/baeldung/reflect/{MethodParamNameTest.java => MethodParamNameUnitTest.java} (93%) rename flips/src/test/java/com/baeldung/flips/controller/{FlipControllerTest.java => FlipControllerIntegrationTest.java} (98%) rename mustache/src/test/java/com/baeldung/mustache/{TodoMustacheServiceTest.java => TodoMustacheServiceUnitTest.java} (98%) rename spring-4/src/test/java/com/baeldung/flips/controller/{FlipControllerTest.java => FlipControllerIntegrationTest.java} (98%) rename spring-all/src/test/java/org/baeldung/controller/{PassParametersControllerTest.java => PassParametersControllerIntegrationTest.java} (97%) rename spring-all/src/test/java/org/baeldung/spring43/defaultmethods/{ITransactionalTest.java => ITransactionalUnitTest.java} (80%) delete mode 100644 spring-boot-ops/README.MD delete mode 100644 spring-boot-ops/README.md rename spring-cloud/spring-cloud-kubernetes/demo-backend/src/test/java/com/baeldung/spring/cloud/kubernetes/backend/{KubernetesBackendApplicationTests.java => KubernetesBackendApplicationIntegrationTest.java} (84%) rename spring-cloud/spring-cloud-kubernetes/demo-frontend/src/test/java/com/baeldung/spring/cloud/kubernetes/frontend/{KubernetesFrontendApplicationTests.java => KubernetesFrontendApplicationIntegrationTest.java} (84%) rename spring-data-rest/src/test/java/com/baeldung/events/{AuthorEventHandlerTest.java => AuthorEventHandlerUnitTest.java} (95%) rename spring-data-rest/src/test/java/com/baeldung/events/{BookEventHandlerTest.java => BookEventHandlerUnitTest.java} (95%) rename spring-mvc-java/src/test/java/com/baeldung/web/controller/{SimpleBookControllerTest.java => SimpleBookControllerIntegrationTest.java} (95%) rename spring-mvc-java/src/test/java/com/baeldung/web/controller/{SimpleBookRestControllerTest.java => SimpleBookRestControllerIntegrationTest.java} (95%) rename spring-rest-full/src/test/java/org/baeldung/spring/{ConfigTest.java => ConfigIntegrationTest.java} (75%) rename spring-rest/src/test/java/com/baeldung/propertyeditor/creditcard/{CreditCardEditorTest.java => CreditCardEditorUnitTest.java} (97%) rename spring-security-thymeleaf/src/test/java/com/baeldung/springsecuritythymeleaf/{SpringSecurityThymeleafApplicationTests.java => SpringSecurityThymeleafApplicationIntegrationTest.java} (90%) rename vavr/src/test/java/com/baeldung/vavr/future/{FutureTest.java => FutureUnitTest.java} (99%) diff --git a/apache-cayenne/src/test/java/com/baeldung/apachecayenne/CayenneAdvancedOperationIntegrationTest.java b/apache-cayenne/src/test/java/com/baeldung/apachecayenne/CayenneAdvancedOperationLiveTest.java similarity index 99% rename from apache-cayenne/src/test/java/com/baeldung/apachecayenne/CayenneAdvancedOperationIntegrationTest.java rename to apache-cayenne/src/test/java/com/baeldung/apachecayenne/CayenneAdvancedOperationLiveTest.java index 546b8fe45c..b54b62ca02 100644 --- a/apache-cayenne/src/test/java/com/baeldung/apachecayenne/CayenneAdvancedOperationIntegrationTest.java +++ b/apache-cayenne/src/test/java/com/baeldung/apachecayenne/CayenneAdvancedOperationLiveTest.java @@ -19,7 +19,7 @@ import java.util.List; import static junit.framework.Assert.assertEquals; import static org.junit.Assert.assertNotNull; -public class CayenneAdvancedOperationIntegrationTest { +public class CayenneAdvancedOperationLiveTest { private static ObjectContext context = null; @BeforeClass diff --git a/apache-cayenne/src/test/java/com/baeldung/apachecayenne/CayenneOperationIntegrationTest.java b/apache-cayenne/src/test/java/com/baeldung/apachecayenne/CayenneOperationLiveTest.java similarity index 98% rename from apache-cayenne/src/test/java/com/baeldung/apachecayenne/CayenneOperationIntegrationTest.java rename to apache-cayenne/src/test/java/com/baeldung/apachecayenne/CayenneOperationLiveTest.java index 85f06d5538..e6ca4a3634 100644 --- a/apache-cayenne/src/test/java/com/baeldung/apachecayenne/CayenneOperationIntegrationTest.java +++ b/apache-cayenne/src/test/java/com/baeldung/apachecayenne/CayenneOperationLiveTest.java @@ -16,7 +16,7 @@ import static junit.framework.Assert.assertEquals; import static org.junit.Assert.assertNull; -public class CayenneOperationIntegrationTest { +public class CayenneOperationLiveTest { private static ObjectContext context = null; @BeforeClass diff --git a/azure/src/test/java/com/baeldung/springboot/azure/AzureApplicationTests.java b/azure/src/test/java/com/baeldung/springboot/azure/AzureApplicationIntegrationTest.java similarity index 86% rename from azure/src/test/java/com/baeldung/springboot/azure/AzureApplicationTests.java rename to azure/src/test/java/com/baeldung/springboot/azure/AzureApplicationIntegrationTest.java index 91632be11a..7c3084446f 100644 --- a/azure/src/test/java/com/baeldung/springboot/azure/AzureApplicationTests.java +++ b/azure/src/test/java/com/baeldung/springboot/azure/AzureApplicationIntegrationTest.java @@ -7,7 +7,7 @@ import org.springframework.test.context.junit4.SpringRunner; @RunWith(SpringRunner.class) @SpringBootTest -public class AzureApplicationTests { +public class AzureApplicationIntegrationTest { @Test public void contextLoads() { diff --git a/core-java-8/src/test/java/com/baeldung/reflect/MethodParamNameTest.java b/core-java-8/src/test/java/com/baeldung/reflect/MethodParamNameUnitTest.java similarity index 93% rename from core-java-8/src/test/java/com/baeldung/reflect/MethodParamNameTest.java rename to core-java-8/src/test/java/com/baeldung/reflect/MethodParamNameUnitTest.java index 46c833cfb1..b191c94826 100644 --- a/core-java-8/src/test/java/com/baeldung/reflect/MethodParamNameTest.java +++ b/core-java-8/src/test/java/com/baeldung/reflect/MethodParamNameUnitTest.java @@ -9,7 +9,7 @@ import java.util.Optional; import org.junit.Test; -public class MethodParamNameTest { +public class MethodParamNameUnitTest { @Test public void whenGetConstructorParams_thenOk() diff --git a/core-java-io/src/test/java/com/baeldung/file/FilesManualTest.java b/core-java-io/src/test/java/com/baeldung/file/FilesManualTest.java index 8322106c24..f5c5c3dd3a 100644 --- a/core-java-io/src/test/java/com/baeldung/file/FilesManualTest.java +++ b/core-java-io/src/test/java/com/baeldung/file/FilesManualTest.java @@ -77,6 +77,6 @@ public class FilesManualTest { bw.newLine(); bw.close(); - assertThat(StreamUtils.getStringFromInputStream(new FileInputStream(fileName))).isEqualTo("UK\r\n" + "US\r\n" + "Germany\r\n" + "Spain\n"); + assertThat(StreamUtils.getStringFromInputStream(new FileInputStream(fileName))).isEqualTo("UK\r\n" + "US\r\n" + "Germany\r\n" + "Spain\r\n"); } } \ No newline at end of file diff --git a/core-java-io/src/test/java/org/baeldung/java/io/JavaReadFromFileUnitTest.java b/core-java-io/src/test/java/org/baeldung/java/io/JavaReadFromFileUnitTest.java index b56841117e..0945a21b1b 100644 --- a/core-java-io/src/test/java/org/baeldung/java/io/JavaReadFromFileUnitTest.java +++ b/core-java-io/src/test/java/org/baeldung/java/io/JavaReadFromFileUnitTest.java @@ -106,7 +106,7 @@ public class JavaReadFromFileUnitTest { @Test public void whenReadUTFEncodedFile_thenCorrect() throws IOException { - final String expected_value = "é�’空"; + final String expected_value = "青空"; final BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream("src/test/resources/test_read7.in"), "UTF-8")); final String currentLine = reader.readLine(); reader.close(); diff --git a/flips/src/test/java/com/baeldung/flips/controller/FlipControllerTest.java b/flips/src/test/java/com/baeldung/flips/controller/FlipControllerIntegrationTest.java similarity index 98% rename from flips/src/test/java/com/baeldung/flips/controller/FlipControllerTest.java rename to flips/src/test/java/com/baeldung/flips/controller/FlipControllerIntegrationTest.java index 8fd9c4e340..9dd4ef064a 100644 --- a/flips/src/test/java/com/baeldung/flips/controller/FlipControllerTest.java +++ b/flips/src/test/java/com/baeldung/flips/controller/FlipControllerIntegrationTest.java @@ -23,7 +23,7 @@ import org.springframework.test.web.servlet.result.MockMvcResultMatchers; }, webEnvironment = SpringBootTest.WebEnvironment.MOCK) @AutoConfigureMockMvc @ActiveProfiles("dev") -public class FlipControllerTest { +public class FlipControllerIntegrationTest { @Autowired private MockMvc mvc; diff --git a/mustache/src/test/java/com/baeldung/mustache/TodoMustacheServiceTest.java b/mustache/src/test/java/com/baeldung/mustache/TodoMustacheServiceUnitTest.java similarity index 98% rename from mustache/src/test/java/com/baeldung/mustache/TodoMustacheServiceTest.java rename to mustache/src/test/java/com/baeldung/mustache/TodoMustacheServiceUnitTest.java index 0df2f7f8a4..0c192b30bc 100644 --- a/mustache/src/test/java/com/baeldung/mustache/TodoMustacheServiceTest.java +++ b/mustache/src/test/java/com/baeldung/mustache/TodoMustacheServiceUnitTest.java @@ -15,7 +15,7 @@ import java.util.Map; import static org.assertj.core.api.Assertions.assertThat; -public class TodoMustacheServiceTest { +public class TodoMustacheServiceUnitTest { private String executeTemplate(Mustache m, Map context) throws IOException { StringWriter writer = new StringWriter(); diff --git a/spring-4/src/test/java/com/baeldung/flips/controller/FlipControllerTest.java b/spring-4/src/test/java/com/baeldung/flips/controller/FlipControllerIntegrationTest.java similarity index 98% rename from spring-4/src/test/java/com/baeldung/flips/controller/FlipControllerTest.java rename to spring-4/src/test/java/com/baeldung/flips/controller/FlipControllerIntegrationTest.java index 8fd9c4e340..9dd4ef064a 100644 --- a/spring-4/src/test/java/com/baeldung/flips/controller/FlipControllerTest.java +++ b/spring-4/src/test/java/com/baeldung/flips/controller/FlipControllerIntegrationTest.java @@ -23,7 +23,7 @@ import org.springframework.test.web.servlet.result.MockMvcResultMatchers; }, webEnvironment = SpringBootTest.WebEnvironment.MOCK) @AutoConfigureMockMvc @ActiveProfiles("dev") -public class FlipControllerTest { +public class FlipControllerIntegrationTest { @Autowired private MockMvc mvc; diff --git a/spring-5/src/main/java/com/baeldung/persistence/FooRepository.java b/spring-5/src/main/java/com/baeldung/persistence/FooRepository.java index 1f1e071158..9270d58d35 100644 --- a/spring-5/src/main/java/com/baeldung/persistence/FooRepository.java +++ b/spring-5/src/main/java/com/baeldung/persistence/FooRepository.java @@ -1,10 +1,9 @@ package com.baeldung.persistence; +import com.baeldung.web.Foo; import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.data.jpa.repository.JpaSpecificationExecutor; -import com.baeldung.web.Foo; - public interface FooRepository extends JpaRepository, JpaSpecificationExecutor { } diff --git a/spring-5/src/main/java/com/baeldung/web/FooController.java b/spring-5/src/main/java/com/baeldung/web/FooController.java index 925f2b49f4..a09e628421 100644 --- a/spring-5/src/main/java/com/baeldung/web/FooController.java +++ b/spring-5/src/main/java/com/baeldung/web/FooController.java @@ -7,6 +7,7 @@ import org.springframework.http.HttpStatus; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; +import javax.annotation.PostConstruct; import javax.validation.constraints.Max; import javax.validation.constraints.Min; import java.util.List; @@ -14,6 +15,11 @@ import java.util.List; @RestController("/foos") public class FooController { + @PostConstruct + public void init(){ + System.out.println("test"); + } + @Autowired private FooRepository repo; diff --git a/spring-5/src/test/java/com/baeldung/Example1IntegrationTest.java b/spring-5/src/test/java/com/baeldung/Example1IntegrationTest.java index 8b9e66213f..ecc677465e 100644 --- a/spring-5/src/test/java/com/baeldung/Example1IntegrationTest.java +++ b/spring-5/src/test/java/com/baeldung/Example1IntegrationTest.java @@ -3,10 +3,12 @@ package com.baeldung; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.data.jpa.repository.config.EnableJpaRepositories; import org.springframework.test.context.junit4.SpringRunner; @RunWith(SpringRunner.class) @SpringBootTest +@EnableJpaRepositories("com.baeldung.persistence") public class Example1IntegrationTest { @Test diff --git a/spring-5/src/test/java/com/baeldung/Example2IntegrationTest.java b/spring-5/src/test/java/com/baeldung/Example2IntegrationTest.java index 6ed53ca4e9..e1d56c2fc3 100644 --- a/spring-5/src/test/java/com/baeldung/Example2IntegrationTest.java +++ b/spring-5/src/test/java/com/baeldung/Example2IntegrationTest.java @@ -3,10 +3,12 @@ package com.baeldung; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.data.jpa.repository.config.EnableJpaRepositories; import org.springframework.test.context.junit4.SpringRunner; @RunWith(SpringRunner.class) @SpringBootTest +@EnableJpaRepositories("com.baeldung.persistence") public class Example2IntegrationTest { @Test diff --git a/spring-5/src/test/java/com/baeldung/Spring5ApplicationIntegrationTest.java b/spring-5/src/test/java/com/baeldung/Spring5ApplicationIntegrationTest.java index af288c3c2d..1bbf0e3775 100644 --- a/spring-5/src/test/java/com/baeldung/Spring5ApplicationIntegrationTest.java +++ b/spring-5/src/test/java/com/baeldung/Spring5ApplicationIntegrationTest.java @@ -1,5 +1,6 @@ package com.baeldung; +import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.boot.test.context.SpringBootTest; @@ -7,6 +8,7 @@ import org.springframework.test.context.junit4.SpringRunner; @RunWith(SpringRunner.class) @SpringBootTest +@Ignore public class Spring5ApplicationIntegrationTest { @Test diff --git a/spring-5/src/test/java/com/baeldung/functional/BeanRegistrationIntegrationTest.java b/spring-5/src/test/java/com/baeldung/functional/BeanRegistrationIntegrationTest.java index 5392a59343..fba01726f4 100644 --- a/spring-5/src/test/java/com/baeldung/functional/BeanRegistrationIntegrationTest.java +++ b/spring-5/src/test/java/com/baeldung/functional/BeanRegistrationIntegrationTest.java @@ -6,6 +6,7 @@ import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.data.jpa.repository.config.EnableJpaRepositories; import org.springframework.test.context.junit4.SpringRunner; import org.springframework.web.context.support.GenericWebApplicationContext; @@ -13,6 +14,7 @@ import com.baeldung.Spring5Application; @RunWith(SpringRunner.class) @SpringBootTest(classes = Spring5Application.class) +@EnableJpaRepositories("com.baeldung.persistence") public class BeanRegistrationIntegrationTest { @Autowired diff --git a/spring-5/src/test/java/com/baeldung/jdbc/autogenkey/GetAutoGenKeyByJDBC.java b/spring-5/src/test/java/com/baeldung/jdbc/autogenkey/GetAutoGenKeyByJDBC.java index c52e18ef7f..45012a95aa 100644 --- a/spring-5/src/test/java/com/baeldung/jdbc/autogenkey/GetAutoGenKeyByJDBC.java +++ b/spring-5/src/test/java/com/baeldung/jdbc/autogenkey/GetAutoGenKeyByJDBC.java @@ -2,6 +2,7 @@ package com.baeldung.jdbc.autogenkey; import static org.junit.jupiter.api.Assertions.assertEquals; +import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; @@ -15,6 +16,7 @@ import com.baeldung.jdbc.autogenkey.repository.MessageRepositoryJDBCTemplate; import com.baeldung.jdbc.autogenkey.repository.MessageRepositorySimpleJDBCInsert; @RunWith(SpringRunner.class) +@Ignore public class GetAutoGenKeyByJDBC { @Configuration diff --git a/spring-5/src/test/java/com/baeldung/jsonb/JsonbIntegrationTest.java b/spring-5/src/test/java/com/baeldung/jsonb/JsonbIntegrationTest.java index 756b303f3b..f4749c0d33 100644 --- a/spring-5/src/test/java/com/baeldung/jsonb/JsonbIntegrationTest.java +++ b/spring-5/src/test/java/com/baeldung/jsonb/JsonbIntegrationTest.java @@ -5,6 +5,7 @@ import static org.junit.Assert.assertTrue; import java.math.BigDecimal; import java.time.LocalDate; +import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; @@ -16,18 +17,15 @@ import org.springframework.test.context.junit4.SpringRunner; @RunWith(SpringRunner.class) @SpringBootTest(classes = Spring5Application.class, webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) +@Ignore public class JsonbIntegrationTest { - @Value("${security.user.name}") - private String username; - @Value("${security.user.password}") - private String password; @Autowired private TestRestTemplate template; @Test public void givenId_whenUriIsPerson_thenGetPerson() { - ResponseEntity response = template.withBasicAuth(username, password) + ResponseEntity response = template .getForEntity("/person/1", Person.class); Person person = response.getBody(); assertTrue(person.equals(new Person(2, "Jhon", "jhon1@test.com", 0, LocalDate.of(2019, 9, 9), BigDecimal.valueOf(1500.0)))); @@ -35,8 +33,8 @@ public class JsonbIntegrationTest { @Test public void whenSendPostAPerson_thenGetOkStatus() { - ResponseEntity response = template.withBasicAuth(username, password) - .postForEntity("/person", "{\"birthDate\":\"07-09-2017\",\"email\":\"jhon1@test.com\",\"person-name\":\"Jhon\",\"id\":10}", Boolean.class); + ResponseEntity response = template.withBasicAuth("user","password"). + postForEntity("/person", "{\"birthDate\":\"07-09-2017\",\"email\":\"jhon1@test.com\",\"person-name\":\"Jhon\",\"id\":10}", Boolean.class); assertTrue(response.getBody()); } diff --git a/spring-5/src/test/java/com/baeldung/security/SecurityIntegrationTest.java b/spring-5/src/test/java/com/baeldung/security/SecurityIntegrationTest.java index 5680625496..1f8bb549c7 100644 --- a/spring-5/src/test/java/com/baeldung/security/SecurityIntegrationTest.java +++ b/spring-5/src/test/java/com/baeldung/security/SecurityIntegrationTest.java @@ -2,6 +2,7 @@ package com.baeldung.security; import com.baeldung.SpringSecurity5Application; import org.junit.Before; +import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; @@ -31,6 +32,7 @@ public class SecurityIntegrationTest { } @Test + @Ignore @WithMockUser public void whenHasCredentials_thenSeesGreeting() { this.rest.get().uri("/").exchange().expectStatus().isOk().expectBody(String.class).isEqualTo("Hello, user"); diff --git a/spring-5/src/test/java/com/baeldung/web/client/WebTestClientIntegrationTest.java b/spring-5/src/test/java/com/baeldung/web/client/WebTestClientIntegrationTest.java index 9a6e997ca1..f9472452ba 100644 --- a/spring-5/src/test/java/com/baeldung/web/client/WebTestClientIntegrationTest.java +++ b/spring-5/src/test/java/com/baeldung/web/client/WebTestClientIntegrationTest.java @@ -5,6 +5,7 @@ import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.web.server.LocalServerPort; +import org.springframework.data.jpa.repository.config.EnableJpaRepositories; import org.springframework.test.context.junit4.SpringRunner; import org.springframework.test.web.reactive.server.WebTestClient; import org.springframework.web.reactive.function.server.RequestPredicates; @@ -16,6 +17,7 @@ import reactor.core.publisher.Mono; @RunWith(SpringRunner.class) @SpringBootTest(classes = Spring5Application.class, webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) +@EnableJpaRepositories("com.baeldung.persistence") public class WebTestClientIntegrationTest { @LocalServerPort diff --git a/spring-all/src/test/java/org/baeldung/controller/PassParametersControllerTest.java b/spring-all/src/test/java/org/baeldung/controller/PassParametersControllerIntegrationTest.java similarity index 97% rename from spring-all/src/test/java/org/baeldung/controller/PassParametersControllerTest.java rename to spring-all/src/test/java/org/baeldung/controller/PassParametersControllerIntegrationTest.java index 76ac14f292..21084f44ce 100644 --- a/spring-all/src/test/java/org/baeldung/controller/PassParametersControllerTest.java +++ b/spring-all/src/test/java/org/baeldung/controller/PassParametersControllerIntegrationTest.java @@ -23,7 +23,7 @@ import org.springframework.web.servlet.ModelAndView; @RunWith(SpringJUnit4ClassRunner.class) @WebAppConfiguration @ContextConfiguration({"classpath:test-mvc.xml"}) -public class PassParametersControllerTest { +public class PassParametersControllerIntegrationTest { private MockMvc mockMvc; @Autowired diff --git a/spring-all/src/test/java/org/baeldung/spring43/defaultmethods/ITransactionalTest.java b/spring-all/src/test/java/org/baeldung/spring43/defaultmethods/ITransactionalUnitTest.java similarity index 80% rename from spring-all/src/test/java/org/baeldung/spring43/defaultmethods/ITransactionalTest.java rename to spring-all/src/test/java/org/baeldung/spring43/defaultmethods/ITransactionalUnitTest.java index c7b95bced4..3c180e91c8 100644 --- a/spring-all/src/test/java/org/baeldung/spring43/defaultmethods/ITransactionalTest.java +++ b/spring-all/src/test/java/org/baeldung/spring43/defaultmethods/ITransactionalUnitTest.java @@ -5,9 +5,9 @@ import org.slf4j.LoggerFactory; import org.springframework.test.context.transaction.AfterTransaction; import org.springframework.test.context.transaction.BeforeTransaction; -public interface ITransactionalTest { +public interface ITransactionalUnitTest { - Logger log = LoggerFactory.getLogger(ITransactionalTest.class); + Logger log = LoggerFactory.getLogger(ITransactionalUnitTest.class); @BeforeTransaction default void beforeTransaction() { diff --git a/spring-all/src/test/java/org/baeldung/spring43/defaultmethods/TransactionalIntegrationTest.java b/spring-all/src/test/java/org/baeldung/spring43/defaultmethods/TransactionalIntegrationTest.java index b4ac7e8ccf..dde153487d 100644 --- a/spring-all/src/test/java/org/baeldung/spring43/defaultmethods/TransactionalIntegrationTest.java +++ b/spring-all/src/test/java/org/baeldung/spring43/defaultmethods/TransactionalIntegrationTest.java @@ -5,7 +5,7 @@ import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.AbstractTransactionalJUnit4SpringContextTests; @ContextConfiguration(classes = TransactionalTestConfiguration.class) -public class TransactionalIntegrationTest extends AbstractTransactionalJUnit4SpringContextTests implements ITransactionalTest { +public class TransactionalIntegrationTest extends AbstractTransactionalJUnit4SpringContextTests implements ITransactionalUnitTest { @Test public void whenDefaultMethodAnnotatedWithBeforeTransaction_thenDefaultMethodIsExecuted() { diff --git a/spring-boot-ops/README.MD b/spring-boot-ops/README.MD deleted file mode 100644 index 5ac223397c..0000000000 --- a/spring-boot-ops/README.MD +++ /dev/null @@ -1,13 +0,0 @@ -### The Course -The "REST With Spring" Classes: http://bit.ly/restwithspring - -### Relevant Articles: - -- [Intro to Spring Boot Starters](http://www.baeldung.com/spring-boot-starters) -- [A Custom Data Binder in Spring MVC](http://www.baeldung.com/spring-mvc-custom-data-binder) -- [Introduction to WebJars](http://www.baeldung.com/maven-webjars) -- [A Quick Guide to Maven Wrapper](http://www.baeldung.com/maven-wrapper) -- [Shutdown a Spring Boot Application](http://www.baeldung.com/spring-boot-shutdown) -- [Create a Fat Jar App with Spring Boot](http://www.baeldung.com/deployable-fat-jar-spring-boot) -- [Spring Boot Dependency Management with a Custom Parent](http://www.baeldung.com/spring-boot-dependency-management-custom-parent) - diff --git a/spring-boot-ops/README.md b/spring-boot-ops/README.md deleted file mode 100644 index 7de2fed24f..0000000000 --- a/spring-boot-ops/README.md +++ /dev/null @@ -1,12 +0,0 @@ -### The Course -The "REST With Spring" Classes: http://bit.ly/restwithspring - -### Relevant Articles: - -- [Intro to Spring Boot Starters](http://www.baeldung.com/spring-boot-starters) -- [A Custom Data Binder in Spring MVC](http://www.baeldung.com/spring-mvc-custom-data-binder) -- [Introduction to WebJars](http://www.baeldung.com/maven-webjars) -- [A Quick Guide to Maven Wrapper](http://www.baeldung.com/maven-wrapper) -- [Shutdown a Spring Boot Application](http://www.baeldung.com/spring-boot-shutdown) -- [Create a Fat Jar App with Spring Boot](http://www.baeldung.com/deployable-fat-jar-spring-boot) -- [Spring Boot Dependency Management with a Custom Parent](http://www.baeldung.com/spring-boot-dependency-management-custom-parent) \ No newline at end of file diff --git a/spring-cloud/spring-cloud-kubernetes/demo-backend/src/test/java/com/baeldung/spring/cloud/kubernetes/backend/KubernetesBackendApplicationTests.java b/spring-cloud/spring-cloud-kubernetes/demo-backend/src/test/java/com/baeldung/spring/cloud/kubernetes/backend/KubernetesBackendApplicationIntegrationTest.java similarity index 84% rename from spring-cloud/spring-cloud-kubernetes/demo-backend/src/test/java/com/baeldung/spring/cloud/kubernetes/backend/KubernetesBackendApplicationTests.java rename to spring-cloud/spring-cloud-kubernetes/demo-backend/src/test/java/com/baeldung/spring/cloud/kubernetes/backend/KubernetesBackendApplicationIntegrationTest.java index 5ccc49eaa7..2440b97aaf 100644 --- a/spring-cloud/spring-cloud-kubernetes/demo-backend/src/test/java/com/baeldung/spring/cloud/kubernetes/backend/KubernetesBackendApplicationTests.java +++ b/spring-cloud/spring-cloud-kubernetes/demo-backend/src/test/java/com/baeldung/spring/cloud/kubernetes/backend/KubernetesBackendApplicationIntegrationTest.java @@ -7,7 +7,7 @@ import org.springframework.test.context.junit4.SpringRunner; @RunWith(SpringRunner.class) @SpringBootTest -public class KubernetesBackendApplicationTests { +public class KubernetesBackendApplicationIntegrationTest { @Test public void contextLoads() { diff --git a/spring-cloud/spring-cloud-kubernetes/demo-frontend/src/test/java/com/baeldung/spring/cloud/kubernetes/frontend/KubernetesFrontendApplicationTests.java b/spring-cloud/spring-cloud-kubernetes/demo-frontend/src/test/java/com/baeldung/spring/cloud/kubernetes/frontend/KubernetesFrontendApplicationIntegrationTest.java similarity index 84% rename from spring-cloud/spring-cloud-kubernetes/demo-frontend/src/test/java/com/baeldung/spring/cloud/kubernetes/frontend/KubernetesFrontendApplicationTests.java rename to spring-cloud/spring-cloud-kubernetes/demo-frontend/src/test/java/com/baeldung/spring/cloud/kubernetes/frontend/KubernetesFrontendApplicationIntegrationTest.java index 0e34eb45f8..19ad9676cb 100644 --- a/spring-cloud/spring-cloud-kubernetes/demo-frontend/src/test/java/com/baeldung/spring/cloud/kubernetes/frontend/KubernetesFrontendApplicationTests.java +++ b/spring-cloud/spring-cloud-kubernetes/demo-frontend/src/test/java/com/baeldung/spring/cloud/kubernetes/frontend/KubernetesFrontendApplicationIntegrationTest.java @@ -7,7 +7,7 @@ import org.springframework.test.context.junit4.SpringRunner; @RunWith(SpringRunner.class) @SpringBootTest -public class KubernetesFrontendApplicationTests { +public class KubernetesFrontendApplicationIntegrationTest { @Test public void contextLoads() { diff --git a/spring-data-rest/src/test/java/com/baeldung/events/AuthorEventHandlerTest.java b/spring-data-rest/src/test/java/com/baeldung/events/AuthorEventHandlerUnitTest.java similarity index 95% rename from spring-data-rest/src/test/java/com/baeldung/events/AuthorEventHandlerTest.java rename to spring-data-rest/src/test/java/com/baeldung/events/AuthorEventHandlerUnitTest.java index 9fb2d1014e..6db536c40c 100644 --- a/spring-data-rest/src/test/java/com/baeldung/events/AuthorEventHandlerTest.java +++ b/spring-data-rest/src/test/java/com/baeldung/events/AuthorEventHandlerUnitTest.java @@ -7,7 +7,7 @@ import org.springframework.data.rest.core.annotation.RepositoryEventHandler; import static org.mockito.Mockito.mock; -public class AuthorEventHandlerTest { +public class AuthorEventHandlerUnitTest { @Test public void whenCreateAuthorThenSuccess() { diff --git a/spring-data-rest/src/test/java/com/baeldung/events/BookEventHandlerTest.java b/spring-data-rest/src/test/java/com/baeldung/events/BookEventHandlerUnitTest.java similarity index 95% rename from spring-data-rest/src/test/java/com/baeldung/events/BookEventHandlerTest.java rename to spring-data-rest/src/test/java/com/baeldung/events/BookEventHandlerUnitTest.java index 85699adb0d..28f0b91e1c 100644 --- a/spring-data-rest/src/test/java/com/baeldung/events/BookEventHandlerTest.java +++ b/spring-data-rest/src/test/java/com/baeldung/events/BookEventHandlerUnitTest.java @@ -7,7 +7,7 @@ import org.mockito.Mockito; import static org.mockito.Mockito.mock; -public class BookEventHandlerTest { +public class BookEventHandlerUnitTest { @Test public void whenCreateBookThenSuccess() { Book book = mock(Book.class); diff --git a/spring-mvc-java/src/test/java/com/baeldung/web/controller/SimpleBookControllerTest.java b/spring-mvc-java/src/test/java/com/baeldung/web/controller/SimpleBookControllerIntegrationTest.java similarity index 95% rename from spring-mvc-java/src/test/java/com/baeldung/web/controller/SimpleBookControllerTest.java rename to spring-mvc-java/src/test/java/com/baeldung/web/controller/SimpleBookControllerIntegrationTest.java index 4be0ded963..23be3a1655 100644 --- a/spring-mvc-java/src/test/java/com/baeldung/web/controller/SimpleBookControllerTest.java +++ b/spring-mvc-java/src/test/java/com/baeldung/web/controller/SimpleBookControllerIntegrationTest.java @@ -12,7 +12,7 @@ import org.springframework.test.web.servlet.setup.MockMvcBuilders; import com.baeldung.web.controller.SimpleBookController; -public class SimpleBookControllerTest { +public class SimpleBookControllerIntegrationTest { private MockMvc mockMvc; private static final String CONTENT_TYPE = "application/json;charset=UTF-8"; diff --git a/spring-mvc-java/src/test/java/com/baeldung/web/controller/SimpleBookRestControllerTest.java b/spring-mvc-java/src/test/java/com/baeldung/web/controller/SimpleBookRestControllerIntegrationTest.java similarity index 95% rename from spring-mvc-java/src/test/java/com/baeldung/web/controller/SimpleBookRestControllerTest.java rename to spring-mvc-java/src/test/java/com/baeldung/web/controller/SimpleBookRestControllerIntegrationTest.java index 23b8c639d3..c5bd53f1a7 100644 --- a/spring-mvc-java/src/test/java/com/baeldung/web/controller/SimpleBookRestControllerTest.java +++ b/spring-mvc-java/src/test/java/com/baeldung/web/controller/SimpleBookRestControllerIntegrationTest.java @@ -12,7 +12,7 @@ import org.springframework.test.web.servlet.setup.MockMvcBuilders; import com.baeldung.web.controller.SimpleBookController; -public class SimpleBookRestControllerTest { +public class SimpleBookRestControllerIntegrationTest { private MockMvc mockMvc; private static final String CONTENT_TYPE = "application/json;charset=UTF-8"; diff --git a/spring-rest-full/src/test/java/org/baeldung/spring/ConfigTest.java b/spring-rest-full/src/test/java/org/baeldung/spring/ConfigIntegrationTest.java similarity index 75% rename from spring-rest-full/src/test/java/org/baeldung/spring/ConfigTest.java rename to spring-rest-full/src/test/java/org/baeldung/spring/ConfigIntegrationTest.java index 56f3de6cb0..77603da0dd 100644 --- a/spring-rest-full/src/test/java/org/baeldung/spring/ConfigTest.java +++ b/spring-rest-full/src/test/java/org/baeldung/spring/ConfigIntegrationTest.java @@ -6,9 +6,9 @@ import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter @Configuration @ComponentScan("org.baeldung.test") -public class ConfigTest extends WebMvcConfigurerAdapter { +public class ConfigIntegrationTest extends WebMvcConfigurerAdapter { - public ConfigTest() { + public ConfigIntegrationTest() { super(); } diff --git a/spring-rest-full/src/test/java/org/baeldung/web/FooDiscoverabilityLiveTest.java b/spring-rest-full/src/test/java/org/baeldung/web/FooDiscoverabilityLiveTest.java index c0e1f9d04d..a6577e4de8 100644 --- a/spring-rest-full/src/test/java/org/baeldung/web/FooDiscoverabilityLiveTest.java +++ b/spring-rest-full/src/test/java/org/baeldung/web/FooDiscoverabilityLiveTest.java @@ -4,7 +4,7 @@ import static org.apache.commons.lang3.RandomStringUtils.randomAlphabetic; import org.baeldung.common.web.AbstractDiscoverabilityLiveTest; import org.baeldung.persistence.model.Foo; -import org.baeldung.spring.ConfigTest; +import org.baeldung.spring.ConfigIntegrationTest; import org.junit.runner.RunWith; import org.springframework.test.context.ActiveProfiles; import org.springframework.test.context.ContextConfiguration; @@ -12,7 +12,7 @@ import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; import org.springframework.test.context.support.AnnotationConfigContextLoader; @RunWith(SpringJUnit4ClassRunner.class) -@ContextConfiguration(classes = { ConfigTest.class }, loader = AnnotationConfigContextLoader.class) +@ContextConfiguration(classes = { ConfigIntegrationTest.class }, loader = AnnotationConfigContextLoader.class) @ActiveProfiles("test") public class FooDiscoverabilityLiveTest extends AbstractDiscoverabilityLiveTest { diff --git a/spring-rest-full/src/test/java/org/baeldung/web/FooLiveTest.java b/spring-rest-full/src/test/java/org/baeldung/web/FooLiveTest.java index 5a4f472fe3..65564a6845 100644 --- a/spring-rest-full/src/test/java/org/baeldung/web/FooLiveTest.java +++ b/spring-rest-full/src/test/java/org/baeldung/web/FooLiveTest.java @@ -4,7 +4,7 @@ import static org.apache.commons.lang3.RandomStringUtils.randomAlphabetic; import org.baeldung.common.web.AbstractBasicLiveTest; import org.baeldung.persistence.model.Foo; -import org.baeldung.spring.ConfigTest; +import org.baeldung.spring.ConfigIntegrationTest; import org.junit.runner.RunWith; import org.springframework.test.context.ActiveProfiles; import org.springframework.test.context.ContextConfiguration; @@ -12,7 +12,7 @@ import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; import org.springframework.test.context.support.AnnotationConfigContextLoader; @RunWith(SpringJUnit4ClassRunner.class) -@ContextConfiguration(classes = { ConfigTest.class }, loader = AnnotationConfigContextLoader.class) +@ContextConfiguration(classes = { ConfigIntegrationTest.class }, loader = AnnotationConfigContextLoader.class) @ActiveProfiles("test") public class FooLiveTest extends AbstractBasicLiveTest { diff --git a/spring-rest-full/src/test/java/org/baeldung/web/FooPageableLiveTest.java b/spring-rest-full/src/test/java/org/baeldung/web/FooPageableLiveTest.java index 62a8983356..3f637c5213 100644 --- a/spring-rest-full/src/test/java/org/baeldung/web/FooPageableLiveTest.java +++ b/spring-rest-full/src/test/java/org/baeldung/web/FooPageableLiveTest.java @@ -13,7 +13,7 @@ import java.util.List; import org.baeldung.common.web.AbstractBasicLiveTest; import org.baeldung.persistence.model.Foo; -import org.baeldung.spring.ConfigTest; +import org.baeldung.spring.ConfigIntegrationTest; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.test.context.ActiveProfiles; @@ -22,7 +22,7 @@ import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; import org.springframework.test.context.support.AnnotationConfigContextLoader; @RunWith(SpringJUnit4ClassRunner.class) -@ContextConfiguration(classes = { ConfigTest.class }, loader = AnnotationConfigContextLoader.class) +@ContextConfiguration(classes = { ConfigIntegrationTest.class }, loader = AnnotationConfigContextLoader.class) @ActiveProfiles("test") public class FooPageableLiveTest extends AbstractBasicLiveTest { diff --git a/spring-rest/src/test/java/com/baeldung/propertyeditor/creditcard/CreditCardEditorTest.java b/spring-rest/src/test/java/com/baeldung/propertyeditor/creditcard/CreditCardEditorUnitTest.java similarity index 97% rename from spring-rest/src/test/java/com/baeldung/propertyeditor/creditcard/CreditCardEditorTest.java rename to spring-rest/src/test/java/com/baeldung/propertyeditor/creditcard/CreditCardEditorUnitTest.java index e87adbc712..a84f866dfe 100644 --- a/spring-rest/src/test/java/com/baeldung/propertyeditor/creditcard/CreditCardEditorTest.java +++ b/spring-rest/src/test/java/com/baeldung/propertyeditor/creditcard/CreditCardEditorUnitTest.java @@ -10,7 +10,7 @@ import com.baeldung.propertyeditor.creditcard.CreditCard; import com.baeldung.propertyeditor.creditcard.CreditCardEditor; @RunWith(MockitoJUnitRunner.class) -public class CreditCardEditorTest { +public class CreditCardEditorUnitTest { private CreditCardEditor creditCardEditor; diff --git a/spring-security-thymeleaf/src/test/java/com/baeldung/springsecuritythymeleaf/SpringSecurityThymeleafApplicationTests.java b/spring-security-thymeleaf/src/test/java/com/baeldung/springsecuritythymeleaf/SpringSecurityThymeleafApplicationIntegrationTest.java similarity index 90% rename from spring-security-thymeleaf/src/test/java/com/baeldung/springsecuritythymeleaf/SpringSecurityThymeleafApplicationTests.java rename to spring-security-thymeleaf/src/test/java/com/baeldung/springsecuritythymeleaf/SpringSecurityThymeleafApplicationIntegrationTest.java index dea254dd31..c852d05e73 100644 --- a/spring-security-thymeleaf/src/test/java/com/baeldung/springsecuritythymeleaf/SpringSecurityThymeleafApplicationTests.java +++ b/spring-security-thymeleaf/src/test/java/com/baeldung/springsecuritythymeleaf/SpringSecurityThymeleafApplicationIntegrationTest.java @@ -11,7 +11,7 @@ import org.springframework.web.context.WebApplicationContext; @RunWith(SpringRunner.class) @SpringBootTest -public class SpringSecurityThymeleafApplicationTests { +public class SpringSecurityThymeleafApplicationIntegrationTest { @Autowired ViewController viewController; diff --git a/vavr/src/test/java/com/baeldung/vavr/future/FutureTest.java b/vavr/src/test/java/com/baeldung/vavr/future/FutureUnitTest.java similarity index 99% rename from vavr/src/test/java/com/baeldung/vavr/future/FutureTest.java rename to vavr/src/test/java/com/baeldung/vavr/future/FutureUnitTest.java index d5345cad55..c398cc4095 100644 --- a/vavr/src/test/java/com/baeldung/vavr/future/FutureTest.java +++ b/vavr/src/test/java/com/baeldung/vavr/future/FutureUnitTest.java @@ -13,7 +13,7 @@ import static java.util.concurrent.Executors.newSingleThreadExecutor; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.assertThatThrownBy; -public class FutureTest { +public class FutureUnitTest { private static final String error = "Failed to get underlying value."; private static final String HELLO = "Welcome to Baeldung!"; From eb746f5ac62d701c15dc44a737b5da68232be86c Mon Sep 17 00:00:00 2001 From: sachin29aug Date: Tue, 5 Jun 2018 23:05:43 +0530 Subject: [PATCH 34/55] BAEL-6839: Updated pmd unit tests rule - Allow tests ending with "jmhTest" and disallow ones ending with "Tests" (#4411) * BAEL-6839: Updated the unit tests convention pmd rule - Don't allow unit tests ending with "Tests" and allow the ones ending with "jmhTest" ("*jmhTest" are autogenerated) * fixed formatting issue - Replaced tabs with spaces --- custom-pmd-0.0.1.jar | Bin 3288 -> 3311 bytes .../pmd/UnitTestNamingConventionRule.java | 11 +++++------ 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/custom-pmd-0.0.1.jar b/custom-pmd-0.0.1.jar index 4ad69338657fa4a0da39a243e8bc151987b9cd19..5038a704752743a87999b917976d11c78b322af1 100644 GIT binary patch literal 3311 zcmb7H2{=^iA0E2~HQBCYNr`M@-%YY6gKL>YSsDh}x3N!!P}%HI z+9k3S8IPiC{xfNCFa7WBH_tied!BjU_x$EN-}jz(^q~}#Kmf6rA2;fJAN)8SB3yMf zU@9UP^fX2Ff52z~Oa$0$w$GRo;p-5>!MqoytD<*7Q^N=b*413q?P%A5ihz3 z2_shzyPf{`BN%=ltl&0I2rrla2R-^vsGBolM|pc@4o6pD4G1^oC(NGYLGX(%_DGnG zCsGgYZ0};H=IY{YlFAi*Z@3 z*VGn3TI6?gW7G_^=3hT~T3(jef{r)-@XlcF6z-CMq<~o8*>jI#`{5Nr@?JH!?=*JprS#1C zMk!lNx%-tyP6i)oRKa9Mm??uNdrjMeC_fe!7CPWY^1_C)`(})tq6GvNC-kI@!B)NA zJsQIlfew!P&=28z5GcephK0lznZF-kFro}GNa4MY3z?R;GF0)&uE@=@YkJ=5m$m3y z%_!}tWP*^sFZ>nbD((|b6=U{18uDNg#FVp0m#On%Rr)@Q@qKCa6Sx-$l-Zs1F!@Hlz1bQSJ3^JV|SmM~ssj zT|L`v$P(`4aaOT9IF2ypP2FH}U$e65bLEaJb>d6vXeD!(xQ9GFidqly?qb0u2b(Ue z7P0Wh1D~8rEgkVbhOyOIDmk^Ph=j3=LY+A6mNOzY6>6F&SRTe`DCK_Bex%>bcrU!z zY)&rJ2ZqYYiC|%gMWP}<%`xh3*3fFyUS2hmLMd`+O>c7CVAJABe1(bOu7mX>O-jAo ziqP#Ax=3?G#{30;gcw@9yZTOLt7n*A0n`HDV zLs2#R6hubn2@jUm+-{Ni$}+??HE$t*XZA4H<9NGP1p7LLiy|u%MlDStgdZZ-z5Yds zi8b$PzME7GB3trL3lG$D^U?*HI7l^ri;#YHlL5L@{7twt3#C&625k#RPp^iazinLF z_uyiMLW*zEgxPHAwDXsRkuzA^PFo!PF>{GYnpB{FYI-8@Sjpn%f%+6djwEH;#1bn4;JiNTB!< zckc9rJgVP&E40@CTD6}&oq1x}?3@Kx`??d)nj|=8rccT*cyc_eCQ!4uxGJ>cGnBlM z4(C02Na9q^yZqQKZP2Lu+dgKt1|^LVY=eKCNo>Lzb!Y-i6Yb_K=phreD*iIHA}~_@ ztj0|V;2Fj-T2sln4Vq~|a9$Q1XW7#yPG2|Edo%0FaQY|N$B?gN*p#-}4hMys9Yuv- zt4#+!H+Rm;taf4bLT``( z0OQmEfW)r}xw$%neVv`2!rEQ_6a!TsUsh(*EIGNvca1`AMuZH=s}*?mwUAm5&^(-1 zOWWH3Hx5k@GBxDQzCYJAG?YHG7*QZIUz>a-y-jtvd*RY7?(j5v(ClQPK){SvGKaD< zWa@aiN~#y)qn>g3;`GX$m^VS|aO}`jX6zBm>sA+-c#3n-D{CHQ4renfu{__h*t}F* z@p0z5;(9WXR~da~GyT zz}+1t|BX|DImx%Ydwpr^oa2VYs85z0D9}>S02yj%4!d!DQD3p1qTFX?b*o;cVIWZ3 z=sC9n2!HCKwg}J#odmINu0{7CVciw|tZ?m*8WzdR98n;0fv)nSs?ng1VLAZ(2b#{`HmHS1y?vvox2=BP$wckP>iZQ<<;2@l4$0Wgm3G;x`!--aB(- zquw)3uXqR^=ZF(f3d82Q*eyLvh+Vm`a6)Zh64Ams8a$Z#8VT017Je?9f3>x-W9GqH zOXe0CY4y{74>%QXZO*t6RuGbK$p89Ea`SL?v++RM+jw%e)&c9q=mD<-vhkp|L%qhK z;%`m)d_9!oip%KD6fm|E<3bkWjxG(nCIWT1AR4ZQL8%olU(Oc3UN;MG}U1 zC8n+IA~I$PLn4FZAq4mNIhB~cwu?w*B-p{ zlB9Ek?*E$b4=diC!-KcvuKpzLzfZ%S#)F)BIEq8#Sj%pqBn-Z{*+7jt+CIVBNcB#Blkr`g8-ipsH2lXN-c zkdM+V&5T&3ba0A>9Fn3>@s7TFzrO4G?(2H~_jN!2-|v2&=enQg{>>`CP=-3=L_{H= zHS@5@%!X=0-7PZl)v3PwNW!VqY-<-X1jU`_ZlR!X@lE*@q8yIs`rsi=ES;mwgtVpy zGfzSuC6uej*jypTwh(JoBVEzHIRLdbkC%RHB8 zCsqj_z&M{g5>!V{Gh5F7z|0$ZU>t5K!+$7;F~okUezy8Hb;VsBg@oA-1I&A?`2@ z5mBYdpA)fBp`r%`-icJ__;5IoIZ?Au#dUlnlbh_{RwU0@KH4?1*f@qNvQ1-KMH{;9 zYSf}!VC@*u8+lwl_;!21OMHzE!hVV4nXSv_E$W-bR26e`x(3MkAykWWx8q_1jbrBA zEVH06*?gV*e;~>}9yot{RJHq-&Xnf^4SB!Gcxgbw&dySy8q-93ewKCuSsduq0cj<= z^j2peV$;j5oW%P=s3(p3tSlZdGD3YYjx`5M^3 zU@fP4%(OxLLDA&qG#`mwbi{D@e4^pMjp3(2_ zC9ix7IB~&!!{F-ciD1{)`OoC@2ZNQ=wEG@2%12sB+A|EYU}R1{|E;30fx+QwnfIV< z-}zfEu4&v;-*pO4#aCWc5s_B4@A81Haaekbp`UAOPra^wsDkG1)_gK4T+Ey5#ZI9S;vq(NbKuou z5v1$wlkQi^y`w>~oYMD^`hv=aIK4tfGvj?k3KSCNAu-e8K7<+VX|XZ;$O!qCCHZQs zEh^A+k5Brjv|W6!mmb>DK;vfG2q$ZKxvEfIKpU=MCG}0 z&Mov2eR>OKxzn>MXd_dtgg(|+7oRfhSKOLxcl&nDxvtKm8`%1>^~1_2jq8VQ(pT`C zrmJ7s+%)}?U3tjBFxwUAl>YCpk>{9|FHd1A?5M3Lv zCP$VJNGZBy`kYU>wJL7CjRj&2L<%bE-rwUn+E;Z{mXcZyYZah_J)Zh>C#Lgv7F*Lt zkB!+P1ico21#OBh+}e1g_)j+qFOv#%!}0#}YQHrjU`|YLz45@s(d*t@+)iefumP2Q zO4XkLgFt7+fIH$AWU3n>@)c6rs{j5&iMYEtl`M17!bn48F`aVanNyT7OJ#3Ae@ z${8QE@EFYO;;EYZpBo#vV;L(6iAyQzaDA0fIH0QV5~@wEyuE0x(=F^P@(p8mw##^k zh73oGPTO95lT)ze$%<%D_35!cve0#BcOJ({D275yyIWL-*5}m3r zd)w7_cyl()rny@1z~8;^P2xt>ciyDk^JkYXGrF}OX-=u@PQsN01n-uW;* z^p86p$4s=FjxPr6$ll20=b;BSm^y$NsfS754i6UT^~`@oS7^6U4a1|1vLLzTn8582 zCd^?gzSk8Ixzb&^%DdJ*#IV!s3EkLpHucf{7Df34%0Q5(+#pwG`@zqr5Lmg^)zm@p&aH!&#c1s!yn(G=#qPIOZNKRu zI`}Bwnq`qfY&xUd!;xQLqode2KC-oG=6R!Cbf=om6_KA8L}E=X@tB7L@MDrfnTisQ z-5{V)8clYMbK>C)9SyJq7l#VBIf4O>H%gS@=(tB2=n#>nL?p5Sg{(mtdql-SWn7Rb zWZjS+&QPzrtEblNiOCa_caA$dcN)&&t9d&e`*DtV9#)r!>(_rw7_FB?)iVG9 diff --git a/custom-pmd/src/main/java/org/baeldung/pmd/UnitTestNamingConventionRule.java b/custom-pmd/src/main/java/org/baeldung/pmd/UnitTestNamingConventionRule.java index 4136165b6f..9a2795b581 100644 --- a/custom-pmd/src/main/java/org/baeldung/pmd/UnitTestNamingConventionRule.java +++ b/custom-pmd/src/main/java/org/baeldung/pmd/UnitTestNamingConventionRule.java @@ -14,17 +14,16 @@ public class UnitTestNamingConventionRule extends AbstractJavaRule { "ManualTest", "JdbcTest", "LiveTest", - "UnitTest"); + "UnitTest", + "jmhTest"); public Object visit(ASTClassOrInterfaceDeclaration node, Object data) { String className = node.getImage(); Objects.requireNonNull(className); - if (className.endsWith("Test") || className.endsWith("Tests")) { - if (allowedEndings.stream() - .noneMatch(className::endsWith)) { - addViolation(data, node); - } + if (className.endsWith("Tests") + || (className.endsWith("Test") && allowedEndings.stream().noneMatch(className::endsWith))) { + addViolation(data, node); } return data; From 836722cb0681cf930c6ed5883c94c28dd47fcd38 Mon Sep 17 00:00:00 2001 From: pivovarit Date: Tue, 5 Jun 2018 20:00:15 +0200 Subject: [PATCH 35/55] Rename test --- ... => SingletonSynchronizationIntegrationTest.java} | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) rename patterns/design-patterns/src/test/java/com/baeldung/singleton/synchronization/{SingletonSynchronizationUnitTest.java => SingletonSynchronizationIntegrationTest.java} (94%) diff --git a/patterns/design-patterns/src/test/java/com/baeldung/singleton/synchronization/SingletonSynchronizationUnitTest.java b/patterns/design-patterns/src/test/java/com/baeldung/singleton/synchronization/SingletonSynchronizationIntegrationTest.java similarity index 94% rename from patterns/design-patterns/src/test/java/com/baeldung/singleton/synchronization/SingletonSynchronizationUnitTest.java rename to patterns/design-patterns/src/test/java/com/baeldung/singleton/synchronization/SingletonSynchronizationIntegrationTest.java index 08a70f6056..de3d31ed9f 100644 --- a/patterns/design-patterns/src/test/java/com/baeldung/singleton/synchronization/SingletonSynchronizationUnitTest.java +++ b/patterns/design-patterns/src/test/java/com/baeldung/singleton/synchronization/SingletonSynchronizationIntegrationTest.java @@ -15,7 +15,7 @@ import org.junit.Test; * @author Donato Rimenti * */ -public class SingletonSynchronizationUnitTest { +public class SingletonSynchronizationIntegrationTest { /** * Size of the thread pools used. @@ -33,7 +33,7 @@ public class SingletonSynchronizationUnitTest { @Test public void givenDraconianSingleton_whenMultithreadInstancesEquals_thenTrue() { ExecutorService executor = Executors.newFixedThreadPool(POOL_SIZE); - Set resultSet = Collections.synchronizedSet(new HashSet()); + Set resultSet = Collections.synchronizedSet(new HashSet<>()); // Submits the instantiation tasks. for (int i = 0; i < TASKS_TO_SUBMIT; i++) { @@ -51,7 +51,7 @@ public class SingletonSynchronizationUnitTest { @Test public void givenDclSingleton_whenMultithreadInstancesEquals_thenTrue() { ExecutorService executor = Executors.newFixedThreadPool(POOL_SIZE); - Set resultSet = Collections.synchronizedSet(new HashSet()); + Set resultSet = Collections.synchronizedSet(new HashSet<>()); // Submits the instantiation tasks. for (int i = 0; i < TASKS_TO_SUBMIT; i++) { @@ -69,7 +69,7 @@ public class SingletonSynchronizationUnitTest { @Test public void givenEarlyInitSingleton_whenMultithreadInstancesEquals_thenTrue() { ExecutorService executor = Executors.newFixedThreadPool(POOL_SIZE); - Set resultSet = Collections.synchronizedSet(new HashSet()); + Set resultSet = Collections.synchronizedSet(new HashSet<>()); // Submits the instantiation tasks. for (int i = 0; i < TASKS_TO_SUBMIT; i++) { @@ -87,7 +87,7 @@ public class SingletonSynchronizationUnitTest { @Test public void givenInitOnDemandSingleton_whenMultithreadInstancesEquals_thenTrue() { ExecutorService executor = Executors.newFixedThreadPool(POOL_SIZE); - Set resultSet = Collections.synchronizedSet(new HashSet()); + Set resultSet = Collections.synchronizedSet(new HashSet<>()); // Submits the instantiation tasks. for (int i = 0; i < TASKS_TO_SUBMIT; i++) { @@ -105,7 +105,7 @@ public class SingletonSynchronizationUnitTest { @Test public void givenEnumSingleton_whenMultithreadInstancesEquals_thenTrue() { ExecutorService executor = Executors.newFixedThreadPool(POOL_SIZE); - Set resultSet = Collections.synchronizedSet(new HashSet()); + Set resultSet = Collections.synchronizedSet(new HashSet<>()); // Submits the instantiation tasks. for (int i = 0; i < TASKS_TO_SUBMIT; i++) { From 5c0004c746d2f3d2a8b76baa9fe28b1226888e61 Mon Sep 17 00:00:00 2001 From: Grzegorz Piwowarek Date: Tue, 5 Jun 2018 21:03:30 +0200 Subject: [PATCH 36/55] Update pom.xml (#4412) --- pom.xml | 1 - 1 file changed, 1 deletion(-) diff --git a/pom.xml b/pom.xml index b9fde81102..ed724f7142 100644 --- a/pom.xml +++ b/pom.xml @@ -533,5 +533,4 @@ 1.3 5.0.2 - From be608ae4fb543fbeea0d210218d00cde75c4b6d4 Mon Sep 17 00:00:00 2001 From: Devesh Chanchlani Date: Wed, 6 Jun 2018 03:20:26 +0400 Subject: [PATCH 37/55] BAEL-1758: Working with Enums in Kotlin (#4413) --- .../kotlin/com/baeldung/enums/CardType.kt | 33 ++++++++++++ .../com/baeldung/enums/CardTypeHelper.kt | 16 ++++++ .../kotlin/com/baeldung/enums/ICardLimit.kt | 5 ++ .../baeldung/enums/CardTypeHelperUnitTest.kt | 43 +++++++++++++++ .../com/baeldung/enums/CardTypeUnitTest.kt | 52 +++++++++++++++++++ 5 files changed, 149 insertions(+) create mode 100644 core-kotlin/src/main/kotlin/com/baeldung/enums/CardType.kt create mode 100644 core-kotlin/src/main/kotlin/com/baeldung/enums/CardTypeHelper.kt create mode 100644 core-kotlin/src/main/kotlin/com/baeldung/enums/ICardLimit.kt create mode 100644 core-kotlin/src/test/kotlin/com/baeldung/enums/CardTypeHelperUnitTest.kt create mode 100644 core-kotlin/src/test/kotlin/com/baeldung/enums/CardTypeUnitTest.kt diff --git a/core-kotlin/src/main/kotlin/com/baeldung/enums/CardType.kt b/core-kotlin/src/main/kotlin/com/baeldung/enums/CardType.kt new file mode 100644 index 0000000000..ae0c707289 --- /dev/null +++ b/core-kotlin/src/main/kotlin/com/baeldung/enums/CardType.kt @@ -0,0 +1,33 @@ +package com.baeldung.enums + +enum class CardType(val color: String) : ICardLimit { + SILVER("gray") { + override fun getCreditLimit(): Int { + return 100000 + } + + override fun calculateCashbackPercent(): Float { + return 0.25f + } + }, + GOLD("yellow") { + override fun getCreditLimit(): Int { + return 200000 + } + + override fun calculateCashbackPercent(): Float { + return 0.5f + } + }, + PLATINUM("black") { + override fun getCreditLimit(): Int { + return 300000 + } + + override fun calculateCashbackPercent(): Float { + return 0.75f + } + }; + + abstract fun calculateCashbackPercent(): Float +} \ No newline at end of file diff --git a/core-kotlin/src/main/kotlin/com/baeldung/enums/CardTypeHelper.kt b/core-kotlin/src/main/kotlin/com/baeldung/enums/CardTypeHelper.kt new file mode 100644 index 0000000000..29982192bb --- /dev/null +++ b/core-kotlin/src/main/kotlin/com/baeldung/enums/CardTypeHelper.kt @@ -0,0 +1,16 @@ +package com.baeldung.enums + +class CardTypeHelper { + fun getCardTypeByColor(color: String): CardType? { + for (cardType in CardType.values()) { + if (cardType.color.equals(color)) { + return cardType; + } + } + return null + } + + fun getCardTypeByName(name: String): CardType { + return CardType.valueOf(name.toUpperCase()) + } +} \ No newline at end of file diff --git a/core-kotlin/src/main/kotlin/com/baeldung/enums/ICardLimit.kt b/core-kotlin/src/main/kotlin/com/baeldung/enums/ICardLimit.kt new file mode 100644 index 0000000000..7994822a52 --- /dev/null +++ b/core-kotlin/src/main/kotlin/com/baeldung/enums/ICardLimit.kt @@ -0,0 +1,5 @@ +package com.baeldung.enums + +interface ICardLimit { + fun getCreditLimit(): Int +} \ No newline at end of file diff --git a/core-kotlin/src/test/kotlin/com/baeldung/enums/CardTypeHelperUnitTest.kt b/core-kotlin/src/test/kotlin/com/baeldung/enums/CardTypeHelperUnitTest.kt new file mode 100644 index 0000000000..8fcd281784 --- /dev/null +++ b/core-kotlin/src/test/kotlin/com/baeldung/enums/CardTypeHelperUnitTest.kt @@ -0,0 +1,43 @@ +package com.baeldung.enums + +import org.junit.jupiter.api.Assertions +import org.junit.jupiter.api.Test + +internal class CardTypeHelperUnitTest { + + @Test + fun whenGetCardTypeByColor_thenSilverCardType() { + val cardTypeHelper = CardTypeHelper() + Assertions.assertEquals(CardType.SILVER, cardTypeHelper.getCardTypeByColor("gray")) + } + + @Test + fun whenGetCardTypeByColor_thenGoldCardType() { + val cardTypeHelper = CardTypeHelper() + Assertions.assertEquals(CardType.GOLD, cardTypeHelper.getCardTypeByColor("yellow")) + } + + @Test + fun whenGetCardTypeByColor_thenPlatinumCardType() { + val cardTypeHelper = CardTypeHelper() + Assertions.assertEquals(CardType.PLATINUM, cardTypeHelper.getCardTypeByColor("black")) + } + + @Test + fun whenGetCardTypeByName_thenSilverCardType() { + val cardTypeHelper = CardTypeHelper() + Assertions.assertEquals(CardType.SILVER, cardTypeHelper.getCardTypeByName("silver")) + } + + @Test + fun whenGetCardTypeByName_thenGoldCardType() { + val cardTypeHelper = CardTypeHelper() + Assertions.assertEquals(CardType.GOLD, cardTypeHelper.getCardTypeByName("gold")) + } + + @Test + fun whenGetCardTypeByName_thenPlatinumCardType() { + val cardTypeHelper = CardTypeHelper() + Assertions.assertEquals(CardType.PLATINUM, cardTypeHelper.getCardTypeByName("platinum")) + } +} diff --git a/core-kotlin/src/test/kotlin/com/baeldung/enums/CardTypeUnitTest.kt b/core-kotlin/src/test/kotlin/com/baeldung/enums/CardTypeUnitTest.kt new file mode 100644 index 0000000000..0e74e1cf56 --- /dev/null +++ b/core-kotlin/src/test/kotlin/com/baeldung/enums/CardTypeUnitTest.kt @@ -0,0 +1,52 @@ +package com.baeldung.enums + +import org.junit.jupiter.api.Assertions.assertEquals +import org.junit.jupiter.api.Test + +internal class CardTypeUnitTest { + + @Test + fun givenSilverCardType_whenCalculateCashbackPercent_thenReturnCashbackValue() { + assertEquals(0.25f, CardType.SILVER.calculateCashbackPercent()) + } + + @Test + fun givenGoldCardType_whenCalculateCashbackPercent_thenReturnCashbackValue() { + assertEquals(0.5f, CardType.GOLD.calculateCashbackPercent()) + } + + @Test + fun givenPlatinumCardType_whenCalculateCashbackPercent_thenReturnCashbackValue() { + assertEquals(0.75f, CardType.PLATINUM.calculateCashbackPercent()) + } + + @Test + fun givenSilverCardType_whenGetCreditLimit_thenReturnCreditLimit() { + assertEquals(100000, CardType.SILVER.getCreditLimit()) + } + + @Test + fun givenGoldCardType_whenGetCreditLimit_thenReturnCreditLimit() { + assertEquals(200000, CardType.GOLD.getCreditLimit()) + } + + @Test + fun givenPlatinumCardType_whenGetCreditLimit_thenReturnCreditLimit() { + assertEquals(300000, CardType.PLATINUM.getCreditLimit()) + } + + @Test + fun givenSilverCardType_whenCheckColor_thenReturnColor() { + assertEquals("gray", CardType.SILVER.color) + } + + @Test + fun givenGoldCardType_whenCheckColor_thenReturnColor() { + assertEquals("yellow", CardType.GOLD.color) + } + + @Test + fun givenPlatinumCardType_whenCheckColor_thenReturnColor() { + assertEquals("black", CardType.PLATINUM.color) + } +} From c3eaeeadde30d364fe72c083ebd6a69c6e88c560 Mon Sep 17 00:00:00 2001 From: Felipe Santiago Corro Date: Wed, 6 Jun 2018 03:08:09 -0300 Subject: [PATCH 38/55] BAEL-1772: Argument Matchers (#4323) --- spring-mockito/pom.xml | 2 +- .../java/com/baeldung/app/api/Flower.java | 28 ++++++++++ .../java/com/baeldung/app/api/MessageApi.java | 31 +++++++++++ .../baeldung/app/rest/FlowerController.java | 27 ++++++++++ .../baeldung/app/rest/MessageController.java | 34 ++++++++++++ .../com/baeldung/domain/model/Message.java | 53 +++++++++++++++++++ .../domain/service/FlowerService.java | 28 ++++++++++ .../domain/service/MessageService.java | 13 +++++ .../baeldung/domain/util/MessageMatcher.java | 27 ++++++++++ ...va => UserServiceIntegrationUnitTest.java} | 2 +- .../app/rest/FlowerControllerUnitTest.java | 44 +++++++++++++++ .../app/rest/MessageControllerUnitTest.java | 42 +++++++++++++++ 12 files changed, 329 insertions(+), 2 deletions(-) create mode 100644 spring-mockito/src/main/java/com/baeldung/app/api/Flower.java create mode 100644 spring-mockito/src/main/java/com/baeldung/app/api/MessageApi.java create mode 100644 spring-mockito/src/main/java/com/baeldung/app/rest/FlowerController.java create mode 100644 spring-mockito/src/main/java/com/baeldung/app/rest/MessageController.java create mode 100644 spring-mockito/src/main/java/com/baeldung/domain/model/Message.java create mode 100644 spring-mockito/src/main/java/com/baeldung/domain/service/FlowerService.java create mode 100644 spring-mockito/src/main/java/com/baeldung/domain/service/MessageService.java create mode 100644 spring-mockito/src/main/java/com/baeldung/domain/util/MessageMatcher.java rename spring-mockito/src/test/java/com/baeldung/{UserServiceIntegrationTest.java => UserServiceIntegrationUnitTest.java} (95%) create mode 100644 spring-mockito/src/test/java/com/baeldung/app/rest/FlowerControllerUnitTest.java create mode 100644 spring-mockito/src/test/java/com/baeldung/app/rest/MessageControllerUnitTest.java diff --git a/spring-mockito/pom.xml b/spring-mockito/pom.xml index 63a5521c98..3ddf0fb058 100644 --- a/spring-mockito/pom.xml +++ b/spring-mockito/pom.xml @@ -21,7 +21,7 @@ org.springframework.boot - spring-boot-starter + spring-boot-starter-web org.mockito diff --git a/spring-mockito/src/main/java/com/baeldung/app/api/Flower.java b/spring-mockito/src/main/java/com/baeldung/app/api/Flower.java new file mode 100644 index 0000000000..dc1c36e3ff --- /dev/null +++ b/spring-mockito/src/main/java/com/baeldung/app/api/Flower.java @@ -0,0 +1,28 @@ +package com.baeldung.app.api; + +public class Flower { + + private String name; + private Integer petals; + + public Flower(String name, Integer petals) { + this.name = name; + this.petals = petals; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public Integer getPetals() { + return petals; + } + + public void setPetals(Integer petals) { + this.petals = petals; + } +} diff --git a/spring-mockito/src/main/java/com/baeldung/app/api/MessageApi.java b/spring-mockito/src/main/java/com/baeldung/app/api/MessageApi.java new file mode 100644 index 0000000000..edbe5a1d5a --- /dev/null +++ b/spring-mockito/src/main/java/com/baeldung/app/api/MessageApi.java @@ -0,0 +1,31 @@ +package com.baeldung.app.api; + +public class MessageApi { + private String from; + private String to; + private String text; + + public String getFrom() { + return from; + } + + public void setFrom(String from) { + this.from = from; + } + + public String getTo() { + return to; + } + + public void setTo(String to) { + this.to = to; + } + + public String getText() { + return text; + } + + public void setText(String text) { + this.text = text; + } +} diff --git a/spring-mockito/src/main/java/com/baeldung/app/rest/FlowerController.java b/spring-mockito/src/main/java/com/baeldung/app/rest/FlowerController.java new file mode 100644 index 0000000000..b3d8888cec --- /dev/null +++ b/spring-mockito/src/main/java/com/baeldung/app/rest/FlowerController.java @@ -0,0 +1,27 @@ +package com.baeldung.app.rest; + +import com.baeldung.app.api.Flower; +import com.baeldung.domain.service.FlowerService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; + +@Controller +@RequestMapping("/flowers") +public class FlowerController { + + @Autowired + private FlowerService flowerService; + + @PostMapping("/isAFlower") + public String isAFlower (@RequestBody String flower) { + return flowerService.analize(flower); + } + + @PostMapping("/isABigFlower") + public Boolean isABigFlower (@RequestBody Flower flower) { + return flowerService.isABigFlower(flower.getName(), flower.getPetals()); + } +} diff --git a/spring-mockito/src/main/java/com/baeldung/app/rest/MessageController.java b/spring-mockito/src/main/java/com/baeldung/app/rest/MessageController.java new file mode 100644 index 0000000000..e23c2e7607 --- /dev/null +++ b/spring-mockito/src/main/java/com/baeldung/app/rest/MessageController.java @@ -0,0 +1,34 @@ +package com.baeldung.app.rest; + +import com.baeldung.app.api.MessageApi; +import com.baeldung.domain.model.Message; +import com.baeldung.domain.service.MessageService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; + +import java.time.Instant; +import java.util.Date; +import java.util.UUID; + +@Controller +@RequestMapping("/message") +public class MessageController { + + @Autowired + private MessageService messageService; + + @PostMapping + public Message createMessage (@RequestBody MessageApi messageDTO) { + Message message = new Message(); + message.setText(messageDTO.getText()); + message.setFrom(messageDTO.getFrom()); + message.setTo(messageDTO.getTo()); + message.setDate(Date.from(Instant.now())); + message.setId(UUID.randomUUID()); + + return messageService.deliverMessage(message); + } +} diff --git a/spring-mockito/src/main/java/com/baeldung/domain/model/Message.java b/spring-mockito/src/main/java/com/baeldung/domain/model/Message.java new file mode 100644 index 0000000000..a516d5619b --- /dev/null +++ b/spring-mockito/src/main/java/com/baeldung/domain/model/Message.java @@ -0,0 +1,53 @@ +package com.baeldung.domain.model; + +import java.util.Date; +import java.util.UUID; + +public class Message { + + private String from; + private String to; + private String text; + private Date date; + private UUID id; + + public String getFrom() { + return from; + } + + public void setFrom(String from) { + this.from = from; + } + + public String getTo() { + return to; + } + + public void setTo(String to) { + this.to = to; + } + + public String getText() { + return text; + } + + public void setText(String text) { + this.text = text; + } + + public Date getDate() { + return date; + } + + public void setDate(Date date) { + this.date = date; + } + + public UUID getId() { + return id; + } + + public void setId(UUID id) { + this.id = id; + } +} diff --git a/spring-mockito/src/main/java/com/baeldung/domain/service/FlowerService.java b/spring-mockito/src/main/java/com/baeldung/domain/service/FlowerService.java new file mode 100644 index 0000000000..3c76cb5d76 --- /dev/null +++ b/spring-mockito/src/main/java/com/baeldung/domain/service/FlowerService.java @@ -0,0 +1,28 @@ +package com.baeldung.domain.service; + +import org.springframework.stereotype.Service; + +import java.util.Arrays; +import java.util.List; + +@Service +public class FlowerService { + + private List flowers = Arrays.asList("Poppy", "Ageratum", "Carnation", "Diascia", "Lantana"); + + public String analize(String name) { + if(flowers.contains(name)) { + return "flower"; + } + return null; + } + + public boolean isABigFlower(String name, int petals) { + if(flowers.contains(name)) { + if(petals > 10) { + return true; + } + } + return false; + } +} diff --git a/spring-mockito/src/main/java/com/baeldung/domain/service/MessageService.java b/spring-mockito/src/main/java/com/baeldung/domain/service/MessageService.java new file mode 100644 index 0000000000..d156c59571 --- /dev/null +++ b/spring-mockito/src/main/java/com/baeldung/domain/service/MessageService.java @@ -0,0 +1,13 @@ +package com.baeldung.domain.service; + +import com.baeldung.domain.model.Message; +import org.springframework.stereotype.Service; + +@Service +public class MessageService { + + public Message deliverMessage (Message message) { + + return message; + } +} diff --git a/spring-mockito/src/main/java/com/baeldung/domain/util/MessageMatcher.java b/spring-mockito/src/main/java/com/baeldung/domain/util/MessageMatcher.java new file mode 100644 index 0000000000..05cb43e4df --- /dev/null +++ b/spring-mockito/src/main/java/com/baeldung/domain/util/MessageMatcher.java @@ -0,0 +1,27 @@ +package com.baeldung.domain.util; + +import com.baeldung.domain.model.Message; +import org.mockito.ArgumentMatcher; + +public class MessageMatcher extends ArgumentMatcher { + + private Message left; + + public MessageMatcher(Message message) { + this.left = message; + } + + @Override + public boolean matches(Object object) { + if (object instanceof Message) { + Message right = (Message) object; + return left.getFrom().equals(right.getFrom()) && + left.getTo().equals(right.getTo()) && + left.getText().equals(right.getText()) && + right.getDate() != null && + right.getId() != null; + } + + return false; + } +} \ No newline at end of file diff --git a/spring-mockito/src/test/java/com/baeldung/UserServiceIntegrationTest.java b/spring-mockito/src/test/java/com/baeldung/UserServiceIntegrationUnitTest.java similarity index 95% rename from spring-mockito/src/test/java/com/baeldung/UserServiceIntegrationTest.java rename to spring-mockito/src/test/java/com/baeldung/UserServiceIntegrationUnitTest.java index d70f916b12..573a37a9a4 100644 --- a/spring-mockito/src/test/java/com/baeldung/UserServiceIntegrationTest.java +++ b/spring-mockito/src/test/java/com/baeldung/UserServiceIntegrationUnitTest.java @@ -12,7 +12,7 @@ import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; @ActiveProfiles("test") @RunWith(SpringJUnit4ClassRunner.class) @SpringBootTest(classes = MocksApplication.class) -public class UserServiceIntegrationTest { +public class UserServiceIntegrationUnitTest { @Autowired private UserService userService; diff --git a/spring-mockito/src/test/java/com/baeldung/app/rest/FlowerControllerUnitTest.java b/spring-mockito/src/test/java/com/baeldung/app/rest/FlowerControllerUnitTest.java new file mode 100644 index 0000000000..f30af140af --- /dev/null +++ b/spring-mockito/src/test/java/com/baeldung/app/rest/FlowerControllerUnitTest.java @@ -0,0 +1,44 @@ +package com.baeldung.app.rest; + +import com.baeldung.app.api.Flower; +import com.baeldung.domain.service.FlowerService; +import org.junit.Assert; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.mockito.InjectMocks; +import org.mockito.Mock; +import org.mockito.runners.MockitoJUnitRunner; + +import static org.mockito.Matchers.anyInt; +import static org.mockito.Matchers.eq; +import static org.mockito.Mockito.when; + +@RunWith(MockitoJUnitRunner.class) +public class FlowerControllerUnitTest { + + @Mock + private FlowerService flowerService; + + @InjectMocks + private FlowerController flowerController; + + @Test + public void isAFlower_withMockito_OK() { + when(flowerService.analize(eq("violetta"))).thenReturn("Flower"); + + String response = flowerController.isAFlower("violetta"); + + Assert.assertEquals("Flower", response); + } + + @Test + public void isABigFlower_withMockito_OK() { + when(flowerService.isABigFlower(eq("violetta"), anyInt())).thenReturn(true); + + Flower flower = new Flower("violetta", 15); + + Boolean response = flowerController.isABigFlower(flower); + + Assert.assertTrue(response); + } +} diff --git a/spring-mockito/src/test/java/com/baeldung/app/rest/MessageControllerUnitTest.java b/spring-mockito/src/test/java/com/baeldung/app/rest/MessageControllerUnitTest.java new file mode 100644 index 0000000000..e303c85caf --- /dev/null +++ b/spring-mockito/src/test/java/com/baeldung/app/rest/MessageControllerUnitTest.java @@ -0,0 +1,42 @@ +package com.baeldung.app.rest; + +import com.baeldung.app.api.MessageApi; +import com.baeldung.domain.model.Message; +import com.baeldung.domain.service.MessageService; +import com.baeldung.domain.util.MessageMatcher; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.mockito.InjectMocks; +import org.mockito.Matchers; +import org.mockito.Mock; +import org.mockito.Mockito; +import org.mockito.runners.MockitoJUnitRunner; + +import static org.mockito.Mockito.times; + +@RunWith(MockitoJUnitRunner.class) +public class MessageControllerUnitTest { + + @Mock + private MessageService messageService; + + @InjectMocks + private MessageController messageController; + + @Test + public void createMessage_NewMessage_OK() { + MessageApi messageApi = new MessageApi(); + messageApi.setFrom("me"); + messageApi.setTo("you"); + messageApi.setText("Hello, you!"); + + messageController.createMessage(messageApi); + + Message message = new Message(); + message.setFrom("me"); + message.setTo("you"); + message.setText("Hello, you!"); + + Mockito.verify(messageService, times(1)).deliverMessage(Matchers.argThat(new MessageMatcher(message))); + } +} From 8080f07c6c6d2c65b390e9218d4f88df6e974d90 Mon Sep 17 00:00:00 2001 From: Devesh Chanchlani Date: Thu, 7 Jun 2018 10:18:48 +0400 Subject: [PATCH 39/55] BAEL-1758: removing helper class and adding static functions to the Kotlin Enum example (#4419) --- .../kotlin/com/baeldung/enums/CardType.kt | 15 +++++++ .../com/baeldung/enums/CardTypeHelper.kt | 16 ------- .../baeldung/enums/CardTypeHelperUnitTest.kt | 43 ------------------- .../com/baeldung/enums/CardTypeUnitTest.kt | 32 ++++++++++++++ 4 files changed, 47 insertions(+), 59 deletions(-) delete mode 100644 core-kotlin/src/main/kotlin/com/baeldung/enums/CardTypeHelper.kt delete mode 100644 core-kotlin/src/test/kotlin/com/baeldung/enums/CardTypeHelperUnitTest.kt diff --git a/core-kotlin/src/main/kotlin/com/baeldung/enums/CardType.kt b/core-kotlin/src/main/kotlin/com/baeldung/enums/CardType.kt index ae0c707289..013c8070bf 100644 --- a/core-kotlin/src/main/kotlin/com/baeldung/enums/CardType.kt +++ b/core-kotlin/src/main/kotlin/com/baeldung/enums/CardType.kt @@ -29,5 +29,20 @@ enum class CardType(val color: String) : ICardLimit { } }; + companion object { + fun getCardTypeByColor(color: String): CardType? { + for (cardType in CardType.values()) { + if (cardType.color.equals(color)) { + return cardType; + } + } + return null + } + + fun getCardTypeByName(name: String): CardType { + return CardType.valueOf(name.toUpperCase()) + } + } + abstract fun calculateCashbackPercent(): Float } \ No newline at end of file diff --git a/core-kotlin/src/main/kotlin/com/baeldung/enums/CardTypeHelper.kt b/core-kotlin/src/main/kotlin/com/baeldung/enums/CardTypeHelper.kt deleted file mode 100644 index 29982192bb..0000000000 --- a/core-kotlin/src/main/kotlin/com/baeldung/enums/CardTypeHelper.kt +++ /dev/null @@ -1,16 +0,0 @@ -package com.baeldung.enums - -class CardTypeHelper { - fun getCardTypeByColor(color: String): CardType? { - for (cardType in CardType.values()) { - if (cardType.color.equals(color)) { - return cardType; - } - } - return null - } - - fun getCardTypeByName(name: String): CardType { - return CardType.valueOf(name.toUpperCase()) - } -} \ No newline at end of file diff --git a/core-kotlin/src/test/kotlin/com/baeldung/enums/CardTypeHelperUnitTest.kt b/core-kotlin/src/test/kotlin/com/baeldung/enums/CardTypeHelperUnitTest.kt deleted file mode 100644 index 8fcd281784..0000000000 --- a/core-kotlin/src/test/kotlin/com/baeldung/enums/CardTypeHelperUnitTest.kt +++ /dev/null @@ -1,43 +0,0 @@ -package com.baeldung.enums - -import org.junit.jupiter.api.Assertions -import org.junit.jupiter.api.Test - -internal class CardTypeHelperUnitTest { - - @Test - fun whenGetCardTypeByColor_thenSilverCardType() { - val cardTypeHelper = CardTypeHelper() - Assertions.assertEquals(CardType.SILVER, cardTypeHelper.getCardTypeByColor("gray")) - } - - @Test - fun whenGetCardTypeByColor_thenGoldCardType() { - val cardTypeHelper = CardTypeHelper() - Assertions.assertEquals(CardType.GOLD, cardTypeHelper.getCardTypeByColor("yellow")) - } - - @Test - fun whenGetCardTypeByColor_thenPlatinumCardType() { - val cardTypeHelper = CardTypeHelper() - Assertions.assertEquals(CardType.PLATINUM, cardTypeHelper.getCardTypeByColor("black")) - } - - @Test - fun whenGetCardTypeByName_thenSilverCardType() { - val cardTypeHelper = CardTypeHelper() - Assertions.assertEquals(CardType.SILVER, cardTypeHelper.getCardTypeByName("silver")) - } - - @Test - fun whenGetCardTypeByName_thenGoldCardType() { - val cardTypeHelper = CardTypeHelper() - Assertions.assertEquals(CardType.GOLD, cardTypeHelper.getCardTypeByName("gold")) - } - - @Test - fun whenGetCardTypeByName_thenPlatinumCardType() { - val cardTypeHelper = CardTypeHelper() - Assertions.assertEquals(CardType.PLATINUM, cardTypeHelper.getCardTypeByName("platinum")) - } -} diff --git a/core-kotlin/src/test/kotlin/com/baeldung/enums/CardTypeUnitTest.kt b/core-kotlin/src/test/kotlin/com/baeldung/enums/CardTypeUnitTest.kt index 0e74e1cf56..525faebd55 100644 --- a/core-kotlin/src/test/kotlin/com/baeldung/enums/CardTypeUnitTest.kt +++ b/core-kotlin/src/test/kotlin/com/baeldung/enums/CardTypeUnitTest.kt @@ -1,5 +1,6 @@ package com.baeldung.enums +import org.junit.jupiter.api.Assertions import org.junit.jupiter.api.Assertions.assertEquals import org.junit.jupiter.api.Test @@ -49,4 +50,35 @@ internal class CardTypeUnitTest { fun givenPlatinumCardType_whenCheckColor_thenReturnColor() { assertEquals("black", CardType.PLATINUM.color) } + + @Test + fun whenGetCardTypeByColor_thenSilverCardType() { + Assertions.assertEquals(CardType.SILVER, CardType.getCardTypeByColor("gray")) + } + + @Test + fun whenGetCardTypeByColor_thenGoldCardType() { + Assertions.assertEquals(CardType.GOLD, CardType.getCardTypeByColor("yellow")) + } + + @Test + fun whenGetCardTypeByColor_thenPlatinumCardType() { + Assertions.assertEquals(CardType.PLATINUM, CardType.getCardTypeByColor("black")) + } + + @Test + fun whenGetCardTypeByName_thenSilverCardType() { + Assertions.assertEquals(CardType.SILVER, CardType.getCardTypeByName("silver")) + } + + @Test + fun whenGetCardTypeByName_thenGoldCardType() { + Assertions.assertEquals(CardType.GOLD, CardType.getCardTypeByName("gold")) + } + + @Test + fun whenGetCardTypeByName_thenPlatinumCardType() { + Assertions.assertEquals(CardType.PLATINUM, CardType.getCardTypeByName("platinum")) + } + } From 0a3d212a2a32a3bef5d0304fcb3e821b43366ca8 Mon Sep 17 00:00:00 2001 From: Marcos Lopez Gonzalez Date: Fri, 8 Jun 2018 07:35:46 +0200 Subject: [PATCH 40/55] BAEL-1773 Find the middle element of a Linked List. (#4425) * BAEL-1773 - find middle element of linked list * changes from review * changes from review * find middle element in linked list * typo --- .../linkedlist/MiddleElementLookup.java | 18 ++++-- .../java/com/baeldung/linkedlist/Node.java | 34 ++++++++++ .../MiddleElementLookupUnitTest.java | 62 +++++++++++-------- 3 files changed, 83 insertions(+), 31 deletions(-) create mode 100644 core-java/src/main/java/com/baeldung/linkedlist/Node.java diff --git a/core-java/src/main/java/com/baeldung/linkedlist/MiddleElementLookup.java b/core-java/src/main/java/com/baeldung/linkedlist/MiddleElementLookup.java index 27684c93d2..2caf17fd0c 100644 --- a/core-java/src/main/java/com/baeldung/linkedlist/MiddleElementLookup.java +++ b/core-java/src/main/java/com/baeldung/linkedlist/MiddleElementLookup.java @@ -1,10 +1,20 @@ package com.baeldung.linkedlist; -import com.baeldung.linkedlist.LinkedList.Node; +import java.util.LinkedList; + +import com.baeldung.linkedlist.Node; public class MiddleElementLookup { - public static String findMiddleElement(Node head) { + public static String findMiddleElementLinkedList(LinkedList linkedList) { + if (linkedList == null || linkedList.isEmpty()) { + return null; + } + + return linkedList.get((linkedList.size() - 1) / 2); + } + + public static String findMiddleElementFromHead(Node head) { if (head == null) { return null; } @@ -26,7 +36,7 @@ public class MiddleElementLookup { return current.data(); } - public static String findMiddleElement1PassRecursively(Node head) { + public static String findMiddleElementFromHead1PassRecursively(Node head) { if (head == null) { return null; } @@ -53,7 +63,7 @@ public class MiddleElementLookup { middleAux.length--; } - public static String findMiddleElement1PassIteratively(Node head) { + public static String findMiddleElementFromHead1PassIteratively(Node head) { if (head == null) { return null; } diff --git a/core-java/src/main/java/com/baeldung/linkedlist/Node.java b/core-java/src/main/java/com/baeldung/linkedlist/Node.java new file mode 100644 index 0000000000..daceaffdcd --- /dev/null +++ b/core-java/src/main/java/com/baeldung/linkedlist/Node.java @@ -0,0 +1,34 @@ +package com.baeldung.linkedlist; + +public class Node { + private Node next; + private String data; + + public Node(String data) { + this.data = data; + } + + public String data() { + return data; + } + + public void setData(String data) { + this.data = data; + } + + public boolean hasNext() { + return next != null; + } + + public Node next() { + return next; + } + + public void setNext(Node next) { + this.next = next; + } + + public String toString() { + return this.data; + } +} diff --git a/core-java/src/test/java/com/baeldung/linkedlist/MiddleElementLookupUnitTest.java b/core-java/src/test/java/com/baeldung/linkedlist/MiddleElementLookupUnitTest.java index d456259612..08a4e52ff9 100644 --- a/core-java/src/test/java/com/baeldung/linkedlist/MiddleElementLookupUnitTest.java +++ b/core-java/src/test/java/com/baeldung/linkedlist/MiddleElementLookupUnitTest.java @@ -2,51 +2,46 @@ package com.baeldung.linkedlist; import static org.junit.Assert.assertEquals; +import java.util.LinkedList; + import org.junit.Test; public class MiddleElementLookupUnitTest { @Test - public void whenFindingMiddle_thenMiddleFound() { - String middle = MiddleElementLookup.findMiddleElement(createList(5).head()); - assertEquals("3", middle); - - middle = MiddleElementLookup.findMiddleElement(createList(4).head()); - assertEquals("2", middle); + public void whenFindingMiddleLinkedList_thenMiddleFound() { + assertEquals("3", MiddleElementLookup.findMiddleElementLinkedList(createLinkedList(5))); + assertEquals("2", MiddleElementLookup.findMiddleElementLinkedList(createLinkedList(4))); } @Test - public void whenFindingMiddle1PassRecursively_thenMiddleFound() { - String middle = MiddleElementLookup.findMiddleElement1PassRecursively(createList(5).head()); - assertEquals("3", middle); - - middle = MiddleElementLookup.findMiddleElement1PassRecursively(createList(4).head()); - assertEquals("2", middle); + public void whenFindingMiddleFromHead_thenMiddleFound() { + assertEquals("3", MiddleElementLookup.findMiddleElementFromHead(createNodesList(5))); + assertEquals("2", MiddleElementLookup.findMiddleElementFromHead(createNodesList(4))); } @Test - public void whenFindingMiddle1PassIteratively_thenMiddleFound() { - String middle = MiddleElementLookup.findMiddleElement1PassIteratively(createList(5).head()); - assertEquals("3", middle); + public void whenFindingMiddleFromHead1PassRecursively_thenMiddleFound() { + assertEquals("3", MiddleElementLookup.findMiddleElementFromHead1PassRecursively(createNodesList(5))); + assertEquals("2", MiddleElementLookup.findMiddleElementFromHead1PassRecursively(createNodesList(4))); + } - middle = MiddleElementLookup.findMiddleElement1PassIteratively(createList(4).head()); - assertEquals("2", middle); + @Test + public void whenFindingMiddleFromHead1PassIteratively_thenMiddleFound() { + assertEquals("3", MiddleElementLookup.findMiddleElementFromHead1PassIteratively(createNodesList(5))); + assertEquals("2", MiddleElementLookup.findMiddleElementFromHead1PassIteratively(createNodesList(4))); } @Test public void whenListEmptyOrNull_thenMiddleNull() { - String middle = MiddleElementLookup.findMiddleElement(null); - assertEquals(null, middle); - - middle = MiddleElementLookup.findMiddleElement1PassIteratively(null); - assertEquals(null, middle); - - middle = MiddleElementLookup.findMiddleElement1PassRecursively(null); - assertEquals(null, middle); + assertEquals(null, MiddleElementLookup.findMiddleElementLinkedList(null)); + assertEquals(null, MiddleElementLookup.findMiddleElementFromHead(null)); + assertEquals(null, MiddleElementLookup.findMiddleElementFromHead1PassIteratively(null)); + assertEquals(null, MiddleElementLookup.findMiddleElementFromHead1PassRecursively(null)); } - private static LinkedList createList(int n) { - LinkedList list = new LinkedList(); + private static LinkedList createLinkedList(int n) { + LinkedList list = new LinkedList<>(); for (int i = 1; i <= n; i++) { list.add(String.valueOf(i)); @@ -55,4 +50,17 @@ public class MiddleElementLookupUnitTest { return list; } + private static Node createNodesList(int n) { + Node head = new Node("1"); + Node current = head; + + for (int i = 2; i <= n; i++) { + Node newNode = new Node(String.valueOf(i)); + current.setNext(newNode); + current = newNode; + } + + return head; + } + } From 749611e3142b90f48dd0bb66191d6f7c59c028a2 Mon Sep 17 00:00:00 2001 From: Seun Matt Date: Fri, 8 Jun 2018 08:05:37 +0100 Subject: [PATCH 41/55] updated example code for BAEL-1425 (#4424) --- .../com/baeldung/commons/math3/Histogram.java | 34 ++++++++++--------- 1 file changed, 18 insertions(+), 16 deletions(-) diff --git a/libraries/src/main/java/com/baeldung/commons/math3/Histogram.java b/libraries/src/main/java/com/baeldung/commons/math3/Histogram.java index 5b4097b1e4..a8c15887be 100644 --- a/libraries/src/main/java/com/baeldung/commons/math3/Histogram.java +++ b/libraries/src/main/java/com/baeldung/commons/math3/Histogram.java @@ -47,27 +47,29 @@ public class Histogram { private Map processRawData() { - List datasetList = Arrays.asList(36, 25, 38, 46, 55, 68, 72, 55, 36, 38, 67, 45, 22, 48, 91, 46, 52, 61, 58, 55); + List datasetList = Arrays.asList( + 36, 25, 38, 46, 55, 68, 72, + 55, 36, 38, 67, 45, 22, 48, + 91, 46, 52, 61, 58, 55); Frequency frequency = new Frequency(); datasetList.forEach(d -> frequency.addValue(Double.parseDouble(d.toString()))); - List processed = new ArrayList(); - datasetList.forEach(d -> { - double observation = Double.parseDouble(d.toString()); + datasetList.stream() + .map(d -> Double.parseDouble(d.toString())) + .distinct() + .forEach(observation -> { + long observationFrequency = frequency.getCount(observation); + int upperBoundary = (observation > classWidth) + ? Math.multiplyExact( (int) Math.ceil(observation / classWidth), classWidth) + : classWidth; + int lowerBoundary = (upperBoundary > classWidth) + ? Math.subtractExact(upperBoundary, classWidth) + : 0; + String bin = lowerBoundary + "-" + upperBoundary; - if(processed.contains(observation)) - return; + updateDistributionMap(lowerBoundary, bin, observationFrequency); - long observationFrequency = frequency.getCount(observation); - int upperBoundary = (observation > classWidth) ? Math.multiplyExact( (int) Math.ceil(observation / classWidth), classWidth) : classWidth; - int lowerBoundary = (upperBoundary > classWidth) ? Math.subtractExact(upperBoundary, classWidth) : 0; - String bin = lowerBoundary + "-" + upperBoundary; - - updateDistributionMap(lowerBoundary, bin, observationFrequency); - - processed.add(observation); - - }); + }); return distributionMap; } From d28ffe5982171f7e13d642acf74664cd4e362194 Mon Sep 17 00:00:00 2001 From: Doha2012 Date: Fri, 8 Jun 2018 16:22:55 +0000 Subject: [PATCH 42/55] upgrade katharsis 3 (#4429) --- spring-katharsis/pom.xml | 2 +- .../main/java/org/baeldung/Application.java | 4 ++ .../persistence/katharsis/JsonApiFilter.java | 40 ------------------- .../katharsis/RoleResourceRepository.java | 28 +++++++++---- .../katharsis/UserResourceRepository.java | 27 +++++++++---- .../UserToRoleRelationshipRepository.java | 24 ++++++++--- .../org/baeldung/persistence/model/Role.java | 25 +++++++----- .../org/baeldung/persistence/model/User.java | 19 +++++---- .../src/main/resources/application.properties | 5 ++- 9 files changed, 93 insertions(+), 81 deletions(-) delete mode 100644 spring-katharsis/src/main/java/org/baeldung/persistence/katharsis/JsonApiFilter.java diff --git a/spring-katharsis/pom.xml b/spring-katharsis/pom.xml index 27075de747..8bc75d97b3 100644 --- a/spring-katharsis/pom.xml +++ b/spring-katharsis/pom.xml @@ -33,7 +33,7 @@ io.katharsis - katharsis-servlet + katharsis-spring ${katharsis.version} diff --git a/spring-katharsis/src/main/java/org/baeldung/Application.java b/spring-katharsis/src/main/java/org/baeldung/Application.java index ee072305d8..5ce4ac7e08 100644 --- a/spring-katharsis/src/main/java/org/baeldung/Application.java +++ b/spring-katharsis/src/main/java/org/baeldung/Application.java @@ -1,10 +1,14 @@ package org.baeldung; +import io.katharsis.spring.boot.v3.KatharsisConfigV3; + import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.web.support.SpringBootServletInitializer; +import org.springframework.context.annotation.Import; @SpringBootApplication +@Import(KatharsisConfigV3.class) public class Application extends SpringBootServletInitializer { public static void main(String[] args) { diff --git a/spring-katharsis/src/main/java/org/baeldung/persistence/katharsis/JsonApiFilter.java b/spring-katharsis/src/main/java/org/baeldung/persistence/katharsis/JsonApiFilter.java deleted file mode 100644 index 3d0d441357..0000000000 --- a/spring-katharsis/src/main/java/org/baeldung/persistence/katharsis/JsonApiFilter.java +++ /dev/null @@ -1,40 +0,0 @@ -package org.baeldung.persistence.katharsis; - -import io.katharsis.invoker.internal.legacy.KatharsisInvokerBuilder; -import io.katharsis.legacy.locator.JsonServiceLocator; -import io.katharsis.servlet.legacy.AbstractKatharsisFilter; - -import org.springframework.beans.BeansException; -import org.springframework.beans.factory.BeanFactory; -import org.springframework.beans.factory.BeanFactoryAware; -import org.springframework.stereotype.Component; - -@Component -public class JsonApiFilter extends AbstractKatharsisFilter implements BeanFactoryAware { - - private static final String DEFAULT_RESOURCE_SEARCH_PACKAGE = "org.baeldung.persistence"; - - private static final String RESOURCE_DEFAULT_DOMAIN = "http://localhost:8080"; - - private BeanFactory beanFactory; - - @Override - public void setBeanFactory(BeanFactory beanFactory) throws BeansException { - this.beanFactory = beanFactory; - } - - @Override - protected KatharsisInvokerBuilder createKatharsisInvokerBuilder() { - final KatharsisInvokerBuilder builder = new KatharsisInvokerBuilder(); - - builder.resourceSearchPackage(DEFAULT_RESOURCE_SEARCH_PACKAGE).resourceDefaultDomain(RESOURCE_DEFAULT_DOMAIN).jsonServiceLocator(new JsonServiceLocator() { - @Override - public T getInstance(Class clazz) { - return beanFactory.getBean(clazz); - } - }); - - return builder; - } - -} diff --git a/spring-katharsis/src/main/java/org/baeldung/persistence/katharsis/RoleResourceRepository.java b/spring-katharsis/src/main/java/org/baeldung/persistence/katharsis/RoleResourceRepository.java index 52ca40e26e..1998c414bb 100644 --- a/spring-katharsis/src/main/java/org/baeldung/persistence/katharsis/RoleResourceRepository.java +++ b/spring-katharsis/src/main/java/org/baeldung/persistence/katharsis/RoleResourceRepository.java @@ -1,7 +1,9 @@ package org.baeldung.persistence.katharsis; -import io.katharsis.legacy.queryParams.QueryParams; -import io.katharsis.legacy.repository.ResourceRepository; + +import io.katharsis.queryspec.QuerySpec; +import io.katharsis.repository.ResourceRepositoryV2; +import io.katharsis.resource.list.ResourceList; import org.baeldung.persistence.dao.RoleRepository; import org.baeldung.persistence.model.Role; @@ -9,23 +11,23 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @Component -public class RoleResourceRepository implements ResourceRepository { +public class RoleResourceRepository implements ResourceRepositoryV2 { @Autowired private RoleRepository roleRepository; @Override - public Role findOne(Long id, QueryParams params) { + public Role findOne(Long id, QuerySpec querySpec) { return roleRepository.findOne(id); } @Override - public Iterable findAll(QueryParams params) { - return roleRepository.findAll(); + public ResourceList findAll(QuerySpec querySpec) { + return querySpec.apply(roleRepository.findAll()); } @Override - public Iterable findAll(Iterable ids, QueryParams params) { - return roleRepository.findAll(ids); + public ResourceList findAll(Iterable ids, QuerySpec querySpec) { + return querySpec.apply(roleRepository.findAll(ids)); } @Override @@ -38,4 +40,14 @@ public class RoleResourceRepository implements ResourceRepository { roleRepository.delete(id); } + @Override + public Class getResourceClass() { + return Role.class; + } + + @Override + public S create(S entity) { + return save(entity); + } + } diff --git a/spring-katharsis/src/main/java/org/baeldung/persistence/katharsis/UserResourceRepository.java b/spring-katharsis/src/main/java/org/baeldung/persistence/katharsis/UserResourceRepository.java index a36c3c3c0a..9b3de31601 100644 --- a/spring-katharsis/src/main/java/org/baeldung/persistence/katharsis/UserResourceRepository.java +++ b/spring-katharsis/src/main/java/org/baeldung/persistence/katharsis/UserResourceRepository.java @@ -1,7 +1,8 @@ package org.baeldung.persistence.katharsis; -import io.katharsis.legacy.queryParams.QueryParams; -import io.katharsis.legacy.repository.ResourceRepository; +import io.katharsis.queryspec.QuerySpec; +import io.katharsis.repository.ResourceRepositoryV2; +import io.katharsis.resource.list.ResourceList; import org.baeldung.persistence.dao.UserRepository; import org.baeldung.persistence.model.User; @@ -9,24 +10,24 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @Component -public class UserResourceRepository implements ResourceRepository { +public class UserResourceRepository implements ResourceRepositoryV2 { @Autowired private UserRepository userRepository; @Override - public User findOne(Long id, QueryParams params) { + public User findOne(Long id, QuerySpec querySpec) { return userRepository.findOne(id); } @Override - public Iterable findAll(QueryParams params) { - return userRepository.findAll(); + public ResourceList findAll(QuerySpec querySpec) { + return querySpec.apply(userRepository.findAll()); } @Override - public Iterable findAll(Iterable ids, QueryParams params) { - return userRepository.findAll(ids); + public ResourceList findAll(Iterable ids, QuerySpec querySpec) { + return querySpec.apply(userRepository.findAll(ids)); } @Override @@ -39,4 +40,14 @@ public class UserResourceRepository implements ResourceRepository { userRepository.delete(id); } + @Override + public Class getResourceClass() { + return User.class; + } + + @Override + public S create(S entity) { + return save(entity); + } + } diff --git a/spring-katharsis/src/main/java/org/baeldung/persistence/katharsis/UserToRoleRelationshipRepository.java b/spring-katharsis/src/main/java/org/baeldung/persistence/katharsis/UserToRoleRelationshipRepository.java index 19007a285f..dbeb769fac 100644 --- a/spring-katharsis/src/main/java/org/baeldung/persistence/katharsis/UserToRoleRelationshipRepository.java +++ b/spring-katharsis/src/main/java/org/baeldung/persistence/katharsis/UserToRoleRelationshipRepository.java @@ -1,7 +1,8 @@ package org.baeldung.persistence.katharsis; -import io.katharsis.legacy.queryParams.QueryParams; -import io.katharsis.legacy.repository.RelationshipRepository; +import io.katharsis.queryspec.QuerySpec; +import io.katharsis.repository.RelationshipRepositoryV2; +import io.katharsis.resource.list.ResourceList; import java.util.HashSet; import java.util.Set; @@ -14,7 +15,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @Component -public class UserToRoleRelationshipRepository implements RelationshipRepository { +public class UserToRoleRelationshipRepository implements RelationshipRepositoryV2 { @Autowired private UserRepository userRepository; @@ -52,14 +53,25 @@ public class UserToRoleRelationshipRepository implements RelationshipRepository< } @Override - public Role findOneTarget(Long sourceId, String fieldName, QueryParams QueryParams) { + public Role findOneTarget(Long sourceId, String fieldName, QuerySpec querySpec) { // not for many-to-many return null; } @Override - public Iterable findManyTargets(Long sourceId, String fieldName, QueryParams QueryParams) { + public ResourceList findManyTargets(Long sourceId, String fieldName, QuerySpec querySpec) { final User user = userRepository.findOne(sourceId); - return user.getRoles(); + return querySpec.apply(user.getRoles()); } + + @Override + public Class getSourceResourceClass() { + return User.class; + } + + @Override + public Class getTargetResourceClass() { + return Role.class; + } + } diff --git a/spring-katharsis/src/main/java/org/baeldung/persistence/model/Role.java b/spring-katharsis/src/main/java/org/baeldung/persistence/model/Role.java index fcaf40ac2c..f391efd37c 100644 --- a/spring-katharsis/src/main/java/org/baeldung/persistence/model/Role.java +++ b/spring-katharsis/src/main/java/org/baeldung/persistence/model/Role.java @@ -1,8 +1,8 @@ package org.baeldung.persistence.model; import io.katharsis.resource.annotations.JsonApiId; +import io.katharsis.resource.annotations.JsonApiRelation; import io.katharsis.resource.annotations.JsonApiResource; -import io.katharsis.resource.annotations.JsonApiToMany; import java.util.Set; @@ -25,7 +25,7 @@ public class Role { private String name; @ManyToMany(mappedBy = "roles") - @JsonApiToMany + @JsonApiRelation private Set users; // @@ -66,23 +66,30 @@ public class Role { @Override public boolean equals(Object obj) { - if (this == obj) + if (this == obj) { return true; - if (obj == null) + } + if (obj == null) { return false; - if (getClass() != obj.getClass()) + } + if (getClass() != obj.getClass()) { return false; + } final Role other = (Role) obj; if (id == null) { - if (other.id != null) + if (other.id != null) { return false; - } else if (!id.equals(other.id)) + } + } else if (!id.equals(other.id)) { return false; + } if (name == null) { - if (other.name != null) + if (other.name != null) { return false; - } else if (!name.equals(other.name)) + } + } else if (!name.equals(other.name)) { return false; + } return true; } diff --git a/spring-katharsis/src/main/java/org/baeldung/persistence/model/User.java b/spring-katharsis/src/main/java/org/baeldung/persistence/model/User.java index 58a92002c8..7c55e29599 100644 --- a/spring-katharsis/src/main/java/org/baeldung/persistence/model/User.java +++ b/spring-katharsis/src/main/java/org/baeldung/persistence/model/User.java @@ -1,9 +1,9 @@ package org.baeldung.persistence.model; import io.katharsis.resource.annotations.JsonApiId; -import io.katharsis.resource.annotations.JsonApiIncludeByDefault; +import io.katharsis.resource.annotations.JsonApiRelation; import io.katharsis.resource.annotations.JsonApiResource; -import io.katharsis.resource.annotations.JsonApiToMany; +import io.katharsis.resource.annotations.SerializeType; import java.util.Set; @@ -31,8 +31,7 @@ public class User { @ManyToMany(fetch = FetchType.EAGER) @JoinTable(name = "users_roles", joinColumns = @JoinColumn(name = "user_id", referencedColumnName = "id"), inverseJoinColumns = @JoinColumn(name = "role_id", referencedColumnName = "id")) - @JsonApiToMany - @JsonApiIncludeByDefault + @JsonApiRelation(serialize=SerializeType.EAGER) private Set roles; public User() { @@ -87,15 +86,19 @@ public class User { @Override public boolean equals(final Object obj) { - if (this == obj) + if (this == obj) { return true; - if (obj == null) + } + if (obj == null) { return false; - if (getClass() != obj.getClass()) + } + if (getClass() != obj.getClass()) { return false; + } final User user = (User) obj; - if (!email.equals(user.email)) + if (!email.equals(user.email)) { return false; + } return true; } diff --git a/spring-katharsis/src/main/resources/application.properties b/spring-katharsis/src/main/resources/application.properties index b55fdbba03..120b3c62ee 100644 --- a/spring-katharsis/src/main/resources/application.properties +++ b/spring-katharsis/src/main/resources/application.properties @@ -6,4 +6,7 @@ spring.jpa.hibernate.ddl-auto = create-drop spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.H2Dialect server.port=8082 -server.context-path=/spring-katharsis \ No newline at end of file +server.context-path=/spring-katharsis + +katharsis.domainName=http://localhost:8082/spring-katharsis +katharsis.pathPrefix=/ \ No newline at end of file From b22cd9e63bf3e35d8fac1b9351dc729388c04b48 Mon Sep 17 00:00:00 2001 From: jjangga0214 Date: Sat, 9 Jun 2018 01:24:04 +0900 Subject: [PATCH 43/55] fix mistyped word (#4408) --- .../main/java/com/baeldung/algorithms/mcts/tictactoe/Board.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/algorithms/src/main/java/com/baeldung/algorithms/mcts/tictactoe/Board.java b/algorithms/src/main/java/com/baeldung/algorithms/mcts/tictactoe/Board.java index 8b47fa0fdf..5ca2d626f1 100644 --- a/algorithms/src/main/java/com/baeldung/algorithms/mcts/tictactoe/Board.java +++ b/algorithms/src/main/java/com/baeldung/algorithms/mcts/tictactoe/Board.java @@ -148,7 +148,7 @@ public class Board { System.out.println("Game Draw"); break; case IN_PROGRESS: - System.out.println("Game In rogress"); + System.out.println("Game In Progress"); break; } } From 8bba7874b027c4c6db710cb2d29fcad01e34f386 Mon Sep 17 00:00:00 2001 From: Grzegorz Piwowarek Date: Fri, 8 Jun 2018 18:24:22 +0200 Subject: [PATCH 44/55] Update JavaReadFromFileUnitTest.java (#4404) --- .../java/org/baeldung/java/io/JavaReadFromFileUnitTest.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/core-java-io/src/test/java/org/baeldung/java/io/JavaReadFromFileUnitTest.java b/core-java-io/src/test/java/org/baeldung/java/io/JavaReadFromFileUnitTest.java index 0945a21b1b..a96232d66c 100644 --- a/core-java-io/src/test/java/org/baeldung/java/io/JavaReadFromFileUnitTest.java +++ b/core-java-io/src/test/java/org/baeldung/java/io/JavaReadFromFileUnitTest.java @@ -1,6 +1,7 @@ package org.baeldung.java.io; import org.junit.Test; +import org.junit.Ignore; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -105,6 +106,7 @@ public class JavaReadFromFileUnitTest { } @Test + @Ignore // TODO public void whenReadUTFEncodedFile_thenCorrect() throws IOException { final String expected_value = "青空"; final BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream("src/test/resources/test_read7.in"), "UTF-8")); From 2aa540db03360746350563274afd38436dfb0caf Mon Sep 17 00:00:00 2001 From: Tom Hombergs Date: Fri, 8 Jun 2018 18:24:38 +0200 Subject: [PATCH 45/55] added article link (#4393) --- kotlin-js/README.md | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 kotlin-js/README.md diff --git a/kotlin-js/README.md b/kotlin-js/README.md new file mode 100644 index 0000000000..9ef8a999b4 --- /dev/null +++ b/kotlin-js/README.md @@ -0,0 +1,3 @@ +### Relevant articles + +- [Kotlin and Javascript](http://www.baeldung.com/kotlin-javascript) From ff967a62b73e1f909b0bb15c04b8790ecd1441be Mon Sep 17 00:00:00 2001 From: Tom Hombergs Date: Fri, 8 Jun 2018 18:24:54 +0200 Subject: [PATCH 46/55] added link (#4357) --- core-java/README.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/core-java/README.md b/core-java/README.md index 9bc7d9f7ee..484b788974 100644 --- a/core-java/README.md +++ b/core-java/README.md @@ -141,6 +141,7 @@ - [Java KeyStore API](http://www.baeldung.com/java-keystore) - [Double-Checked Locking with Singleton](http://www.baeldung.com/java-singleton-double-checked-locking) - [Guide to Java Clock Class](http://www.baeldung.com/java-clock) +- [Infinite Loops in Java](http://www.baeldung.com/infinite-loops-java) - [Using Java Assertions](http://www.baeldung.com/java-assert) - [Pass-By-Value as a Parameter Passing Mechanism in Java](http://www.baeldung.com/java-pass-by-value-or-pass-by-reference) - [Check If a String Is Numeric in Java](http://www.baeldung.com/java-check-string-number) @@ -149,5 +150,3 @@ - [NaN in Java](http://www.baeldung.com/java-not-a-number) - [Infinite Loops in Java](http://www.baeldung.com/infinite-loops-java) - [Why Use char[] Array Over a String for Storing Passwords in Java?](http://www.baeldung.com/java-storing-passwords) - - From b2fc0d7bde41c834708ff395ed81658f081d484f Mon Sep 17 00:00:00 2001 From: Grzegorz Piwowarek Date: Fri, 8 Jun 2018 18:25:08 +0200 Subject: [PATCH 47/55] Update README.md (#4330) --- README.md | 3 --- 1 file changed, 3 deletions(-) diff --git a/README.md b/README.md index 6dff78aa7a..62d2d5b55e 100644 --- a/README.md +++ b/README.md @@ -39,6 +39,3 @@ This tutorials project is being built **[>> HERE](https://rest-security.ci.cloud - [Apache Maven Standard Directory Layout](http://www.baeldung.com/maven-directory-structure) - [Apache Maven Tutorial](http://www.baeldung.com/maven) -- [Designing a User Friendly Java Library](http://www.baeldung.com/design-a-user-friendly-java-library) -- [Java Service Provider Interface](http://www.baeldung.com/java-spi) -- [Java Streams vs Vavr Streams](http://www.baeldung.com/vavr-java-streams) From f88d03500040481240ec826bad15ba62ef391ba9 Mon Sep 17 00:00:00 2001 From: Eugen Paraschiv Date: Fri, 8 Jun 2018 20:43:24 +0300 Subject: [PATCH 48/55] alinging the module name, artifact id and folder name (and some minor cleanup) --- animal-sniffer-mvn-plugin/pom.xml | 2 +- camel-api/pom.xml | 1 - ejb/ejb-client/pom.xml | 1 - grpc/pom.xml | 2 -- guest/spring-mvc/pom.xml | 22 ---------------------- guest/spring-security/pom.xml | 22 ---------------------- java-websocket/pom.xml | 2 -- xmlunit-2/pom.xml | 1 - 8 files changed, 1 insertion(+), 52 deletions(-) diff --git a/animal-sniffer-mvn-plugin/pom.xml b/animal-sniffer-mvn-plugin/pom.xml index ab7b38f6e0..9ccc7354af 100644 --- a/animal-sniffer-mvn-plugin/pom.xml +++ b/animal-sniffer-mvn-plugin/pom.xml @@ -5,7 +5,7 @@ animal-sniffer-mvn-plugin jar 1.0-SNAPSHOT - example-animal-sniffer-mvn-plugin + animal-sniffer-mvn-plugin http://maven.apache.org diff --git a/camel-api/pom.xml b/camel-api/pom.xml index 86f6713cd6..4e50828b96 100644 --- a/camel-api/pom.xml +++ b/camel-api/pom.xml @@ -5,7 +5,6 @@ com.example spring-boot-camel 0.0.1-SNAPSHOT - Spring-Boot - Camel API com.baeldung diff --git a/ejb/ejb-client/pom.xml b/ejb/ejb-client/pom.xml index 83dd0aef30..88116f8003 100755 --- a/ejb/ejb-client/pom.xml +++ b/ejb/ejb-client/pom.xml @@ -3,7 +3,6 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> 4.0.0 ejb-client - EJB3 Client Maven EJB3 Client Maven diff --git a/grpc/pom.xml b/grpc/pom.xml index ad563f16fd..fb8312e8df 100644 --- a/grpc/pom.xml +++ b/grpc/pom.xml @@ -5,8 +5,6 @@ grpc-demo 0.0.1-SNAPSHOT jar - grpc-demo - http://maven.apache.org com.baeldung diff --git a/guest/spring-mvc/pom.xml b/guest/spring-mvc/pom.xml index 169b216ff9..da4d27b14d 100644 --- a/guest/spring-mvc/pom.xml +++ b/guest/spring-mvc/pom.xml @@ -27,28 +27,6 @@ - - - spring-milestones - Spring Milestones - https://repo.spring.io/milestone - - false - - - - - - - spring-milestones - Spring Milestones - https://repo.spring.io/milestone - - false - - - - UTF-8 UTF-8 diff --git a/guest/spring-security/pom.xml b/guest/spring-security/pom.xml index 16e946d108..793df750de 100644 --- a/guest/spring-security/pom.xml +++ b/guest/spring-security/pom.xml @@ -45,28 +45,6 @@ - - - spring-milestones - Spring Milestones - https://repo.spring.io/milestone - - false - - - - - - - spring-milestones - Spring Milestones - https://repo.spring.io/milestone - - false - - - - UTF-8 UTF-8 diff --git a/java-websocket/pom.xml b/java-websocket/pom.xml index 461182e504..85078bd696 100644 --- a/java-websocket/pom.xml +++ b/java-websocket/pom.xml @@ -5,8 +5,6 @@ java-websocket war 0.0.1-SNAPSHOT - java-websocket Maven Webapp - http://maven.apache.org com.baeldung diff --git a/xmlunit-2/pom.xml b/xmlunit-2/pom.xml index 171f3de03c..0a32b90af5 100644 --- a/xmlunit-2/pom.xml +++ b/xmlunit-2/pom.xml @@ -4,7 +4,6 @@ com.baeldung xmlunit-2 1.0 - XMLUnit-2 com.baeldung From 2efdeed00f9db12eedc5ab7165cc8661359317a6 Mon Sep 17 00:00:00 2001 From: Eugen Paraschiv Date: Fri, 8 Jun 2018 21:04:03 +0300 Subject: [PATCH 49/55] changing parent name --- ethereumj/pom.xml | 4 ++-- flips/pom.xml | 4 ++-- flyway/pom.xml | 4 ++-- hystrix/pom.xml | 4 ++-- jhipster/jhipster-microservice/car-app/pom.xml | 4 ++-- jhipster/jhipster-microservice/dealer-app/pom.xml | 4 ++-- jhipster/jhipster-microservice/gateway-app/pom.xml | 4 ++-- jhipster/jhipster-monolithic/pom.xml | 4 ++-- jjwt/pom.xml | 4 ++-- jmeter/pom.xml | 4 ++-- mesos-marathon/pom.xml | 4 ++-- mvn-wrapper/pom.xml | 4 ++-- {parent-boot-5 => parent-boot-1}/README.md | 0 {parent-boot-5 => parent-boot-1}/pom.xml | 7 +++---- persistence-modules/spring-data-dynamodb/pom.xml | 4 ++-- pom.xml | 2 +- spring-all/pom.xml | 4 ++-- spring-amqp-simple/pom.xml | 4 ++-- spring-aop/pom.xml | 4 ++-- .../greeter-spring-boot-autoconfigure/pom.xml | 4 ++-- .../greeter-spring-boot-sample-app/pom.xml | 4 ++-- .../greeter-spring-boot-starter/pom.xml | 4 ++-- spring-boot-custom-starter/greeter/pom.xml | 4 ++-- spring-boot-keycloak/pom.xml | 4 ++-- .../property-exp-default-config/pom.xml | 4 ++-- spring-cloud-data-flow/batch-job/pom.xml | 4 ++-- spring-cloud-data-flow/data-flow-server/pom.xml | 4 ++-- spring-cloud-data-flow/data-flow-shell/pom.xml | 4 ++-- spring-cloud-data-flow/log-sink/pom.xml | 4 ++-- spring-cloud-data-flow/time-processor/pom.xml | 4 ++-- spring-cloud-data-flow/time-source/pom.xml | 4 ++-- spring-cloud/spring-cloud-bootstrap/config/pom.xml | 4 ++-- spring-cloud/spring-cloud-bootstrap/discovery/pom.xml | 4 ++-- spring-cloud/spring-cloud-bootstrap/gateway/pom.xml | 4 ++-- spring-cloud/spring-cloud-bootstrap/svc-book/pom.xml | 4 ++-- spring-cloud/spring-cloud-bootstrap/svc-rating/pom.xml | 4 ++-- spring-cloud/spring-cloud-bootstrap/zipkin/pom.xml | 4 ++-- spring-cloud/spring-cloud-config/pom.xml | 4 ++-- spring-cloud/spring-cloud-kubernetes/pom.xml | 4 ++-- .../spring-cloud-rest/spring-cloud-rest-books-api/pom.xml | 4 ++-- .../spring-cloud-rest-config-server/pom.xml | 4 ++-- .../spring-cloud-rest-discovery-server/pom.xml | 4 ++-- .../spring-cloud-rest-reviews-api/pom.xml | 4 ++-- spring-cloud/spring-cloud-ribbon-client/pom.xml | 4 ++-- spring-cucumber/pom.xml | 4 ++-- spring-custom-aop/pom.xml | 4 ++-- spring-data-rest/pom.xml | 4 ++-- spring-data-spring-security/pom.xml | 4 ++-- spring-ejb/spring-ejb-client/pom.xml | 4 ++-- spring-jenkins-pipeline/pom.xml | 4 ++-- spring-kafka/pom.xml | 4 ++-- spring-katharsis/pom.xml | 4 ++-- spring-mobile/pom.xml | 4 ++-- spring-mockito/pom.xml | 4 ++-- spring-mvc-email/pom.xml | 4 ++-- spring-mvc-java/pom.xml | 4 ++-- spring-protobuf/pom.xml | 4 ++-- spring-quartz/pom.xml | 4 ++-- spring-reactor/pom.xml | 4 ++-- spring-remoting/pom.xml | 4 ++-- spring-rest-angular/pom.xml | 4 ++-- spring-rest-full/pom.xml | 4 ++-- spring-rest-query-language/pom.xml | 4 ++-- spring-security-acl/pom.xml | 4 ++-- spring-security-cache-control/pom.xml | 4 ++-- .../spring-security-jsp-authentication/pom.xml | 4 ++-- .../spring-security-jsp-authorize/pom.xml | 4 ++-- spring-security-client/spring-security-jsp-config/pom.xml | 4 ++-- spring-security-client/spring-security-mvc/pom.xml | 4 ++-- .../spring-security-thymeleaf-authentication/pom.xml | 4 ++-- .../spring-security-thymeleaf-authorize/pom.xml | 4 ++-- .../spring-security-thymeleaf-config/pom.xml | 4 ++-- spring-security-core/pom.xml | 4 ++-- spring-security-mvc-ldap/pom.xml | 4 ++-- spring-security-rest-custom/pom.xml | 4 ++-- spring-security-sso/pom.xml | 4 ++-- spring-security-stormpath/pom.xml | 4 ++-- spring-security-thymeleaf/pom.xml | 4 ++-- spring-security-x509/pom.xml | 4 ++-- spring-session/pom.xml | 4 ++-- spring-sleuth/pom.xml | 4 ++-- spring-social-login/pom.xml | 4 ++-- spring-zuul/pom.xml | 4 ++-- stripe/pom.xml | 4 ++-- 84 files changed, 166 insertions(+), 167 deletions(-) rename {parent-boot-5 => parent-boot-1}/README.md (100%) rename {parent-boot-5 => parent-boot-1}/pom.xml (96%) diff --git a/ethereumj/pom.xml b/ethereumj/pom.xml index 611b7b09eb..6917505f1b 100644 --- a/ethereumj/pom.xml +++ b/ethereumj/pom.xml @@ -10,10 +10,10 @@ ethereumj - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/flips/pom.xml b/flips/pom.xml index be9f584114..34cbab7035 100644 --- a/flips/pom.xml +++ b/flips/pom.xml @@ -8,10 +8,10 @@ flips - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/flyway/pom.xml b/flyway/pom.xml index 3637f1de28..018f9b7f86 100644 --- a/flyway/pom.xml +++ b/flyway/pom.xml @@ -8,10 +8,10 @@ Flyway Callbacks Demo - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/hystrix/pom.xml b/hystrix/pom.xml index 8e4a9b28b7..b17ca2bfd9 100644 --- a/hystrix/pom.xml +++ b/hystrix/pom.xml @@ -6,10 +6,10 @@ hystrix - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/jhipster/jhipster-microservice/car-app/pom.xml b/jhipster/jhipster-microservice/car-app/pom.xml index 77e214234e..e5593bdbb9 100644 --- a/jhipster/jhipster-microservice/car-app/pom.xml +++ b/jhipster/jhipster-microservice/car-app/pom.xml @@ -3,10 +3,10 @@ 4.0.0 - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../../../parent-boot-5 + ../../../parent-boot-1 com.car.app diff --git a/jhipster/jhipster-microservice/dealer-app/pom.xml b/jhipster/jhipster-microservice/dealer-app/pom.xml index beada8f064..3c21e0042f 100644 --- a/jhipster/jhipster-microservice/dealer-app/pom.xml +++ b/jhipster/jhipster-microservice/dealer-app/pom.xml @@ -3,10 +3,10 @@ 4.0.0 - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../../../parent-boot-5 + ../../../parent-boot-1 com.dealer.app diff --git a/jhipster/jhipster-microservice/gateway-app/pom.xml b/jhipster/jhipster-microservice/gateway-app/pom.xml index d90addf51b..42808e26ce 100644 --- a/jhipster/jhipster-microservice/gateway-app/pom.xml +++ b/jhipster/jhipster-microservice/gateway-app/pom.xml @@ -3,10 +3,10 @@ 4.0.0 - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../../../parent-boot-5 + ../../../parent-boot-1 com.gateway diff --git a/jhipster/jhipster-monolithic/pom.xml b/jhipster/jhipster-monolithic/pom.xml index fc8e8353b4..c8c9578fd6 100644 --- a/jhipster/jhipster-monolithic/pom.xml +++ b/jhipster/jhipster-monolithic/pom.xml @@ -3,10 +3,10 @@ 4.0.0 - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../../parent-boot-5 + ../../parent-boot-1 com.baeldung diff --git a/jjwt/pom.xml b/jjwt/pom.xml index 51d4dcf1c0..2aa52b8818 100644 --- a/jjwt/pom.xml +++ b/jjwt/pom.xml @@ -10,10 +10,10 @@ Exercising the JJWT - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/jmeter/pom.xml b/jmeter/pom.xml index bb5769ef57..5f9509f0be 100644 --- a/jmeter/pom.xml +++ b/jmeter/pom.xml @@ -9,10 +9,10 @@ Intro to Performance testing using JMeter - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/mesos-marathon/pom.xml b/mesos-marathon/pom.xml index 2b7a238ee8..77d13cd5c6 100644 --- a/mesos-marathon/pom.xml +++ b/mesos-marathon/pom.xml @@ -7,10 +7,10 @@ 0.0.1-SNAPSHOT - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/mvn-wrapper/pom.xml b/mvn-wrapper/pom.xml index 6fb9bfeffc..e26df81139 100644 --- a/mvn-wrapper/pom.xml +++ b/mvn-wrapper/pom.xml @@ -9,10 +9,10 @@ Setting up the Maven Wrapper - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/parent-boot-5/README.md b/parent-boot-1/README.md similarity index 100% rename from parent-boot-5/README.md rename to parent-boot-1/README.md diff --git a/parent-boot-5/pom.xml b/parent-boot-1/pom.xml similarity index 96% rename from parent-boot-5/pom.xml rename to parent-boot-1/pom.xml index 32bb2eab04..af14d88aff 100644 --- a/parent-boot-5/pom.xml +++ b/parent-boot-1/pom.xml @@ -2,16 +2,15 @@ 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-boot-5 + parent-boot-1 0.0.1-SNAPSHOT pom - Parent Boot 5 - Parent for all spring boot 1.5 modules + Parent for all Spring Boot 1.x modules org.springframework.boot spring-boot-starter-parent - 1.5.10.RELEASE + 1.5.13.RELEASE diff --git a/persistence-modules/spring-data-dynamodb/pom.xml b/persistence-modules/spring-data-dynamodb/pom.xml index b115c0e087..b1b7c8237b 100644 --- a/persistence-modules/spring-data-dynamodb/pom.xml +++ b/persistence-modules/spring-data-dynamodb/pom.xml @@ -9,10 +9,10 @@ This is simple boot application for Spring boot actuator test - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../../parent-boot-5 + ../../parent-boot-1 diff --git a/pom.xml b/pom.xml index ed724f7142..f7b065722f 100644 --- a/pom.xml +++ b/pom.xml @@ -9,7 +9,7 @@ pom - parent-boot-5 + parent-boot-1 parent-boot-2 parent-spring-4 parent-spring-5 diff --git a/spring-all/pom.xml b/spring-all/pom.xml index f9ced963e7..c509622fca 100644 --- a/spring-all/pom.xml +++ b/spring-all/pom.xml @@ -8,10 +8,10 @@ war - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/spring-amqp-simple/pom.xml b/spring-amqp-simple/pom.xml index f3dfbccaec..eb0f25d1a7 100644 --- a/spring-amqp-simple/pom.xml +++ b/spring-amqp-simple/pom.xml @@ -8,10 +8,10 @@ Spring AMQP Simple App - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/spring-aop/pom.xml b/spring-aop/pom.xml index 7cdf9bd7cc..0f4e08baa3 100644 --- a/spring-aop/pom.xml +++ b/spring-aop/pom.xml @@ -8,10 +8,10 @@ spring-aop - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/spring-boot-custom-starter/greeter-spring-boot-autoconfigure/pom.xml b/spring-boot-custom-starter/greeter-spring-boot-autoconfigure/pom.xml index 6ae6572ca9..96647ea0f1 100644 --- a/spring-boot-custom-starter/greeter-spring-boot-autoconfigure/pom.xml +++ b/spring-boot-custom-starter/greeter-spring-boot-autoconfigure/pom.xml @@ -6,10 +6,10 @@ greeter-spring-boot-autoconfigure 0.0.1-SNAPSHOT - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../../parent-boot-5 + ../../parent-boot-1 UTF-8 diff --git a/spring-boot-custom-starter/greeter-spring-boot-sample-app/pom.xml b/spring-boot-custom-starter/greeter-spring-boot-sample-app/pom.xml index 9db76759ec..a2c96a8555 100644 --- a/spring-boot-custom-starter/greeter-spring-boot-sample-app/pom.xml +++ b/spring-boot-custom-starter/greeter-spring-boot-sample-app/pom.xml @@ -7,10 +7,10 @@ 0.0.1-SNAPSHOT - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../../parent-boot-5 + ../../parent-boot-1 diff --git a/spring-boot-custom-starter/greeter-spring-boot-starter/pom.xml b/spring-boot-custom-starter/greeter-spring-boot-starter/pom.xml index e771cbaa8d..7bf13eebc8 100644 --- a/spring-boot-custom-starter/greeter-spring-boot-starter/pom.xml +++ b/spring-boot-custom-starter/greeter-spring-boot-starter/pom.xml @@ -6,10 +6,10 @@ greeter-spring-boot-starter 0.0.1-SNAPSHOT - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../../parent-boot-5 + ../../parent-boot-1 UTF-8 diff --git a/spring-boot-custom-starter/greeter/pom.xml b/spring-boot-custom-starter/greeter/pom.xml index 6143992088..aa45b8e6a4 100644 --- a/spring-boot-custom-starter/greeter/pom.xml +++ b/spring-boot-custom-starter/greeter/pom.xml @@ -6,9 +6,9 @@ greeter 0.0.1-SNAPSHOT - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../../parent-boot-5 + ../../parent-boot-1 \ No newline at end of file diff --git a/spring-boot-keycloak/pom.xml b/spring-boot-keycloak/pom.xml index d2df261b2f..b7b15935ec 100644 --- a/spring-boot-keycloak/pom.xml +++ b/spring-boot-keycloak/pom.xml @@ -11,9 +11,9 @@ com.baeldung - parent-boot-5 + parent-boot-1 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/spring-boot-property-exp/property-exp-default-config/pom.xml b/spring-boot-property-exp/property-exp-default-config/pom.xml index e4cbaebf56..0ac4a31c7c 100644 --- a/spring-boot-property-exp/property-exp-default-config/pom.xml +++ b/spring-boot-property-exp/property-exp-default-config/pom.xml @@ -8,10 +8,10 @@ jar - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../../parent-boot-5 + ../../parent-boot-1 diff --git a/spring-cloud-data-flow/batch-job/pom.xml b/spring-cloud-data-flow/batch-job/pom.xml index 123c4aeda6..08439065a4 100644 --- a/spring-cloud-data-flow/batch-job/pom.xml +++ b/spring-cloud-data-flow/batch-job/pom.xml @@ -12,10 +12,10 @@ Demo project for Spring Boot - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../../parent-boot-5 + ../../parent-boot-1 diff --git a/spring-cloud-data-flow/data-flow-server/pom.xml b/spring-cloud-data-flow/data-flow-server/pom.xml index f0d513ce4d..1b81e1ba2d 100644 --- a/spring-cloud-data-flow/data-flow-server/pom.xml +++ b/spring-cloud-data-flow/data-flow-server/pom.xml @@ -12,10 +12,10 @@ Demo project for Spring Boot - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../../parent-boot-5 + ../../parent-boot-1 diff --git a/spring-cloud-data-flow/data-flow-shell/pom.xml b/spring-cloud-data-flow/data-flow-shell/pom.xml index debbe44a4a..0166aa79c2 100644 --- a/spring-cloud-data-flow/data-flow-shell/pom.xml +++ b/spring-cloud-data-flow/data-flow-shell/pom.xml @@ -12,10 +12,10 @@ Demo project for Spring Boot - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../../parent-boot-5 + ../../parent-boot-1 diff --git a/spring-cloud-data-flow/log-sink/pom.xml b/spring-cloud-data-flow/log-sink/pom.xml index 6e541ae3fa..ab367fadd7 100644 --- a/spring-cloud-data-flow/log-sink/pom.xml +++ b/spring-cloud-data-flow/log-sink/pom.xml @@ -12,10 +12,10 @@ Demo project for Spring Boot - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../../parent-boot-5 + ../../parent-boot-1 diff --git a/spring-cloud-data-flow/time-processor/pom.xml b/spring-cloud-data-flow/time-processor/pom.xml index 42d0fa434f..79bae89857 100644 --- a/spring-cloud-data-flow/time-processor/pom.xml +++ b/spring-cloud-data-flow/time-processor/pom.xml @@ -12,10 +12,10 @@ Demo project for Spring Boot - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../../parent-boot-5 + ../../parent-boot-1 diff --git a/spring-cloud-data-flow/time-source/pom.xml b/spring-cloud-data-flow/time-source/pom.xml index 2a50c9b0d0..17d2f5c693 100644 --- a/spring-cloud-data-flow/time-source/pom.xml +++ b/spring-cloud-data-flow/time-source/pom.xml @@ -12,10 +12,10 @@ Demo project for Spring Boot - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../../parent-boot-5 + ../../parent-boot-1 diff --git a/spring-cloud/spring-cloud-bootstrap/config/pom.xml b/spring-cloud/spring-cloud-bootstrap/config/pom.xml index ace46395c0..14a926fc2c 100644 --- a/spring-cloud/spring-cloud-bootstrap/config/pom.xml +++ b/spring-cloud/spring-cloud-bootstrap/config/pom.xml @@ -6,10 +6,10 @@ 1.0.0-SNAPSHOT - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../../../parent-boot-5 + ../../../parent-boot-1 diff --git a/spring-cloud/spring-cloud-bootstrap/discovery/pom.xml b/spring-cloud/spring-cloud-bootstrap/discovery/pom.xml index 7a3ffd81cd..f94d8829f6 100644 --- a/spring-cloud/spring-cloud-bootstrap/discovery/pom.xml +++ b/spring-cloud/spring-cloud-bootstrap/discovery/pom.xml @@ -7,10 +7,10 @@ 1.0.0-SNAPSHOT - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../../../parent-boot-5 + ../../../parent-boot-1 diff --git a/spring-cloud/spring-cloud-bootstrap/gateway/pom.xml b/spring-cloud/spring-cloud-bootstrap/gateway/pom.xml index 5001b35fb5..fc69c16738 100644 --- a/spring-cloud/spring-cloud-bootstrap/gateway/pom.xml +++ b/spring-cloud/spring-cloud-bootstrap/gateway/pom.xml @@ -6,10 +6,10 @@ 1.0.0-SNAPSHOT - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../../../parent-boot-5 + ../../../parent-boot-1 diff --git a/spring-cloud/spring-cloud-bootstrap/svc-book/pom.xml b/spring-cloud/spring-cloud-bootstrap/svc-book/pom.xml index 2552752e29..c0d920d373 100644 --- a/spring-cloud/spring-cloud-bootstrap/svc-book/pom.xml +++ b/spring-cloud/spring-cloud-bootstrap/svc-book/pom.xml @@ -8,10 +8,10 @@ 1.0.0-SNAPSHOT - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../../../parent-boot-5 + ../../../parent-boot-1 diff --git a/spring-cloud/spring-cloud-bootstrap/svc-rating/pom.xml b/spring-cloud/spring-cloud-bootstrap/svc-rating/pom.xml index 857ee486c0..3aa2db8f65 100644 --- a/spring-cloud/spring-cloud-bootstrap/svc-rating/pom.xml +++ b/spring-cloud/spring-cloud-bootstrap/svc-rating/pom.xml @@ -8,10 +8,10 @@ 1.0.0-SNAPSHOT - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../../../parent-boot-5 + ../../../parent-boot-1 diff --git a/spring-cloud/spring-cloud-bootstrap/zipkin/pom.xml b/spring-cloud/spring-cloud-bootstrap/zipkin/pom.xml index 743281d346..8735e24d48 100644 --- a/spring-cloud/spring-cloud-bootstrap/zipkin/pom.xml +++ b/spring-cloud/spring-cloud-bootstrap/zipkin/pom.xml @@ -6,10 +6,10 @@ 1.0.0-SNAPSHOT - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../../../parent-boot-5 + ../../../parent-boot-1 diff --git a/spring-cloud/spring-cloud-config/pom.xml b/spring-cloud/spring-cloud-config/pom.xml index 100b421a55..0a8f4f9dc3 100644 --- a/spring-cloud/spring-cloud-config/pom.xml +++ b/spring-cloud/spring-cloud-config/pom.xml @@ -9,10 +9,10 @@ pom - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../../parent-boot-5 + ../../parent-boot-1 diff --git a/spring-cloud/spring-cloud-kubernetes/pom.xml b/spring-cloud/spring-cloud-kubernetes/pom.xml index 96388c3672..61fd84ca27 100644 --- a/spring-cloud/spring-cloud-kubernetes/pom.xml +++ b/spring-cloud/spring-cloud-kubernetes/pom.xml @@ -14,10 +14,10 @@ - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../../parent-boot-5 + ../../parent-boot-1 4.0.0 diff --git a/spring-cloud/spring-cloud-rest/spring-cloud-rest-books-api/pom.xml b/spring-cloud/spring-cloud-rest/spring-cloud-rest-books-api/pom.xml index 8da8ef6141..664ab96576 100644 --- a/spring-cloud/spring-cloud-rest/spring-cloud-rest-books-api/pom.xml +++ b/spring-cloud/spring-cloud-rest/spring-cloud-rest-books-api/pom.xml @@ -10,10 +10,10 @@ Simple books API - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../../../parent-boot-5 + ../../../parent-boot-1 diff --git a/spring-cloud/spring-cloud-rest/spring-cloud-rest-config-server/pom.xml b/spring-cloud/spring-cloud-rest/spring-cloud-rest-config-server/pom.xml index e083986890..814f5edfcb 100644 --- a/spring-cloud/spring-cloud-rest/spring-cloud-rest-config-server/pom.xml +++ b/spring-cloud/spring-cloud-rest/spring-cloud-rest-config-server/pom.xml @@ -12,10 +12,10 @@ Spring Cloud REST configuration server - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../../../parent-boot-5 + ../../../parent-boot-1 diff --git a/spring-cloud/spring-cloud-rest/spring-cloud-rest-discovery-server/pom.xml b/spring-cloud/spring-cloud-rest/spring-cloud-rest-discovery-server/pom.xml index c7d647a154..f3ce213540 100644 --- a/spring-cloud/spring-cloud-rest/spring-cloud-rest-discovery-server/pom.xml +++ b/spring-cloud/spring-cloud-rest/spring-cloud-rest-discovery-server/pom.xml @@ -10,10 +10,10 @@ Spring Cloud REST server - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../../../parent-boot-5 + ../../../parent-boot-1 diff --git a/spring-cloud/spring-cloud-rest/spring-cloud-rest-reviews-api/pom.xml b/spring-cloud/spring-cloud-rest/spring-cloud-rest-reviews-api/pom.xml index d97ab43bfe..27e327110a 100644 --- a/spring-cloud/spring-cloud-rest/spring-cloud-rest-reviews-api/pom.xml +++ b/spring-cloud/spring-cloud-rest/spring-cloud-rest-reviews-api/pom.xml @@ -10,10 +10,10 @@ Simple reviews API - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../../../parent-boot-5 + ../../../parent-boot-1 diff --git a/spring-cloud/spring-cloud-ribbon-client/pom.xml b/spring-cloud/spring-cloud-ribbon-client/pom.xml index cada10ec35..64682c6173 100644 --- a/spring-cloud/spring-cloud-ribbon-client/pom.xml +++ b/spring-cloud/spring-cloud-ribbon-client/pom.xml @@ -9,10 +9,10 @@ Introduction to Spring Cloud Rest Client with Netflix Ribbon - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../../parent-boot-5 + ../../parent-boot-1 diff --git a/spring-cucumber/pom.xml b/spring-cucumber/pom.xml index cabd1a9020..1da4c8a124 100644 --- a/spring-cucumber/pom.xml +++ b/spring-cucumber/pom.xml @@ -10,10 +10,10 @@ Demo project for Spring Boot - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/spring-custom-aop/pom.xml b/spring-custom-aop/pom.xml index 76d8e7c344..4e95d175e7 100644 --- a/spring-custom-aop/pom.xml +++ b/spring-custom-aop/pom.xml @@ -9,10 +9,10 @@ This is simple boot application for Spring boot actuator test - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/spring-data-rest/pom.xml b/spring-data-rest/pom.xml index bad7a38281..0e525474e3 100644 --- a/spring-data-rest/pom.xml +++ b/spring-data-rest/pom.xml @@ -10,10 +10,10 @@ Intro to Spring Data REST - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/spring-data-spring-security/pom.xml b/spring-data-spring-security/pom.xml index afdf3c332c..467c38284d 100644 --- a/spring-data-spring-security/pom.xml +++ b/spring-data-spring-security/pom.xml @@ -11,10 +11,10 @@ Spring Data with Spring Security - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/spring-ejb/spring-ejb-client/pom.xml b/spring-ejb/spring-ejb-client/pom.xml index f7b42212be..941105a220 100644 --- a/spring-ejb/spring-ejb-client/pom.xml +++ b/spring-ejb/spring-ejb-client/pom.xml @@ -11,9 +11,9 @@ com.baeldung - parent-boot-5 + parent-boot-1 0.0.1-SNAPSHOT - ../../parent-boot-5 + ../../parent-boot-1 diff --git a/spring-jenkins-pipeline/pom.xml b/spring-jenkins-pipeline/pom.xml index c43952e277..6d26d18f96 100644 --- a/spring-jenkins-pipeline/pom.xml +++ b/spring-jenkins-pipeline/pom.xml @@ -9,10 +9,10 @@ Intro to Jenkins 2 and the power of pipelines - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/spring-kafka/pom.xml b/spring-kafka/pom.xml index 3891be1ec3..db0d7e6df9 100644 --- a/spring-kafka/pom.xml +++ b/spring-kafka/pom.xml @@ -8,10 +8,10 @@ Intro to Kafka with Spring - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/spring-katharsis/pom.xml b/spring-katharsis/pom.xml index 8bc75d97b3..6addb614f5 100644 --- a/spring-katharsis/pom.xml +++ b/spring-katharsis/pom.xml @@ -7,10 +7,10 @@ war - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/spring-mobile/pom.xml b/spring-mobile/pom.xml index 6916bb9320..3d47bb106b 100644 --- a/spring-mobile/pom.xml +++ b/spring-mobile/pom.xml @@ -11,10 +11,10 @@ http://maven.apache.org - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/spring-mockito/pom.xml b/spring-mockito/pom.xml index 3ddf0fb058..e27e25b4c8 100644 --- a/spring-mockito/pom.xml +++ b/spring-mockito/pom.xml @@ -12,10 +12,10 @@ Injecting Mockito Mocks into Spring Beans - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/spring-mvc-email/pom.xml b/spring-mvc-email/pom.xml index 436b4155fa..40d83046ef 100644 --- a/spring-mvc-email/pom.xml +++ b/spring-mvc-email/pom.xml @@ -10,10 +10,10 @@ war - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/spring-mvc-java/pom.xml b/spring-mvc-java/pom.xml index f8d1d32f63..bc81a89bec 100644 --- a/spring-mvc-java/pom.xml +++ b/spring-mvc-java/pom.xml @@ -7,10 +7,10 @@ spring-mvc-java - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/spring-protobuf/pom.xml b/spring-protobuf/pom.xml index 5081634d9b..1dce122f27 100644 --- a/spring-protobuf/pom.xml +++ b/spring-protobuf/pom.xml @@ -7,10 +7,10 @@ spring-protobuf - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/spring-quartz/pom.xml b/spring-quartz/pom.xml index 435e571180..2a449ce494 100644 --- a/spring-quartz/pom.xml +++ b/spring-quartz/pom.xml @@ -11,10 +11,10 @@ Demo project for Scheduling in Spring with Quartz - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/spring-reactor/pom.xml b/spring-reactor/pom.xml index 1098f8b60d..cedaa5e381 100644 --- a/spring-reactor/pom.xml +++ b/spring-reactor/pom.xml @@ -9,10 +9,10 @@ http://maven.apache.org - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/spring-remoting/pom.xml b/spring-remoting/pom.xml index aac8357c10..150c1a771c 100644 --- a/spring-remoting/pom.xml +++ b/spring-remoting/pom.xml @@ -11,10 +11,10 @@ Parent for all projects related to Spring Remoting. - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/spring-rest-angular/pom.xml b/spring-rest-angular/pom.xml index 7f3c21801c..090f09de3b 100644 --- a/spring-rest-angular/pom.xml +++ b/spring-rest-angular/pom.xml @@ -9,10 +9,10 @@ war - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/spring-rest-full/pom.xml b/spring-rest-full/pom.xml index fd2c485eaf..2beff519c0 100644 --- a/spring-rest-full/pom.xml +++ b/spring-rest-full/pom.xml @@ -9,10 +9,10 @@ war - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/spring-rest-query-language/pom.xml b/spring-rest-query-language/pom.xml index d20a97268b..c16c6b583d 100644 --- a/spring-rest-query-language/pom.xml +++ b/spring-rest-query-language/pom.xml @@ -9,10 +9,10 @@ war - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/spring-security-acl/pom.xml b/spring-security-acl/pom.xml index 7ddbf66365..88502bd268 100644 --- a/spring-security-acl/pom.xml +++ b/spring-security-acl/pom.xml @@ -11,10 +11,10 @@ Spring Security ACL - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/spring-security-cache-control/pom.xml b/spring-security-cache-control/pom.xml index 890ff5bd3f..85b8b5a203 100644 --- a/spring-security-cache-control/pom.xml +++ b/spring-security-cache-control/pom.xml @@ -8,10 +8,10 @@ 1.0-SNAPSHOT - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/spring-security-client/spring-security-jsp-authentication/pom.xml b/spring-security-client/spring-security-jsp-authentication/pom.xml index 9b1ebc6fdc..637fd3dbdb 100644 --- a/spring-security-client/spring-security-jsp-authentication/pom.xml +++ b/spring-security-client/spring-security-jsp-authentication/pom.xml @@ -12,10 +12,10 @@ Spring Security JSP Authentication tag sample - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../../parent-boot-5 + ../../parent-boot-1 diff --git a/spring-security-client/spring-security-jsp-authorize/pom.xml b/spring-security-client/spring-security-jsp-authorize/pom.xml index ee8c9bacbd..94f70ed5f0 100644 --- a/spring-security-client/spring-security-jsp-authorize/pom.xml +++ b/spring-security-client/spring-security-jsp-authorize/pom.xml @@ -12,10 +12,10 @@ Spring Security JSP Authorize tag sample - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../../parent-boot-5 + ../../parent-boot-1 diff --git a/spring-security-client/spring-security-jsp-config/pom.xml b/spring-security-client/spring-security-jsp-config/pom.xml index 0ec72c3527..54dc2fe947 100644 --- a/spring-security-client/spring-security-jsp-config/pom.xml +++ b/spring-security-client/spring-security-jsp-config/pom.xml @@ -12,10 +12,10 @@ Spring Security JSP configuration - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../../parent-boot-5 + ../../parent-boot-1 diff --git a/spring-security-client/spring-security-mvc/pom.xml b/spring-security-client/spring-security-mvc/pom.xml index a6c3065cc8..5064aec7e8 100644 --- a/spring-security-client/spring-security-mvc/pom.xml +++ b/spring-security-client/spring-security-mvc/pom.xml @@ -12,10 +12,10 @@ Spring Security MVC - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../../parent-boot-5 + ../../parent-boot-1 diff --git a/spring-security-client/spring-security-thymeleaf-authentication/pom.xml b/spring-security-client/spring-security-thymeleaf-authentication/pom.xml index 345daa9570..7bea8124e7 100644 --- a/spring-security-client/spring-security-thymeleaf-authentication/pom.xml +++ b/spring-security-client/spring-security-thymeleaf-authentication/pom.xml @@ -12,10 +12,10 @@ Spring Security thymeleaf authentication tag sample - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../../parent-boot-5 + ../../parent-boot-1 diff --git a/spring-security-client/spring-security-thymeleaf-authorize/pom.xml b/spring-security-client/spring-security-thymeleaf-authorize/pom.xml index 3e66e9f613..b03464877a 100644 --- a/spring-security-client/spring-security-thymeleaf-authorize/pom.xml +++ b/spring-security-client/spring-security-thymeleaf-authorize/pom.xml @@ -12,10 +12,10 @@ Spring Security thymeleaf authorize tag sample - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../../parent-boot-5 + ../../parent-boot-1 diff --git a/spring-security-client/spring-security-thymeleaf-config/pom.xml b/spring-security-client/spring-security-thymeleaf-config/pom.xml index f5d4306754..3abe9d8c8b 100644 --- a/spring-security-client/spring-security-thymeleaf-config/pom.xml +++ b/spring-security-client/spring-security-thymeleaf-config/pom.xml @@ -12,10 +12,10 @@ Spring Security thymeleaf configuration sample project - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../../parent-boot-5 + ../../parent-boot-1 diff --git a/spring-security-core/pom.xml b/spring-security-core/pom.xml index 27c6741790..a11743d9fa 100644 --- a/spring-security-core/pom.xml +++ b/spring-security-core/pom.xml @@ -9,10 +9,10 @@ war - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/spring-security-mvc-ldap/pom.xml b/spring-security-mvc-ldap/pom.xml index 286b189d87..6a9aa5eebe 100644 --- a/spring-security-mvc-ldap/pom.xml +++ b/spring-security-mvc-ldap/pom.xml @@ -9,10 +9,10 @@ war - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/spring-security-rest-custom/pom.xml b/spring-security-rest-custom/pom.xml index cfa3ad4b99..1ee324bcdb 100644 --- a/spring-security-rest-custom/pom.xml +++ b/spring-security-rest-custom/pom.xml @@ -9,10 +9,10 @@ war - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/spring-security-sso/pom.xml b/spring-security-sso/pom.xml index 938636ff18..f68b9addac 100644 --- a/spring-security-sso/pom.xml +++ b/spring-security-sso/pom.xml @@ -9,10 +9,10 @@ pom - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/spring-security-stormpath/pom.xml b/spring-security-stormpath/pom.xml index 17973165ea..71a7123c2c 100644 --- a/spring-security-stormpath/pom.xml +++ b/spring-security-stormpath/pom.xml @@ -9,10 +9,10 @@ http://maven.apache.org - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/spring-security-thymeleaf/pom.xml b/spring-security-thymeleaf/pom.xml index aa36e5f59a..d9dea95e21 100644 --- a/spring-security-thymeleaf/pom.xml +++ b/spring-security-thymeleaf/pom.xml @@ -10,10 +10,10 @@ Spring Security with Thymeleaf tutorial - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/spring-security-x509/pom.xml b/spring-security-x509/pom.xml index 89fed39920..d6a4b5693b 100644 --- a/spring-security-x509/pom.xml +++ b/spring-security-x509/pom.xml @@ -9,10 +9,10 @@ pom - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/spring-session/pom.xml b/spring-session/pom.xml index c1c872ca74..4c256663b0 100644 --- a/spring-session/pom.xml +++ b/spring-session/pom.xml @@ -7,10 +7,10 @@ jar - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/spring-sleuth/pom.xml b/spring-sleuth/pom.xml index 2fee474dbe..418edeaec7 100644 --- a/spring-sleuth/pom.xml +++ b/spring-sleuth/pom.xml @@ -8,10 +8,10 @@ jar - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/spring-social-login/pom.xml b/spring-social-login/pom.xml index d2e9497bcf..d08600a8e4 100644 --- a/spring-social-login/pom.xml +++ b/spring-social-login/pom.xml @@ -6,10 +6,10 @@ war - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/spring-zuul/pom.xml b/spring-zuul/pom.xml index b1036c9a8a..37bdb09367 100644 --- a/spring-zuul/pom.xml +++ b/spring-zuul/pom.xml @@ -8,10 +8,10 @@ pom - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 diff --git a/stripe/pom.xml b/stripe/pom.xml index b6dae6e680..ca165934a0 100644 --- a/stripe/pom.xml +++ b/stripe/pom.xml @@ -10,10 +10,10 @@ Demo project for Stripe API - parent-boot-5 + parent-boot-1 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-5 + ../parent-boot-1 From a023f014d0a4605c33be3d84ddc05602b0489bde Mon Sep 17 00:00:00 2001 From: Pello Altadill Date: Fri, 8 Jun 2018 20:54:58 +0200 Subject: [PATCH 50/55] BAEL-1388 Introduction to Java MSF4J Microservices (#4192) * BAEL-1562 - Thymeleaf sample working * BAEL-1562 Code added for Fragments sample * BAEL-1562 - Last correction for the test * BAEL-1562 - Thymeleaf sample working * BAEL-1562 Code added for Fragments sample * BAEL-1562 - Last correction for the test * Updates Thymeleaf version to 3.0.9.RELEASE * Added msf4j projects * updated msf4j project folder * fixed issue with spring-thymeleaf/pom.xml * Removed depedency-reduced-pom.xml * Whitespacing fix --- msf4j/pom.xml | 32 ++++++++ .../baeldung/msf4j/msf4japi/Application.java | 11 +++ .../com/baeldung/msf4j/msf4japi/Meal.java | 20 +++++ .../baeldung/msf4j/msf4japi/MenuService.java | 78 +++++++++++++++++++ .../msf4j/msf4jintro/Application.java | 11 +++ .../msf4j/msf4jintro/SimpleService.java | 21 +++++ .../msf4j/msf4jspring/Application.java | 10 +++ .../configuration/PortConfiguration.java | 15 ++++ .../msf4j/msf4jspring/domain/Meal.java | 20 +++++ .../repositories/MealRepository.java | 37 +++++++++ .../msf4jspring/resources/MealResource.java | 47 +++++++++++ .../msf4jspring/services/MealService.java | 27 +++++++ .../src/main/resources/application.properties | 0 .../main/resources/templates/meals.mustache | 13 ++++ pom.xml | 1 + spring-thymeleaf/pom.xml | 2 +- 16 files changed, 344 insertions(+), 1 deletion(-) create mode 100644 msf4j/pom.xml create mode 100644 msf4j/src/main/java/com/baeldung/msf4j/msf4japi/Application.java create mode 100644 msf4j/src/main/java/com/baeldung/msf4j/msf4japi/Meal.java create mode 100644 msf4j/src/main/java/com/baeldung/msf4j/msf4japi/MenuService.java create mode 100644 msf4j/src/main/java/com/baeldung/msf4j/msf4jintro/Application.java create mode 100644 msf4j/src/main/java/com/baeldung/msf4j/msf4jintro/SimpleService.java create mode 100644 msf4j/src/main/java/com/baeldung/msf4j/msf4jspring/Application.java create mode 100644 msf4j/src/main/java/com/baeldung/msf4j/msf4jspring/configuration/PortConfiguration.java create mode 100644 msf4j/src/main/java/com/baeldung/msf4j/msf4jspring/domain/Meal.java create mode 100644 msf4j/src/main/java/com/baeldung/msf4j/msf4jspring/repositories/MealRepository.java create mode 100644 msf4j/src/main/java/com/baeldung/msf4j/msf4jspring/resources/MealResource.java create mode 100644 msf4j/src/main/java/com/baeldung/msf4j/msf4jspring/services/MealService.java create mode 100644 msf4j/src/main/resources/application.properties create mode 100644 msf4j/src/main/resources/templates/meals.mustache diff --git a/msf4j/pom.xml b/msf4j/pom.xml new file mode 100644 index 0000000000..f691d746b7 --- /dev/null +++ b/msf4j/pom.xml @@ -0,0 +1,32 @@ + + + + org.wso2.msf4j + msf4j-service + 2.6.0 + + 4.0.0 + + com.baeldung.msf4j + msf4j + 0.0.1-SNAPSHOT + WSO2 MSF4J Microservice + + + com.baeldung.msf4j.msf4jintro.Application + + + + org.wso2.msf4j + msf4j-spring + 2.6.1 + + + org.wso2.msf4j + msf4j-mustache-template + 2.6.1 + + + + \ No newline at end of file diff --git a/msf4j/src/main/java/com/baeldung/msf4j/msf4japi/Application.java b/msf4j/src/main/java/com/baeldung/msf4j/msf4japi/Application.java new file mode 100644 index 0000000000..c4cf136536 --- /dev/null +++ b/msf4j/src/main/java/com/baeldung/msf4j/msf4japi/Application.java @@ -0,0 +1,11 @@ +package com.baeldung.msf4j.msf4japi; + +import org.wso2.msf4j.MicroservicesRunner; + +public class Application { + public static void main(String[] args) { + new MicroservicesRunner() + .deploy(new MenuService()) + .start(); + } +} \ No newline at end of file diff --git a/msf4j/src/main/java/com/baeldung/msf4j/msf4japi/Meal.java b/msf4j/src/main/java/com/baeldung/msf4j/msf4japi/Meal.java new file mode 100644 index 0000000000..d17a7a1034 --- /dev/null +++ b/msf4j/src/main/java/com/baeldung/msf4j/msf4japi/Meal.java @@ -0,0 +1,20 @@ +package com.baeldung.msf4j.msf4japi; + +public class Meal { + private String name; + private Float price; + + public Meal(String name, Float price) { + this.name = name; + this.price = price; + } + + public String getName() { + return name; + } + + public Float getPrice() { + return price; + } + +} diff --git a/msf4j/src/main/java/com/baeldung/msf4j/msf4japi/MenuService.java b/msf4j/src/main/java/com/baeldung/msf4j/msf4japi/MenuService.java new file mode 100644 index 0000000000..4f880a1393 --- /dev/null +++ b/msf4j/src/main/java/com/baeldung/msf4j/msf4japi/MenuService.java @@ -0,0 +1,78 @@ +package com.baeldung.msf4j.msf4japi; + +import java.util.ArrayList; +import java.util.List; + +import javax.ws.rs.Consumes; +import javax.ws.rs.DELETE; +import javax.ws.rs.GET; +import javax.ws.rs.POST; +import javax.ws.rs.PUT; +import javax.ws.rs.Path; +import javax.ws.rs.PathParam; +import javax.ws.rs.Produces; +import javax.ws.rs.core.Response; + +import com.google.gson.Gson; + +@Path("/menu") +public class MenuService { + + private List meals = new ArrayList(); + + public MenuService() { + meals.add(new Meal("Java beans",42.0f)); + } + + @GET + @Path("/") + @Produces({ "application/json" }) + public Response index() { + return Response.ok() + .entity(meals) + .build(); + } + + @GET + @Path("/{id}") + @Produces({ "application/json" }) + public Response meal(@PathParam("id") int id) { + return Response.ok() + .entity(meals.get(id)) + .build(); + } + + + @POST + @Path("/") + @Consumes("application/json") + @Produces({ "application/json" }) + public Response create(Meal meal) { + meals.add(meal); + return Response.ok() + .entity(meal) + .build(); + } + + @PUT + @Path("/{id}") + @Consumes("application/json") + @Produces({ "application/json" }) + public Response update(@PathParam("id") int id, Meal meal) { + meals.set(id, meal); + return Response.ok() + .entity(meal) + .build(); + } + + @DELETE + @Path("/{id}") + @Produces({ "application/json" }) + public Response delete(@PathParam("id") int id) { + Meal meal = meals.get(id); + meals.remove(id); + return Response.ok() + .entity(meal) + .build(); + } +} diff --git a/msf4j/src/main/java/com/baeldung/msf4j/msf4jintro/Application.java b/msf4j/src/main/java/com/baeldung/msf4j/msf4jintro/Application.java new file mode 100644 index 0000000000..dc4a060056 --- /dev/null +++ b/msf4j/src/main/java/com/baeldung/msf4j/msf4jintro/Application.java @@ -0,0 +1,11 @@ +package com.baeldung.msf4j.msf4jintro; + +import org.wso2.msf4j.MicroservicesRunner; + +public class Application { + public static void main(String[] args) { + new MicroservicesRunner() + .deploy(new SimpleService()) + .start(); + } +} \ No newline at end of file diff --git a/msf4j/src/main/java/com/baeldung/msf4j/msf4jintro/SimpleService.java b/msf4j/src/main/java/com/baeldung/msf4j/msf4jintro/SimpleService.java new file mode 100644 index 0000000000..bcb52859b5 --- /dev/null +++ b/msf4j/src/main/java/com/baeldung/msf4j/msf4jintro/SimpleService.java @@ -0,0 +1,21 @@ +package com.baeldung.msf4j.msf4jintro; + +import javax.ws.rs.GET; +import javax.ws.rs.Path; +import javax.ws.rs.PathParam; + +@Path("/") +public class SimpleService { + + @GET + public String index() { + return "Default content"; + } + + @GET + @Path("/say/{name}") + public String say(@PathParam("name") String name) { + return "Hello " + name; + } + +} diff --git a/msf4j/src/main/java/com/baeldung/msf4j/msf4jspring/Application.java b/msf4j/src/main/java/com/baeldung/msf4j/msf4jspring/Application.java new file mode 100644 index 0000000000..2a5232a7e6 --- /dev/null +++ b/msf4j/src/main/java/com/baeldung/msf4j/msf4jspring/Application.java @@ -0,0 +1,10 @@ +package com.baeldung.msf4j.msf4jspring; + +import org.wso2.msf4j.spring.MSF4JSpringApplication; + +public class Application { + + public static void main(String[] args) { + MSF4JSpringApplication.run(Application.class, args); + } +} \ No newline at end of file diff --git a/msf4j/src/main/java/com/baeldung/msf4j/msf4jspring/configuration/PortConfiguration.java b/msf4j/src/main/java/com/baeldung/msf4j/msf4jspring/configuration/PortConfiguration.java new file mode 100644 index 0000000000..c3313fc3b1 --- /dev/null +++ b/msf4j/src/main/java/com/baeldung/msf4j/msf4jspring/configuration/PortConfiguration.java @@ -0,0 +1,15 @@ +package com.baeldung.msf4j.msf4jspring.configuration; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.wso2.msf4j.spring.transport.HTTPTransportConfig; + +@Configuration +public class PortConfiguration { + + @Bean + public HTTPTransportConfig http() { + return new HTTPTransportConfig(9090); + } + +} \ No newline at end of file diff --git a/msf4j/src/main/java/com/baeldung/msf4j/msf4jspring/domain/Meal.java b/msf4j/src/main/java/com/baeldung/msf4j/msf4jspring/domain/Meal.java new file mode 100644 index 0000000000..99de0abc4c --- /dev/null +++ b/msf4j/src/main/java/com/baeldung/msf4j/msf4jspring/domain/Meal.java @@ -0,0 +1,20 @@ +package com.baeldung.msf4j.msf4jspring.domain; + +public class Meal { + private String name; + private Float price; + + public Meal(String name, Float price) { + this.name = name; + this.price = price; + } + + public String getName() { + return name; + } + + public Float getPrice() { + return price; + } + +} diff --git a/msf4j/src/main/java/com/baeldung/msf4j/msf4jspring/repositories/MealRepository.java b/msf4j/src/main/java/com/baeldung/msf4j/msf4jspring/repositories/MealRepository.java new file mode 100644 index 0000000000..4d9e54348e --- /dev/null +++ b/msf4j/src/main/java/com/baeldung/msf4j/msf4jspring/repositories/MealRepository.java @@ -0,0 +1,37 @@ +package com.baeldung.msf4j.msf4jspring.repositories; + +import java.util.ArrayList; +import java.util.List; +import org.springframework.stereotype.Component; +import com.baeldung.msf4j.msf4jspring.domain.Meal; + +@Component +public class MealRepository { + + private List meals = new ArrayList(); + + public MealRepository() { + meals.add(new Meal("Salad", 4.2f)); + meals.add(new Meal("Litre of cola", 2.99f)); + } + + public void create(Meal meal) { + meals.add(meal); + } + + public void remove(Meal meal) { + meals.remove(meal); + } + + public Meal find(int id) { + return meals.get(id); + } + + public List findAll() { + return meals; + } + + public void update(int id, Meal meal) { + meals.set(id, meal); + } +} \ No newline at end of file diff --git a/msf4j/src/main/java/com/baeldung/msf4j/msf4jspring/resources/MealResource.java b/msf4j/src/main/java/com/baeldung/msf4j/msf4jspring/resources/MealResource.java new file mode 100644 index 0000000000..9c617257cb --- /dev/null +++ b/msf4j/src/main/java/com/baeldung/msf4j/msf4jspring/resources/MealResource.java @@ -0,0 +1,47 @@ +package com.baeldung.msf4j.msf4jspring.resources; + +import java.util.Collections; +import java.util.Map; + +import javax.ws.rs.GET; +import javax.ws.rs.Path; +import javax.ws.rs.PathParam; +import javax.ws.rs.Produces; +import javax.ws.rs.core.MediaType; +import javax.ws.rs.core.Response; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; +import org.wso2.msf4j.template.MustacheTemplateEngine; + +import com.baeldung.msf4j.msf4jspring.services.MealService; + +@Component +@Path("/meal") +public class MealResource { + + @Autowired + private MealService mealService; + + @GET + @Path("/") + public Response all() { + Map map = Collections.singletonMap("meals", mealService.findAll()); + String html = MustacheTemplateEngine.instance() + .render("meals.mustache", map); + return Response.ok() + .type(MediaType.TEXT_HTML) + .entity(html) + .build(); + } + + @GET + @Path("/{id}") + @Produces({ "text/xml" }) + public Response meal(@PathParam("id") int id) { + return Response.ok() + .entity(mealService.find(id)) + .build(); + } + +} diff --git a/msf4j/src/main/java/com/baeldung/msf4j/msf4jspring/services/MealService.java b/msf4j/src/main/java/com/baeldung/msf4j/msf4jspring/services/MealService.java new file mode 100644 index 0000000000..fd6a519999 --- /dev/null +++ b/msf4j/src/main/java/com/baeldung/msf4j/msf4jspring/services/MealService.java @@ -0,0 +1,27 @@ +package com.baeldung.msf4j.msf4jspring.services; + +import java.util.List; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import com.baeldung.msf4j.msf4jspring.domain.Meal; +import com.baeldung.msf4j.msf4jspring.repositories.MealRepository; + +@Service +public class MealService { + @Autowired + private MealRepository mealRepository; + + public Meal find(int id) { + return mealRepository.find(id); + } + + public List findAll() { + return mealRepository.findAll(); + } + + public void create(Meal meal) { + mealRepository.create(meal); + } +} diff --git a/msf4j/src/main/resources/application.properties b/msf4j/src/main/resources/application.properties new file mode 100644 index 0000000000..e69de29bb2 diff --git a/msf4j/src/main/resources/templates/meals.mustache b/msf4j/src/main/resources/templates/meals.mustache new file mode 100644 index 0000000000..f4bdfaccf9 --- /dev/null +++ b/msf4j/src/main/resources/templates/meals.mustache @@ -0,0 +1,13 @@ + + + Meals + + +
+

Today's Meals

+ {{#meals}} +
{{name}}: {{price}}$
+ {{/meals}} +
+ + \ No newline at end of file diff --git a/pom.xml b/pom.xml index f7b065722f..d42c3ac617 100644 --- a/pom.xml +++ b/pom.xml @@ -102,6 +102,7 @@ metrics maven mesos-marathon + msf4j testing-modules/mockito testing-modules/mockito-2 testing-modules/mocks diff --git a/spring-thymeleaf/pom.xml b/spring-thymeleaf/pom.xml index d13356b3d7..6e0b7f6545 100644 --- a/spring-thymeleaf/pom.xml +++ b/spring-thymeleaf/pom.xml @@ -173,4 +173,4 @@ 2.2
- \ No newline at end of file + From b3fd2117636afb9051056a43defa5c6101d14546 Mon Sep 17 00:00:00 2001 From: Jorge Collado Date: Fri, 4 May 2018 12:24:28 +0200 Subject: [PATCH 51/55] [BAEL-1686] - Initial commit --- spring-data-rest-querydsl/pom.xml | 236 ++++++++++++++++++ .../main/java/com/baeldung/Application.java | 39 +++ .../baeldung/controller/QueryController.java | 22 ++ .../repository/AddressRepository.java | 18 ++ .../repository/PersonRepository.java | 18 ++ .../java/com/baeldung/entity/Address.java | 45 ++++ .../main/java/com/baeldung/entity/Person.java | 48 ++++ .../src/main/resources/application.yml | 13 + .../SpringBootIntegrationTests.java | 43 ++++ 9 files changed, 482 insertions(+) create mode 100644 spring-data-rest-querydsl/pom.xml create mode 100644 spring-data-rest-querydsl/src/main/java/com/baeldung/Application.java create mode 100644 spring-data-rest-querydsl/src/main/java/com/baeldung/controller/QueryController.java create mode 100644 spring-data-rest-querydsl/src/main/java/com/baeldung/controller/repository/AddressRepository.java create mode 100644 spring-data-rest-querydsl/src/main/java/com/baeldung/controller/repository/PersonRepository.java create mode 100644 spring-data-rest-querydsl/src/main/java/com/baeldung/entity/Address.java create mode 100644 spring-data-rest-querydsl/src/main/java/com/baeldung/entity/Person.java create mode 100644 spring-data-rest-querydsl/src/main/resources/application.yml create mode 100644 spring-data-rest-querydsl/src/test/java/com/baeldung/springdatarestquerydsl/SpringBootIntegrationTests.java diff --git a/spring-data-rest-querydsl/pom.xml b/spring-data-rest-querydsl/pom.xml new file mode 100644 index 0000000000..f9d5d27773 --- /dev/null +++ b/spring-data-rest-querydsl/pom.xml @@ -0,0 +1,236 @@ + + + 4.0.0 + + com.vivelibre + VLCore + 2.0.31-SNAPSHOT + + + VLCore + Vivelibre API - Microservices + + + org.springframework.boot + spring-boot-starter-parent + 1.5.9.RELEASE + + + + + + org.springframework.cloud + spring-cloud-netflix + 1.3.4.RELEASE + pom + import + + + + + + + org.springframework.boot + spring-boot-starter-data-rest + + + org.springframework.cloud + spring-cloud-starter-eureka + + + org.springframework.boot + spring-boot-starter-web + + + org.springframework.boot + spring-boot-starter-data-jpa + + + mysql + mysql-connector-java + + + org.mariadb.jdbc + mariadb-java-client + + + org.springframework.cloud + spring-cloud-starter-ribbon + + + org.springframework.cloud + spring-cloud-starter-hystrix + + + org.springframework.boot + spring-boot-autoconfigure + + + org.springframework.boot + spring-boot-actuator + + + org.springframework.boot + spring-boot-devtools + true + + + org.springframework.restdocs + spring-restdocs-mockmvc + test + + + org.springframework.data + spring-data-rest-hal-browser + + + org.springframework.boot + spring-boot-starter-hateoas + + + com.querydsl + querydsl-apt + + + com.querydsl + querydsl-jpa + + + org.slf4j + slf4j-log4j12 + 1.6.1 + + + junit + junit + test + + + io.rest-assured + rest-assured + 3.0.6 + test + + + javax.ws.rs + jsr311-api + 1.1.1 + + + com.google.code.gson + gson + 2.8.2 + + + org.springframework.boot + spring-boot-configuration-processor + true + + + org.apache.httpcomponents + httpcore + 4.4.8 + + + org.apache.httpcomponents + httpclient + 4.5.3 + + + com.google.guava + guava + 23.6-jre + + + net.sf.dozer + dozer + 5.5.1 + + + org.apache.xmlrpc + xmlrpc-client + 3.1.3 + + + org.springframework.boot + spring-boot-starter-test + test + + + + + + org.springframework.boot + spring-boot-maven-plugin + + ${start-class} + ZIP + + + + + repackage + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.8 + 1.8 + + -verbose + -parameters + + + + + com.mysema.maven + apt-maven-plugin + 1.1.3 + + + generate-sources + + process + + + ${project.build.directory}/generated-sources + com.querydsl.apt.jpa.JPAAnnotationProcessor + + + + + + maven-release-plugin + 2.5.1 + + + + + + scm:git:http://jcollado@192.169.170.109:7990/scm/viv/vivelibre-backendside-core-vlcore.git + http://192.169.170.109:7990/projects/VIV/repos/vivelibre-backendside-core-vlcore + scm:git:http://jcollado@192.169.170.109:7990/scm/viv/vivelibre-backendside-core-vlcore.git + + VLCore-2.0.28 + + + + + releases + http://192.169.170.109:3000/nexus/content/repositories/releases + + + + + + nexus-releases + nexus + http://192.169.170.109:3000/nexus/content/repositories/releases/ + + + + diff --git a/spring-data-rest-querydsl/src/main/java/com/baeldung/Application.java b/spring-data-rest-querydsl/src/main/java/com/baeldung/Application.java new file mode 100644 index 0000000000..db87e920e1 --- /dev/null +++ b/spring-data-rest-querydsl/src/main/java/com/baeldung/Application.java @@ -0,0 +1,39 @@ +package com.baeldung; + +import com.baeldung.controller.repository.AddressRepository; +import com.baeldung.controller.repository.PersonRepository; +import com.baeldung.entity.Address; +import com.baeldung.entity.Person; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.boot.autoconfigure.domain.EntityScan; +import org.springframework.data.jpa.repository.config.EnableJpaRepositories; + +import javax.annotation.PostConstruct; +import java.util.UUID; + +@SpringBootApplication @EntityScan("com.baeldung.entity") @EnableJpaRepositories("com.baeldung.controller.repository") +public class Application { + + @Autowired private PersonRepository personRepository; + @Autowired private AddressRepository addressRepository; + + public static void main(String[] args) { + SpringApplication.run(Application.class, args); + } + + @PostConstruct private void initializeData() { + // Create John + final Address johnsAddress = new Address(UUID.randomUUID().toString(), "Fake Street 1", "Fake country"); + addressRepository.save(johnsAddress); + final Person john = new Person(UUID.randomUUID().toString(), "John", johnsAddress); + personRepository.save(john); + + // Create Lisa + final Address lisasAddress = new Address(UUID.randomUUID().toString(), "Real Street 1", "Real country"); + addressRepository.save(lisasAddress); + final Person lisa = new Person(UUID.randomUUID().toString(), "Lisa", lisasAddress); + personRepository.save(lisa); + } +} diff --git a/spring-data-rest-querydsl/src/main/java/com/baeldung/controller/QueryController.java b/spring-data-rest-querydsl/src/main/java/com/baeldung/controller/QueryController.java new file mode 100644 index 0000000000..753250e638 --- /dev/null +++ b/spring-data-rest-querydsl/src/main/java/com/baeldung/controller/QueryController.java @@ -0,0 +1,22 @@ +package com.baeldung.controller; + +import com.baeldung.controller.repository.PersonRepository; +import com.baeldung.entity.Person; +import com.querydsl.core.BooleanBuilder; +import com.querydsl.core.types.Predicate; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.querydsl.binding.QuerydslPredicate; +import org.springframework.http.MediaType; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController public class QueryController { + + @Autowired private PersonRepository personRepository; + + @GetMapping(value = "/personQuery", produces = MediaType.APPLICATION_JSON_VALUE) + public Iterable getFilteredEvents(@QuerydslPredicate(root = Person.class) Predicate predicate) { + final BooleanBuilder builder = new BooleanBuilder(); + return personRepository.findAll(builder.and(predicate)); + } +} diff --git a/spring-data-rest-querydsl/src/main/java/com/baeldung/controller/repository/AddressRepository.java b/spring-data-rest-querydsl/src/main/java/com/baeldung/controller/repository/AddressRepository.java new file mode 100644 index 0000000000..aa42ca6779 --- /dev/null +++ b/spring-data-rest-querydsl/src/main/java/com/baeldung/controller/repository/AddressRepository.java @@ -0,0 +1,18 @@ +package com.baeldung.controller.repository; + +import com.baeldung.entity.Address; +import com.baeldung.entity.QAddress; +import com.querydsl.core.types.dsl.StringExpression; +import com.querydsl.core.types.dsl.StringPath; +import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.data.querydsl.QueryDslPredicateExecutor; +import org.springframework.data.querydsl.binding.QuerydslBinderCustomizer; +import org.springframework.data.querydsl.binding.QuerydslBindings; +import org.springframework.data.querydsl.binding.SingleValueBinding; + +public interface AddressRepository + extends JpaRepository, QueryDslPredicateExecutor
, QuerydslBinderCustomizer { + @Override default void customize(final QuerydslBindings bindings, final QAddress root) { + bindings.bind(String.class).first((SingleValueBinding) StringExpression::eq); + } +} diff --git a/spring-data-rest-querydsl/src/main/java/com/baeldung/controller/repository/PersonRepository.java b/spring-data-rest-querydsl/src/main/java/com/baeldung/controller/repository/PersonRepository.java new file mode 100644 index 0000000000..7c37fb6b15 --- /dev/null +++ b/spring-data-rest-querydsl/src/main/java/com/baeldung/controller/repository/PersonRepository.java @@ -0,0 +1,18 @@ +package com.baeldung.controller.repository; + +import com.baeldung.entity.Person; +import com.baeldung.entity.QPerson; +import com.querydsl.core.types.dsl.StringExpression; +import com.querydsl.core.types.dsl.StringPath; +import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.data.querydsl.QueryDslPredicateExecutor; +import org.springframework.data.querydsl.binding.QuerydslBinderCustomizer; +import org.springframework.data.querydsl.binding.QuerydslBindings; +import org.springframework.data.querydsl.binding.SingleValueBinding; + +public interface PersonRepository + extends JpaRepository, QueryDslPredicateExecutor, QuerydslBinderCustomizer { + @Override default void customize(final QuerydslBindings bindings, final QPerson root) { + bindings.bind(String.class).first((SingleValueBinding) StringExpression::eq); + } +} diff --git a/spring-data-rest-querydsl/src/main/java/com/baeldung/entity/Address.java b/spring-data-rest-querydsl/src/main/java/com/baeldung/entity/Address.java new file mode 100644 index 0000000000..4f92031473 --- /dev/null +++ b/spring-data-rest-querydsl/src/main/java/com/baeldung/entity/Address.java @@ -0,0 +1,45 @@ +package com.baeldung.entity; + + +import javax.persistence.Entity; +import javax.persistence.Id; + +@Entity public class Address { + + @Id private String id; + private String address; + private String country; + + public Address() { + } + + public Address(String id, String address, String country) { + this.id = id; + this.address = address; + this.country = country; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getCountry() { + return country; + } + + public void setCountry(String country) { + this.country = country; + } +} diff --git a/spring-data-rest-querydsl/src/main/java/com/baeldung/entity/Person.java b/spring-data-rest-querydsl/src/main/java/com/baeldung/entity/Person.java new file mode 100644 index 0000000000..779b1f84a9 --- /dev/null +++ b/spring-data-rest-querydsl/src/main/java/com/baeldung/entity/Person.java @@ -0,0 +1,48 @@ +package com.baeldung.entity; + + +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.JoinColumn; +import javax.persistence.OneToOne; + + +@Entity public class Person { + + @Id private String id; + private String name; + @OneToOne @JoinColumn(name = "address") private com.baeldung.entity.Address address; + + public Person() { + } + + public Person(String id, String name, com.baeldung.entity.Address address) { + this.id = id; + this.name = name; + this.address = address; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public com.baeldung.entity.Address getAddress() { + return address; + } + + public void setAddress(com.baeldung.entity.Address address) { + this.address = address; + } +} diff --git a/spring-data-rest-querydsl/src/main/resources/application.yml b/spring-data-rest-querydsl/src/main/resources/application.yml new file mode 100644 index 0000000000..c04c9d9ca0 --- /dev/null +++ b/spring-data-rest-querydsl/src/main/resources/application.yml @@ -0,0 +1,13 @@ +spring: + datasource: + driver-class-name: com.mysql.jdbc.Driver + hikari: + connection-timeout: 60000 + maximum-pool-size: 5 + pool-name: hikari-pool + url: jdbc:mysql://localhost:3306/baeldung?verifyServerCertificate=false&useSSL=false&requireSSL=false + username: root + password: admin + jpa: + hibernate: + ddl-auto: create-drop diff --git a/spring-data-rest-querydsl/src/test/java/com/baeldung/springdatarestquerydsl/SpringBootIntegrationTests.java b/spring-data-rest-querydsl/src/test/java/com/baeldung/springdatarestquerydsl/SpringBootIntegrationTests.java new file mode 100644 index 0000000000..803f0834bb --- /dev/null +++ b/spring-data-rest-querydsl/src/test/java/com/baeldung/springdatarestquerydsl/SpringBootIntegrationTests.java @@ -0,0 +1,43 @@ +package com.baeldung.springdatarestquerydsl; + +import com.baeldung.Application; +import org.junit.Before; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.http.MediaType; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; +import org.springframework.test.context.web.WebAppConfiguration; +import org.springframework.test.web.servlet.MockMvc; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; +import org.springframework.test.web.servlet.setup.MockMvcBuilders; +import org.springframework.web.context.WebApplicationContext; + +import java.nio.charset.Charset; + +import static org.hamcrest.Matchers.hasSize; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.jsonPath; + +@RunWith(SpringJUnit4ClassRunner.class) @SpringBootTest(classes = Application.class) @WebAppConfiguration +public class SpringBootIntegrationTests { + + @Autowired private WebApplicationContext webApplicationContext; + + private MockMvc mockMvc; + + @Before public void setupMockMvc() { + mockMvc = MockMvcBuilders.webAppContextSetup(webApplicationContext).build(); + } + + @Test public void givenRequestHasBeenMade_whenMeetsAllOfGivenConditions_thenCorrect() throws Exception { + MediaType contentType = new MediaType(MediaType.APPLICATION_JSON.getType(), MediaType.APPLICATION_JSON.getSubtype(), + Charset.forName("utf8")); + + mockMvc.perform(MockMvcRequestBuilders.get("/personQuery?name=john")).andExpect(MockMvcResultMatchers.status().isOk()) + .andExpect(MockMvcResultMatchers.content().contentType(contentType)).andExpect(jsonPath("$", hasSize(4))); + } +} + + From 8a5ff707c5fe6b7dd58696749a1b44a901b0c628 Mon Sep 17 00:00:00 2001 From: Jorge Collado Date: Mon, 7 May 2018 18:27:48 +0200 Subject: [PATCH 52/55] [BAEL-1686] - Added integration testing --- .../main/java/com/baeldung/Application.java | 4 +- .../IntegrationTest.java | 66 +++++++++++++++++++ .../SpringBootIntegrationTests.java | 43 ------------ 3 files changed, 68 insertions(+), 45 deletions(-) create mode 100644 spring-data-rest-querydsl/src/test/java/com/baeldung/springdatarestquerydsl/IntegrationTest.java delete mode 100644 spring-data-rest-querydsl/src/test/java/com/baeldung/springdatarestquerydsl/SpringBootIntegrationTests.java diff --git a/spring-data-rest-querydsl/src/main/java/com/baeldung/Application.java b/spring-data-rest-querydsl/src/main/java/com/baeldung/Application.java index db87e920e1..cae2d62f05 100644 --- a/spring-data-rest-querydsl/src/main/java/com/baeldung/Application.java +++ b/spring-data-rest-querydsl/src/main/java/com/baeldung/Application.java @@ -25,13 +25,13 @@ public class Application { @PostConstruct private void initializeData() { // Create John - final Address johnsAddress = new Address(UUID.randomUUID().toString(), "Fake Street 1", "Fake country"); + final Address johnsAddress = new Address(UUID.randomUUID().toString(), "Fake Street 1", "Fake Country"); addressRepository.save(johnsAddress); final Person john = new Person(UUID.randomUUID().toString(), "John", johnsAddress); personRepository.save(john); // Create Lisa - final Address lisasAddress = new Address(UUID.randomUUID().toString(), "Real Street 1", "Real country"); + final Address lisasAddress = new Address(UUID.randomUUID().toString(), "Real Street 1", "Real Country"); addressRepository.save(lisasAddress); final Person lisa = new Person(UUID.randomUUID().toString(), "Lisa", lisasAddress); personRepository.save(lisa); diff --git a/spring-data-rest-querydsl/src/test/java/com/baeldung/springdatarestquerydsl/IntegrationTest.java b/spring-data-rest-querydsl/src/test/java/com/baeldung/springdatarestquerydsl/IntegrationTest.java new file mode 100644 index 0000000000..63d0f56651 --- /dev/null +++ b/spring-data-rest-querydsl/src/test/java/com/baeldung/springdatarestquerydsl/IntegrationTest.java @@ -0,0 +1,66 @@ +package com.baeldung.springdatarestquerydsl; + +import com.baeldung.Application; +import org.junit.Before; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.http.MediaType; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; +import org.springframework.test.context.web.WebAppConfiguration; +import org.springframework.test.web.servlet.MockMvc; +import org.springframework.test.web.servlet.setup.MockMvcBuilders; +import org.springframework.web.context.WebApplicationContext; + +import java.nio.charset.Charset; + +import static org.hamcrest.Matchers.hasSize; +import static org.hamcrest.Matchers.is; +import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.*; + +@RunWith(SpringJUnit4ClassRunner.class) @SpringBootTest(classes = Application.class) @WebAppConfiguration +public class IntegrationTest { + + final MediaType contentType = + new MediaType(MediaType.APPLICATION_JSON.getType(), MediaType.APPLICATION_JSON.getSubtype(), Charset.forName("utf8")); + + @Autowired private WebApplicationContext webApplicationContext; + + private MockMvc mockMvc; + + @Before public void setupMockMvc() { + mockMvc = MockMvcBuilders.webAppContextSetup(webApplicationContext).build(); + } + + @Test public void givenRequestHasBeenMade_whenQueryOverNameAttribute_thenGetJohn() throws Exception { + // Get John + mockMvc.perform(get("/personQuery?name=John")).andExpect(status().isOk()).andExpect(content().contentType(contentType)) + .andExpect(jsonPath("$", hasSize(1))).andExpect(jsonPath("$[0].name", is("John"))) + .andExpect(jsonPath("$[0].address.address", is("Fake Street 1"))) + .andExpect(jsonPath("$[0].address.country", is("Fake Country"))); + } + + @Test public void givenRequestHasBeenMade_whenQueryOverNameAttribute_thenGetLisa() throws Exception { + // Get Lisa + mockMvc.perform(get("/personQuery?name=Lisa")).andExpect(status().isOk()).andExpect(content().contentType(contentType)) + .andExpect(jsonPath("$", hasSize(1))).andExpect(jsonPath("$[0].name", is("Lisa"))) + .andExpect(jsonPath("$[0].address.address", is("Real Street 1"))) + .andExpect(jsonPath("$[0].address.country", is("Real Country"))); + } + + @Test public void givenRequestHasBeenMade_whenQueryWithoutAttribute_thenCorrect() throws Exception { + final MediaType contentType = new MediaType(MediaType.APPLICATION_JSON.getType(), MediaType.APPLICATION_JSON.getSubtype(), + Charset.forName("utf8")); + + mockMvc.perform(get("/personQuery")).andExpect(status().isOk()).andExpect(content().contentType(contentType)) + .andExpect(jsonPath("$", hasSize(2))) + // Get John + .andExpect(jsonPath("$[0].name", is("John"))).andExpect(jsonPath("$[0].address.address", is("Fake Street 1"))) + .andExpect(jsonPath("$[0].address.country", is("Fake Country"))) + // Get Lisa + .andExpect(jsonPath("$[1].name", is("Lisa"))).andExpect(jsonPath("$[1].address.address", is("Real Street 1"))) + .andExpect(jsonPath("$[1].address.country", is("Real Country"))); + } +} diff --git a/spring-data-rest-querydsl/src/test/java/com/baeldung/springdatarestquerydsl/SpringBootIntegrationTests.java b/spring-data-rest-querydsl/src/test/java/com/baeldung/springdatarestquerydsl/SpringBootIntegrationTests.java deleted file mode 100644 index 803f0834bb..0000000000 --- a/spring-data-rest-querydsl/src/test/java/com/baeldung/springdatarestquerydsl/SpringBootIntegrationTests.java +++ /dev/null @@ -1,43 +0,0 @@ -package com.baeldung.springdatarestquerydsl; - -import com.baeldung.Application; -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.test.context.SpringBootTest; -import org.springframework.http.MediaType; -import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; -import org.springframework.test.context.web.WebAppConfiguration; -import org.springframework.test.web.servlet.MockMvc; -import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; -import org.springframework.test.web.servlet.result.MockMvcResultMatchers; -import org.springframework.test.web.servlet.setup.MockMvcBuilders; -import org.springframework.web.context.WebApplicationContext; - -import java.nio.charset.Charset; - -import static org.hamcrest.Matchers.hasSize; -import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.jsonPath; - -@RunWith(SpringJUnit4ClassRunner.class) @SpringBootTest(classes = Application.class) @WebAppConfiguration -public class SpringBootIntegrationTests { - - @Autowired private WebApplicationContext webApplicationContext; - - private MockMvc mockMvc; - - @Before public void setupMockMvc() { - mockMvc = MockMvcBuilders.webAppContextSetup(webApplicationContext).build(); - } - - @Test public void givenRequestHasBeenMade_whenMeetsAllOfGivenConditions_thenCorrect() throws Exception { - MediaType contentType = new MediaType(MediaType.APPLICATION_JSON.getType(), MediaType.APPLICATION_JSON.getSubtype(), - Charset.forName("utf8")); - - mockMvc.perform(MockMvcRequestBuilders.get("/personQuery?name=john")).andExpect(MockMvcResultMatchers.status().isOk()) - .andExpect(MockMvcResultMatchers.content().contentType(contentType)).andExpect(jsonPath("$", hasSize(4))); - } -} - - From f8b9555e4260104cdaf815efabfc93863d0bb7c6 Mon Sep 17 00:00:00 2001 From: Jorge Collado Date: Wed, 9 May 2018 18:35:14 +0200 Subject: [PATCH 53/55] [BAEL-1686] - Commiting final changes --- spring-data-rest-querydsl/pom.xml | 151 +----------------- .../main/java/com/baeldung/Application.java | 30 ++-- .../baeldung/controller/QueryController.java | 29 +++- .../AddressAvailabilityRepository.java | 19 +++ ...sonRepository.java => UserRepository.java} | 10 +- .../java/com/baeldung/entity/Address.java | 33 ++-- .../baeldung/entity/AddressAvailability.java | 114 +++++++++++++ .../main/java/com/baeldung/entity/Person.java | 48 ------ .../main/java/com/baeldung/entity/User.java | 46 ++++++ .../src/main/resources/application.yml | 4 +- .../IntegrationTest.java | 66 -------- .../QuerydslIntegrationTest.java | 52 ++++++ 12 files changed, 309 insertions(+), 293 deletions(-) create mode 100644 spring-data-rest-querydsl/src/main/java/com/baeldung/controller/repository/AddressAvailabilityRepository.java rename spring-data-rest-querydsl/src/main/java/com/baeldung/controller/repository/{PersonRepository.java => UserRepository.java} (72%) create mode 100644 spring-data-rest-querydsl/src/main/java/com/baeldung/entity/AddressAvailability.java delete mode 100644 spring-data-rest-querydsl/src/main/java/com/baeldung/entity/Person.java create mode 100644 spring-data-rest-querydsl/src/main/java/com/baeldung/entity/User.java delete mode 100644 spring-data-rest-querydsl/src/test/java/com/baeldung/springdatarestquerydsl/IntegrationTest.java create mode 100644 spring-data-rest-querydsl/src/test/java/com/baeldung/springdatarestquerydsl/QuerydslIntegrationTest.java diff --git a/spring-data-rest-querydsl/pom.xml b/spring-data-rest-querydsl/pom.xml index f9d5d27773..3b31e1835c 100644 --- a/spring-data-rest-querydsl/pom.xml +++ b/spring-data-rest-querydsl/pom.xml @@ -1,14 +1,13 @@ - + 4.0.0 - com.vivelibre - VLCore - 2.0.31-SNAPSHOT + com.baeldung + spring-data-rest-querydsl + 1.0 - - VLCore - Vivelibre API - Microservices + spring-data-rest-querydsl org.springframework.boot @@ -16,27 +15,11 @@ 1.5.9.RELEASE - - - - org.springframework.cloud - spring-cloud-netflix - 1.3.4.RELEASE - pom - import - - - - org.springframework.boot spring-boot-starter-data-rest - - org.springframework.cloud - spring-cloud-starter-eureka - org.springframework.boot spring-boot-starter-web @@ -49,44 +32,6 @@ mysql mysql-connector-java - - org.mariadb.jdbc - mariadb-java-client - - - org.springframework.cloud - spring-cloud-starter-ribbon - - - org.springframework.cloud - spring-cloud-starter-hystrix - - - org.springframework.boot - spring-boot-autoconfigure - - - org.springframework.boot - spring-boot-actuator - - - org.springframework.boot - spring-boot-devtools - true - - - org.springframework.restdocs - spring-restdocs-mockmvc - test - - - org.springframework.data - spring-data-rest-hal-browser - - - org.springframework.boot - spring-boot-starter-hateoas - com.querydsl querydsl-apt @@ -95,62 +40,6 @@ com.querydsl querydsl-jpa - - org.slf4j - slf4j-log4j12 - 1.6.1 - - - junit - junit - test - - - io.rest-assured - rest-assured - 3.0.6 - test - - - javax.ws.rs - jsr311-api - 1.1.1 - - - com.google.code.gson - gson - 2.8.2 - - - org.springframework.boot - spring-boot-configuration-processor - true - - - org.apache.httpcomponents - httpcore - 4.4.8 - - - org.apache.httpcomponents - httpclient - 4.5.3 - - - com.google.guava - guava - 23.6-jre - - - net.sf.dozer - dozer - 5.5.1 - - - org.apache.xmlrpc - xmlrpc-client - 3.1.3 - org.springframework.boot spring-boot-starter-test @@ -203,34 +92,6 @@ - - maven-release-plugin - 2.5.1 - - - - scm:git:http://jcollado@192.169.170.109:7990/scm/viv/vivelibre-backendside-core-vlcore.git - http://192.169.170.109:7990/projects/VIV/repos/vivelibre-backendside-core-vlcore - scm:git:http://jcollado@192.169.170.109:7990/scm/viv/vivelibre-backendside-core-vlcore.git - - VLCore-2.0.28 - - - - - releases - http://192.169.170.109:3000/nexus/content/repositories/releases - - - - - - nexus-releases - nexus - http://192.169.170.109:3000/nexus/content/repositories/releases/ - - - diff --git a/spring-data-rest-querydsl/src/main/java/com/baeldung/Application.java b/spring-data-rest-querydsl/src/main/java/com/baeldung/Application.java index cae2d62f05..24e4cee057 100644 --- a/spring-data-rest-querydsl/src/main/java/com/baeldung/Application.java +++ b/spring-data-rest-querydsl/src/main/java/com/baeldung/Application.java @@ -1,23 +1,26 @@ package com.baeldung; +import com.baeldung.controller.repository.AddressAvailabilityRepository; import com.baeldung.controller.repository.AddressRepository; -import com.baeldung.controller.repository.PersonRepository; +import com.baeldung.controller.repository.UserRepository; import com.baeldung.entity.Address; -import com.baeldung.entity.Person; +import com.baeldung.entity.AddressAvailability; +import com.baeldung.entity.User; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.EnableAutoConfiguration; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.autoconfigure.domain.EntityScan; import org.springframework.data.jpa.repository.config.EnableJpaRepositories; import javax.annotation.PostConstruct; -import java.util.UUID; @SpringBootApplication @EntityScan("com.baeldung.entity") @EnableJpaRepositories("com.baeldung.controller.repository") -public class Application { +@EnableAutoConfiguration public class Application { - @Autowired private PersonRepository personRepository; + @Autowired private UserRepository personRepository; @Autowired private AddressRepository addressRepository; + @Autowired private AddressAvailabilityRepository addressAvailabilityRepository; public static void main(String[] args) { SpringApplication.run(Application.class, args); @@ -25,15 +28,18 @@ public class Application { @PostConstruct private void initializeData() { // Create John - final Address johnsAddress = new Address(UUID.randomUUID().toString(), "Fake Street 1", "Fake Country"); - addressRepository.save(johnsAddress); - final Person john = new Person(UUID.randomUUID().toString(), "John", johnsAddress); + final AddressAvailability addressOneAvailability = new AddressAvailability(true, true, false, false, false, true, true); + addressAvailabilityRepository.save(addressOneAvailability); + final User john = new User("John"); personRepository.save(john); - + final Address addressOne = new Address("Fake Street 1", "Fake Country", addressOneAvailability, john); + addressRepository.save(addressOne); // Create Lisa - final Address lisasAddress = new Address(UUID.randomUUID().toString(), "Real Street 1", "Real Country"); - addressRepository.save(lisasAddress); - final Person lisa = new Person(UUID.randomUUID().toString(), "Lisa", lisasAddress); + final AddressAvailability addressTwoAvailability = new AddressAvailability(false, false, false, false, false, true, true); + addressAvailabilityRepository.save(addressTwoAvailability); + final User lisa = new User("Lisa"); personRepository.save(lisa); + final Address addressTwo = new Address("Real Street 1", "Real Country", addressTwoAvailability, lisa); + addressRepository.save(addressTwo); } } diff --git a/spring-data-rest-querydsl/src/main/java/com/baeldung/controller/QueryController.java b/spring-data-rest-querydsl/src/main/java/com/baeldung/controller/QueryController.java index 753250e638..4b3818e5f1 100644 --- a/spring-data-rest-querydsl/src/main/java/com/baeldung/controller/QueryController.java +++ b/spring-data-rest-querydsl/src/main/java/com/baeldung/controller/QueryController.java @@ -1,7 +1,11 @@ package com.baeldung.controller; -import com.baeldung.controller.repository.PersonRepository; -import com.baeldung.entity.Person; +import com.baeldung.controller.repository.AddressAvailabilityRepository; +import com.baeldung.controller.repository.AddressRepository; +import com.baeldung.controller.repository.UserRepository; +import com.baeldung.entity.Address; +import com.baeldung.entity.AddressAvailability; +import com.baeldung.entity.User; import com.querydsl.core.BooleanBuilder; import com.querydsl.core.types.Predicate; import org.springframework.beans.factory.annotation.Autowired; @@ -12,11 +16,26 @@ import org.springframework.web.bind.annotation.RestController; @RestController public class QueryController { - @Autowired private PersonRepository personRepository; + @Autowired private UserRepository personRepository; + @Autowired private AddressRepository addressRepository; + @Autowired private AddressAvailabilityRepository addressAvailabilityRepository; - @GetMapping(value = "/personQuery", produces = MediaType.APPLICATION_JSON_VALUE) - public Iterable getFilteredEvents(@QuerydslPredicate(root = Person.class) Predicate predicate) { + @GetMapping(value = "/users", produces = MediaType.APPLICATION_JSON_VALUE) + public Iterable queryOverUser(@QuerydslPredicate(root = User.class) Predicate predicate) { final BooleanBuilder builder = new BooleanBuilder(); return personRepository.findAll(builder.and(predicate)); } + + @GetMapping(value = "/addresses", produces = MediaType.APPLICATION_JSON_VALUE) + public Iterable
queryOverAddress(@QuerydslPredicate(root = Address.class) Predicate predicate) { + final BooleanBuilder builder = new BooleanBuilder(); + return addressRepository.findAll(builder.and(predicate)); + } + + @GetMapping(value = "/addressAvailabilities", produces = MediaType.APPLICATION_JSON_VALUE) + public Iterable queryOverAddressAvailability( + @QuerydslPredicate(root = AddressAvailability.class) Predicate predicate) { + final BooleanBuilder builder = new BooleanBuilder(); + return addressAvailabilityRepository.findAll(builder.and(predicate)); + } } diff --git a/spring-data-rest-querydsl/src/main/java/com/baeldung/controller/repository/AddressAvailabilityRepository.java b/spring-data-rest-querydsl/src/main/java/com/baeldung/controller/repository/AddressAvailabilityRepository.java new file mode 100644 index 0000000000..f396695d56 --- /dev/null +++ b/spring-data-rest-querydsl/src/main/java/com/baeldung/controller/repository/AddressAvailabilityRepository.java @@ -0,0 +1,19 @@ +package com.baeldung.controller.repository; + +import com.baeldung.entity.AddressAvailability; +import com.baeldung.entity.QAddressAvailability; +import com.querydsl.core.types.dsl.StringExpression; +import com.querydsl.core.types.dsl.StringPath; +import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.data.querydsl.QueryDslPredicateExecutor; +import org.springframework.data.querydsl.binding.QuerydslBinderCustomizer; +import org.springframework.data.querydsl.binding.QuerydslBindings; +import org.springframework.data.querydsl.binding.SingleValueBinding; + +public interface AddressAvailabilityRepository + extends JpaRepository, QueryDslPredicateExecutor, + QuerydslBinderCustomizer { + @Override default void customize(final QuerydslBindings bindings, final QAddressAvailability root) { + bindings.bind(String.class).first((SingleValueBinding) StringExpression::eq); + } +} diff --git a/spring-data-rest-querydsl/src/main/java/com/baeldung/controller/repository/PersonRepository.java b/spring-data-rest-querydsl/src/main/java/com/baeldung/controller/repository/UserRepository.java similarity index 72% rename from spring-data-rest-querydsl/src/main/java/com/baeldung/controller/repository/PersonRepository.java rename to spring-data-rest-querydsl/src/main/java/com/baeldung/controller/repository/UserRepository.java index 7c37fb6b15..13d33cdac6 100644 --- a/spring-data-rest-querydsl/src/main/java/com/baeldung/controller/repository/PersonRepository.java +++ b/spring-data-rest-querydsl/src/main/java/com/baeldung/controller/repository/UserRepository.java @@ -1,7 +1,7 @@ package com.baeldung.controller.repository; -import com.baeldung.entity.Person; -import com.baeldung.entity.QPerson; +import com.baeldung.entity.QUser; +import com.baeldung.entity.User; import com.querydsl.core.types.dsl.StringExpression; import com.querydsl.core.types.dsl.StringPath; import org.springframework.data.jpa.repository.JpaRepository; @@ -10,9 +10,9 @@ import org.springframework.data.querydsl.binding.QuerydslBinderCustomizer; import org.springframework.data.querydsl.binding.QuerydslBindings; import org.springframework.data.querydsl.binding.SingleValueBinding; -public interface PersonRepository - extends JpaRepository, QueryDslPredicateExecutor, QuerydslBinderCustomizer { - @Override default void customize(final QuerydslBindings bindings, final QPerson root) { +public interface UserRepository + extends JpaRepository, QueryDslPredicateExecutor, QuerydslBinderCustomizer { + @Override default void customize(final QuerydslBindings bindings, final QUser root) { bindings.bind(String.class).first((SingleValueBinding) StringExpression::eq); } } diff --git a/spring-data-rest-querydsl/src/main/java/com/baeldung/entity/Address.java b/spring-data-rest-querydsl/src/main/java/com/baeldung/entity/Address.java index 4f92031473..5d37431ea3 100644 --- a/spring-data-rest-querydsl/src/main/java/com/baeldung/entity/Address.java +++ b/spring-data-rest-querydsl/src/main/java/com/baeldung/entity/Address.java @@ -1,29 +1,36 @@ package com.baeldung.entity; -import javax.persistence.Entity; -import javax.persistence.Id; +import com.fasterxml.jackson.annotation.JsonBackReference; +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; -@Entity public class Address { +import javax.persistence.*; - @Id private String id; - private String address; - private String country; +@Entity @JsonIgnoreProperties({"hibernateLazyInitializer", "handler"}) public class Address { + + @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "id", unique = true, nullable = false) private Long id; + @Column private String address; + @Column private String country; + @OneToOne(fetch = FetchType.LAZY) @JoinColumn(name = "address_id") @JsonBackReference private AddressAvailability + addressAvailability; + @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "user_id") @JsonBackReference private User user; public Address() { } - public Address(String id, String address, String country) { + public Address(String address, String country, AddressAvailability addressAvailability, User user) { this.id = id; this.address = address; this.country = country; + this.addressAvailability = addressAvailability; + this.user = user; } - public String getId() { + public Long getId() { return id; } - public void setId(String id) { + public void setId(Long id) { this.id = id; } @@ -42,4 +49,12 @@ import javax.persistence.Id; public void setCountry(String country) { this.country = country; } + + public AddressAvailability getAddressAvailability() { + return addressAvailability; + } + + public void setAddressAvailability(AddressAvailability addressAvailability) { + this.addressAvailability = addressAvailability; + } } diff --git a/spring-data-rest-querydsl/src/main/java/com/baeldung/entity/AddressAvailability.java b/spring-data-rest-querydsl/src/main/java/com/baeldung/entity/AddressAvailability.java new file mode 100644 index 0000000000..c731c72636 --- /dev/null +++ b/spring-data-rest-querydsl/src/main/java/com/baeldung/entity/AddressAvailability.java @@ -0,0 +1,114 @@ +package com.baeldung.entity; + + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonManagedReference; + +import javax.persistence.*; + +@Table(name = "address_availability") @Entity @JsonIgnoreProperties({"hibernateLazyInitializer", "handler"}) +public class AddressAvailability { + + @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "id", unique = true, nullable = false) private Long id; + @Column private Boolean monday; + @Column private Boolean tuesday; + @Column private Boolean wednesday; + @Column private Boolean thursday; + @Column private Boolean friday; + @Column private Boolean saturday; + @Column private Boolean sunday; + @OneToOne(mappedBy = "addressAvailability") @JsonManagedReference private Address address; + + public AddressAvailability() { + } + + public AddressAvailability(Boolean monday, Boolean tuesday, Boolean wednesday, Boolean thursday, Boolean friday, + Boolean saturday, Boolean sunday) { + this.monday = monday; + this.tuesday = tuesday; + this.wednesday = wednesday; + this.thursday = thursday; + this.friday = friday; + this.saturday = saturday; + this.sunday = sunday; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + + public Boolean getMonday() { + return monday; + } + + public void setMonday(Boolean monday) { + this.monday = monday; + } + + + public Boolean getTuesday() { + return tuesday; + } + + public void setTuesday(Boolean tuesday) { + this.tuesday = tuesday; + } + + + public Boolean getWednesday() { + return wednesday; + } + + public void setWednesday(Boolean wednesday) { + this.wednesday = wednesday; + } + + + public Boolean getThursday() { + return thursday; + } + + public void setThursday(Boolean thursday) { + this.thursday = thursday; + } + + + public Boolean getFriday() { + return friday; + } + + public void setFriday(Boolean friday) { + this.friday = friday; + } + + + public Boolean getSaturday() { + return saturday; + } + + public void setSaturday(Boolean saturday) { + this.saturday = saturday; + } + + + public Boolean getSunday() { + return sunday; + } + + public void setSunday(Boolean sunday) { + this.sunday = sunday; + } + + public Address getAddress() { + return address; + } + + public void setAddress(Address address) { + this.address = address; + } +} diff --git a/spring-data-rest-querydsl/src/main/java/com/baeldung/entity/Person.java b/spring-data-rest-querydsl/src/main/java/com/baeldung/entity/Person.java deleted file mode 100644 index 779b1f84a9..0000000000 --- a/spring-data-rest-querydsl/src/main/java/com/baeldung/entity/Person.java +++ /dev/null @@ -1,48 +0,0 @@ -package com.baeldung.entity; - - -import javax.persistence.Entity; -import javax.persistence.Id; -import javax.persistence.JoinColumn; -import javax.persistence.OneToOne; - - -@Entity public class Person { - - @Id private String id; - private String name; - @OneToOne @JoinColumn(name = "address") private com.baeldung.entity.Address address; - - public Person() { - } - - public Person(String id, String name, com.baeldung.entity.Address address) { - this.id = id; - this.name = name; - this.address = address; - } - - public String getId() { - return id; - } - - public void setId(String id) { - this.id = id; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public com.baeldung.entity.Address getAddress() { - return address; - } - - public void setAddress(com.baeldung.entity.Address address) { - this.address = address; - } -} diff --git a/spring-data-rest-querydsl/src/main/java/com/baeldung/entity/User.java b/spring-data-rest-querydsl/src/main/java/com/baeldung/entity/User.java new file mode 100644 index 0000000000..adc6da724a --- /dev/null +++ b/spring-data-rest-querydsl/src/main/java/com/baeldung/entity/User.java @@ -0,0 +1,46 @@ +package com.baeldung.entity; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonManagedReference; + +import javax.persistence.*; +import java.util.List; + + +@Entity @JsonIgnoreProperties({"hibernateLazyInitializer", "handler"}) public class User { + + @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "id", unique = true, nullable = false) private Long id; + @Column private String name; + @OneToMany(fetch = FetchType.LAZY, mappedBy = "user") @JsonManagedReference private List
addresses; + + public User() { + } + + public User(String name) { + this.name = name; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public List
getAddresses() { + return addresses; + } + + public void setAddresses(List
addresses) { + this.addresses = addresses; + } +} diff --git a/spring-data-rest-querydsl/src/main/resources/application.yml b/spring-data-rest-querydsl/src/main/resources/application.yml index c04c9d9ca0..fe9dae345d 100644 --- a/spring-data-rest-querydsl/src/main/resources/application.yml +++ b/spring-data-rest-querydsl/src/main/resources/application.yml @@ -2,12 +2,10 @@ spring: datasource: driver-class-name: com.mysql.jdbc.Driver hikari: - connection-timeout: 60000 - maximum-pool-size: 5 pool-name: hikari-pool url: jdbc:mysql://localhost:3306/baeldung?verifyServerCertificate=false&useSSL=false&requireSSL=false username: root password: admin jpa: hibernate: - ddl-auto: create-drop + ddl-auto: create diff --git a/spring-data-rest-querydsl/src/test/java/com/baeldung/springdatarestquerydsl/IntegrationTest.java b/spring-data-rest-querydsl/src/test/java/com/baeldung/springdatarestquerydsl/IntegrationTest.java deleted file mode 100644 index 63d0f56651..0000000000 --- a/spring-data-rest-querydsl/src/test/java/com/baeldung/springdatarestquerydsl/IntegrationTest.java +++ /dev/null @@ -1,66 +0,0 @@ -package com.baeldung.springdatarestquerydsl; - -import com.baeldung.Application; -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.test.context.SpringBootTest; -import org.springframework.http.MediaType; -import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; -import org.springframework.test.context.web.WebAppConfiguration; -import org.springframework.test.web.servlet.MockMvc; -import org.springframework.test.web.servlet.setup.MockMvcBuilders; -import org.springframework.web.context.WebApplicationContext; - -import java.nio.charset.Charset; - -import static org.hamcrest.Matchers.hasSize; -import static org.hamcrest.Matchers.is; -import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get; -import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.*; - -@RunWith(SpringJUnit4ClassRunner.class) @SpringBootTest(classes = Application.class) @WebAppConfiguration -public class IntegrationTest { - - final MediaType contentType = - new MediaType(MediaType.APPLICATION_JSON.getType(), MediaType.APPLICATION_JSON.getSubtype(), Charset.forName("utf8")); - - @Autowired private WebApplicationContext webApplicationContext; - - private MockMvc mockMvc; - - @Before public void setupMockMvc() { - mockMvc = MockMvcBuilders.webAppContextSetup(webApplicationContext).build(); - } - - @Test public void givenRequestHasBeenMade_whenQueryOverNameAttribute_thenGetJohn() throws Exception { - // Get John - mockMvc.perform(get("/personQuery?name=John")).andExpect(status().isOk()).andExpect(content().contentType(contentType)) - .andExpect(jsonPath("$", hasSize(1))).andExpect(jsonPath("$[0].name", is("John"))) - .andExpect(jsonPath("$[0].address.address", is("Fake Street 1"))) - .andExpect(jsonPath("$[0].address.country", is("Fake Country"))); - } - - @Test public void givenRequestHasBeenMade_whenQueryOverNameAttribute_thenGetLisa() throws Exception { - // Get Lisa - mockMvc.perform(get("/personQuery?name=Lisa")).andExpect(status().isOk()).andExpect(content().contentType(contentType)) - .andExpect(jsonPath("$", hasSize(1))).andExpect(jsonPath("$[0].name", is("Lisa"))) - .andExpect(jsonPath("$[0].address.address", is("Real Street 1"))) - .andExpect(jsonPath("$[0].address.country", is("Real Country"))); - } - - @Test public void givenRequestHasBeenMade_whenQueryWithoutAttribute_thenCorrect() throws Exception { - final MediaType contentType = new MediaType(MediaType.APPLICATION_JSON.getType(), MediaType.APPLICATION_JSON.getSubtype(), - Charset.forName("utf8")); - - mockMvc.perform(get("/personQuery")).andExpect(status().isOk()).andExpect(content().contentType(contentType)) - .andExpect(jsonPath("$", hasSize(2))) - // Get John - .andExpect(jsonPath("$[0].name", is("John"))).andExpect(jsonPath("$[0].address.address", is("Fake Street 1"))) - .andExpect(jsonPath("$[0].address.country", is("Fake Country"))) - // Get Lisa - .andExpect(jsonPath("$[1].name", is("Lisa"))).andExpect(jsonPath("$[1].address.address", is("Real Street 1"))) - .andExpect(jsonPath("$[1].address.country", is("Real Country"))); - } -} diff --git a/spring-data-rest-querydsl/src/test/java/com/baeldung/springdatarestquerydsl/QuerydslIntegrationTest.java b/spring-data-rest-querydsl/src/test/java/com/baeldung/springdatarestquerydsl/QuerydslIntegrationTest.java new file mode 100644 index 0000000000..ae972bcfcf --- /dev/null +++ b/spring-data-rest-querydsl/src/test/java/com/baeldung/springdatarestquerydsl/QuerydslIntegrationTest.java @@ -0,0 +1,52 @@ +package com.baeldung.springdatarestquerydsl; + +import com.baeldung.Application; +import org.junit.Before; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.http.MediaType; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; +import org.springframework.test.context.web.WebAppConfiguration; +import org.springframework.test.web.servlet.MockMvc; +import org.springframework.test.web.servlet.setup.MockMvcBuilders; +import org.springframework.web.context.WebApplicationContext; + +import java.nio.charset.Charset; + +import static org.hamcrest.Matchers.hasSize; +import static org.hamcrest.Matchers.is; +import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.*; + +@RunWith(SpringJUnit4ClassRunner.class) @SpringBootTest(classes = Application.class) @WebAppConfiguration +public class QuerydslIntegrationTest { + + final MediaType contentType = + new MediaType(MediaType.APPLICATION_JSON.getType(), MediaType.APPLICATION_JSON.getSubtype(), Charset.forName("utf8")); + + @Autowired private WebApplicationContext webApplicationContext; + + private MockMvc mockMvc; + + @Before public void setupMockMvc() { + mockMvc = MockMvcBuilders.webAppContextSetup(webApplicationContext).build(); + } + + @Test public void givenRequestHasBeenMade_whenQueryAddressFilteringByUserName_thenGetJohn() throws Exception { + mockMvc.perform(get("/addresses?user.name=John")).andExpect(status().isOk()).andExpect(content().contentType(contentType)) + .andExpect(jsonPath("$", hasSize(1))).andExpect(jsonPath("$[0].address", is("Fake Street 1"))) + .andExpect(jsonPath("$[0].country", is("Fake Country"))); + } + + @Test public void givenRequestHasBeenMade_whenQueryOverAddressAvailabilityFilteringByAddressCountry_thenGetAvailability() + throws Exception { + mockMvc.perform(get("/addressAvailabilities?address.country=Real Country")).andExpect(status().isOk()) + .andExpect(content().contentType(contentType)).andExpect(jsonPath("$", hasSize(1))) + .andExpect(jsonPath("$[0].monday", is(false))).andExpect(jsonPath("$[0].tuesday", is(false))) + .andExpect(jsonPath("$[0].wednesday", is(false))).andExpect(jsonPath("$[0].thursday", is(false))) + .andExpect(jsonPath("$[0].friday", is(false))).andExpect(jsonPath("$[0].saturday", is(true))) + .andExpect(jsonPath("$[0].sunday", is(true))); + } +} From 2b08d2c7ceac8b6a3344b14604e36d4311b6564f Mon Sep 17 00:00:00 2001 From: Jorge Collado Date: Tue, 22 May 2018 18:20:10 +0200 Subject: [PATCH 54/55] [BAEL-1686] - Update project after editor's article review --- .../main/java/com/baeldung/Application.java | 27 ++--- .../baeldung/controller/QueryController.java | 19 +-- .../AddressAvailabilityRepository.java | 19 --- .../repository/AddressRepository.java | 3 +- .../controller/repository/UserRepository.java | 3 +- .../java/com/baeldung/entity/Address.java | 33 +++-- .../baeldung/entity/AddressAvailability.java | 114 ------------------ .../main/java/com/baeldung/entity/User.java | 25 ++-- .../QuerydslIntegrationTest.java | 43 ++++--- 9 files changed, 81 insertions(+), 205 deletions(-) delete mode 100644 spring-data-rest-querydsl/src/main/java/com/baeldung/controller/repository/AddressAvailabilityRepository.java delete mode 100644 spring-data-rest-querydsl/src/main/java/com/baeldung/entity/AddressAvailability.java diff --git a/spring-data-rest-querydsl/src/main/java/com/baeldung/Application.java b/spring-data-rest-querydsl/src/main/java/com/baeldung/Application.java index 24e4cee057..28d084a4dc 100644 --- a/spring-data-rest-querydsl/src/main/java/com/baeldung/Application.java +++ b/spring-data-rest-querydsl/src/main/java/com/baeldung/Application.java @@ -1,10 +1,8 @@ package com.baeldung; -import com.baeldung.controller.repository.AddressAvailabilityRepository; import com.baeldung.controller.repository.AddressRepository; import com.baeldung.controller.repository.UserRepository; import com.baeldung.entity.Address; -import com.baeldung.entity.AddressAvailability; import com.baeldung.entity.User; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.SpringApplication; @@ -15,31 +13,32 @@ import org.springframework.data.jpa.repository.config.EnableJpaRepositories; import javax.annotation.PostConstruct; -@SpringBootApplication @EntityScan("com.baeldung.entity") @EnableJpaRepositories("com.baeldung.controller.repository") -@EnableAutoConfiguration public class Application { +@SpringBootApplication +@EntityScan("com.baeldung.entity") +@EnableJpaRepositories("com.baeldung.controller.repository") +@EnableAutoConfiguration +public class Application { - @Autowired private UserRepository personRepository; - @Autowired private AddressRepository addressRepository; - @Autowired private AddressAvailabilityRepository addressAvailabilityRepository; + @Autowired + private UserRepository personRepository; + @Autowired + private AddressRepository addressRepository; public static void main(String[] args) { SpringApplication.run(Application.class, args); } - @PostConstruct private void initializeData() { + @PostConstruct + private void initializeData() { // Create John - final AddressAvailability addressOneAvailability = new AddressAvailability(true, true, false, false, false, true, true); - addressAvailabilityRepository.save(addressOneAvailability); final User john = new User("John"); personRepository.save(john); - final Address addressOne = new Address("Fake Street 1", "Fake Country", addressOneAvailability, john); + final Address addressOne = new Address("Fake Street 1", "Spain", john); addressRepository.save(addressOne); // Create Lisa - final AddressAvailability addressTwoAvailability = new AddressAvailability(false, false, false, false, false, true, true); - addressAvailabilityRepository.save(addressTwoAvailability); final User lisa = new User("Lisa"); personRepository.save(lisa); - final Address addressTwo = new Address("Real Street 1", "Real Country", addressTwoAvailability, lisa); + final Address addressTwo = new Address("Real Street 1", "Germany", lisa); addressRepository.save(addressTwo); } } diff --git a/spring-data-rest-querydsl/src/main/java/com/baeldung/controller/QueryController.java b/spring-data-rest-querydsl/src/main/java/com/baeldung/controller/QueryController.java index 4b3818e5f1..e29932657f 100644 --- a/spring-data-rest-querydsl/src/main/java/com/baeldung/controller/QueryController.java +++ b/spring-data-rest-querydsl/src/main/java/com/baeldung/controller/QueryController.java @@ -1,10 +1,8 @@ package com.baeldung.controller; -import com.baeldung.controller.repository.AddressAvailabilityRepository; import com.baeldung.controller.repository.AddressRepository; import com.baeldung.controller.repository.UserRepository; import com.baeldung.entity.Address; -import com.baeldung.entity.AddressAvailability; import com.baeldung.entity.User; import com.querydsl.core.BooleanBuilder; import com.querydsl.core.types.Predicate; @@ -14,11 +12,13 @@ import org.springframework.http.MediaType; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; -@RestController public class QueryController { +@RestController +public class QueryController { - @Autowired private UserRepository personRepository; - @Autowired private AddressRepository addressRepository; - @Autowired private AddressAvailabilityRepository addressAvailabilityRepository; + @Autowired + private UserRepository personRepository; + @Autowired + private AddressRepository addressRepository; @GetMapping(value = "/users", produces = MediaType.APPLICATION_JSON_VALUE) public Iterable queryOverUser(@QuerydslPredicate(root = User.class) Predicate predicate) { @@ -31,11 +31,4 @@ import org.springframework.web.bind.annotation.RestController; final BooleanBuilder builder = new BooleanBuilder(); return addressRepository.findAll(builder.and(predicate)); } - - @GetMapping(value = "/addressAvailabilities", produces = MediaType.APPLICATION_JSON_VALUE) - public Iterable queryOverAddressAvailability( - @QuerydslPredicate(root = AddressAvailability.class) Predicate predicate) { - final BooleanBuilder builder = new BooleanBuilder(); - return addressAvailabilityRepository.findAll(builder.and(predicate)); - } } diff --git a/spring-data-rest-querydsl/src/main/java/com/baeldung/controller/repository/AddressAvailabilityRepository.java b/spring-data-rest-querydsl/src/main/java/com/baeldung/controller/repository/AddressAvailabilityRepository.java deleted file mode 100644 index f396695d56..0000000000 --- a/spring-data-rest-querydsl/src/main/java/com/baeldung/controller/repository/AddressAvailabilityRepository.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.baeldung.controller.repository; - -import com.baeldung.entity.AddressAvailability; -import com.baeldung.entity.QAddressAvailability; -import com.querydsl.core.types.dsl.StringExpression; -import com.querydsl.core.types.dsl.StringPath; -import org.springframework.data.jpa.repository.JpaRepository; -import org.springframework.data.querydsl.QueryDslPredicateExecutor; -import org.springframework.data.querydsl.binding.QuerydslBinderCustomizer; -import org.springframework.data.querydsl.binding.QuerydslBindings; -import org.springframework.data.querydsl.binding.SingleValueBinding; - -public interface AddressAvailabilityRepository - extends JpaRepository, QueryDslPredicateExecutor, - QuerydslBinderCustomizer { - @Override default void customize(final QuerydslBindings bindings, final QAddressAvailability root) { - bindings.bind(String.class).first((SingleValueBinding) StringExpression::eq); - } -} diff --git a/spring-data-rest-querydsl/src/main/java/com/baeldung/controller/repository/AddressRepository.java b/spring-data-rest-querydsl/src/main/java/com/baeldung/controller/repository/AddressRepository.java index aa42ca6779..2e88820c98 100644 --- a/spring-data-rest-querydsl/src/main/java/com/baeldung/controller/repository/AddressRepository.java +++ b/spring-data-rest-querydsl/src/main/java/com/baeldung/controller/repository/AddressRepository.java @@ -12,7 +12,8 @@ import org.springframework.data.querydsl.binding.SingleValueBinding; public interface AddressRepository extends JpaRepository, QueryDslPredicateExecutor
, QuerydslBinderCustomizer { - @Override default void customize(final QuerydslBindings bindings, final QAddress root) { + @Override + default void customize(final QuerydslBindings bindings, final QAddress root) { bindings.bind(String.class).first((SingleValueBinding) StringExpression::eq); } } diff --git a/spring-data-rest-querydsl/src/main/java/com/baeldung/controller/repository/UserRepository.java b/spring-data-rest-querydsl/src/main/java/com/baeldung/controller/repository/UserRepository.java index 13d33cdac6..98ff2ac5e3 100644 --- a/spring-data-rest-querydsl/src/main/java/com/baeldung/controller/repository/UserRepository.java +++ b/spring-data-rest-querydsl/src/main/java/com/baeldung/controller/repository/UserRepository.java @@ -12,7 +12,8 @@ import org.springframework.data.querydsl.binding.SingleValueBinding; public interface UserRepository extends JpaRepository, QueryDslPredicateExecutor, QuerydslBinderCustomizer { - @Override default void customize(final QuerydslBindings bindings, final QUser root) { + @Override + default void customize(final QuerydslBindings bindings, final QUser root) { bindings.bind(String.class).first((SingleValueBinding) StringExpression::eq); } } diff --git a/spring-data-rest-querydsl/src/main/java/com/baeldung/entity/Address.java b/spring-data-rest-querydsl/src/main/java/com/baeldung/entity/Address.java index 5d37431ea3..b01194adb7 100644 --- a/spring-data-rest-querydsl/src/main/java/com/baeldung/entity/Address.java +++ b/spring-data-rest-querydsl/src/main/java/com/baeldung/entity/Address.java @@ -1,28 +1,33 @@ package com.baeldung.entity; -import com.fasterxml.jackson.annotation.JsonBackReference; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import javax.persistence.*; -@Entity @JsonIgnoreProperties({"hibernateLazyInitializer", "handler"}) public class Address { +@Entity +@JsonIgnoreProperties({"hibernateLazyInitializer", "handler"}) +public class Address { - @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "id", unique = true, nullable = false) private Long id; - @Column private String address; - @Column private String country; - @OneToOne(fetch = FetchType.LAZY) @JoinColumn(name = "address_id") @JsonBackReference private AddressAvailability - addressAvailability; - @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "user_id") @JsonBackReference private User user; + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + @Column(name = "id", unique = true, nullable = false) + private Long id; + @Column + private String address; + @Column + private String country; + @OneToOne(fetch = FetchType.LAZY) + @JoinColumn(name = "user_id") + private User user; public Address() { } - public Address(String address, String country, AddressAvailability addressAvailability, User user) { + public Address(String address, String country, User user) { this.id = id; this.address = address; this.country = country; - this.addressAvailability = addressAvailability; this.user = user; } @@ -49,12 +54,4 @@ import javax.persistence.*; public void setCountry(String country) { this.country = country; } - - public AddressAvailability getAddressAvailability() { - return addressAvailability; - } - - public void setAddressAvailability(AddressAvailability addressAvailability) { - this.addressAvailability = addressAvailability; - } } diff --git a/spring-data-rest-querydsl/src/main/java/com/baeldung/entity/AddressAvailability.java b/spring-data-rest-querydsl/src/main/java/com/baeldung/entity/AddressAvailability.java deleted file mode 100644 index c731c72636..0000000000 --- a/spring-data-rest-querydsl/src/main/java/com/baeldung/entity/AddressAvailability.java +++ /dev/null @@ -1,114 +0,0 @@ -package com.baeldung.entity; - - -import com.fasterxml.jackson.annotation.JsonIgnoreProperties; -import com.fasterxml.jackson.annotation.JsonManagedReference; - -import javax.persistence.*; - -@Table(name = "address_availability") @Entity @JsonIgnoreProperties({"hibernateLazyInitializer", "handler"}) -public class AddressAvailability { - - @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "id", unique = true, nullable = false) private Long id; - @Column private Boolean monday; - @Column private Boolean tuesday; - @Column private Boolean wednesday; - @Column private Boolean thursday; - @Column private Boolean friday; - @Column private Boolean saturday; - @Column private Boolean sunday; - @OneToOne(mappedBy = "addressAvailability") @JsonManagedReference private Address address; - - public AddressAvailability() { - } - - public AddressAvailability(Boolean monday, Boolean tuesday, Boolean wednesday, Boolean thursday, Boolean friday, - Boolean saturday, Boolean sunday) { - this.monday = monday; - this.tuesday = tuesday; - this.wednesday = wednesday; - this.thursday = thursday; - this.friday = friday; - this.saturday = saturday; - this.sunday = sunday; - } - - public Long getId() { - return id; - } - - public void setId(Long id) { - this.id = id; - } - - - public Boolean getMonday() { - return monday; - } - - public void setMonday(Boolean monday) { - this.monday = monday; - } - - - public Boolean getTuesday() { - return tuesday; - } - - public void setTuesday(Boolean tuesday) { - this.tuesday = tuesday; - } - - - public Boolean getWednesday() { - return wednesday; - } - - public void setWednesday(Boolean wednesday) { - this.wednesday = wednesday; - } - - - public Boolean getThursday() { - return thursday; - } - - public void setThursday(Boolean thursday) { - this.thursday = thursday; - } - - - public Boolean getFriday() { - return friday; - } - - public void setFriday(Boolean friday) { - this.friday = friday; - } - - - public Boolean getSaturday() { - return saturday; - } - - public void setSaturday(Boolean saturday) { - this.saturday = saturday; - } - - - public Boolean getSunday() { - return sunday; - } - - public void setSunday(Boolean sunday) { - this.sunday = sunday; - } - - public Address getAddress() { - return address; - } - - public void setAddress(Address address) { - this.address = address; - } -} diff --git a/spring-data-rest-querydsl/src/main/java/com/baeldung/entity/User.java b/spring-data-rest-querydsl/src/main/java/com/baeldung/entity/User.java index adc6da724a..cfd484bb7a 100644 --- a/spring-data-rest-querydsl/src/main/java/com/baeldung/entity/User.java +++ b/spring-data-rest-querydsl/src/main/java/com/baeldung/entity/User.java @@ -1,17 +1,22 @@ package com.baeldung.entity; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; -import com.fasterxml.jackson.annotation.JsonManagedReference; import javax.persistence.*; -import java.util.List; -@Entity @JsonIgnoreProperties({"hibernateLazyInitializer", "handler"}) public class User { +@Entity +@JsonIgnoreProperties({"hibernateLazyInitializer", "handler"}) +public class User { - @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "id", unique = true, nullable = false) private Long id; - @Column private String name; - @OneToMany(fetch = FetchType.LAZY, mappedBy = "user") @JsonManagedReference private List
addresses; + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + @Column(name = "id", unique = true, nullable = false) + private Long id; + @Column + private String name; + @OneToOne(fetch = FetchType.LAZY, mappedBy = "user") + private Address address; public User() { } @@ -36,11 +41,11 @@ import java.util.List; this.name = name; } - public List
getAddresses() { - return addresses; + public Address getAddress() { + return address; } - public void setAddresses(List
addresses) { - this.addresses = addresses; + public void setAddress(Address address) { + this.address = address; } } diff --git a/spring-data-rest-querydsl/src/test/java/com/baeldung/springdatarestquerydsl/QuerydslIntegrationTest.java b/spring-data-rest-querydsl/src/test/java/com/baeldung/springdatarestquerydsl/QuerydslIntegrationTest.java index ae972bcfcf..11e5ffca05 100644 --- a/spring-data-rest-querydsl/src/test/java/com/baeldung/springdatarestquerydsl/QuerydslIntegrationTest.java +++ b/spring-data-rest-querydsl/src/test/java/com/baeldung/springdatarestquerydsl/QuerydslIntegrationTest.java @@ -20,33 +20,46 @@ import static org.hamcrest.Matchers.is; import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get; import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.*; -@RunWith(SpringJUnit4ClassRunner.class) @SpringBootTest(classes = Application.class) @WebAppConfiguration +@RunWith(SpringJUnit4ClassRunner.class) +@SpringBootTest(classes = Application.class) +@WebAppConfiguration public class QuerydslIntegrationTest { final MediaType contentType = new MediaType(MediaType.APPLICATION_JSON.getType(), MediaType.APPLICATION_JSON.getSubtype(), Charset.forName("utf8")); - @Autowired private WebApplicationContext webApplicationContext; + @Autowired + private WebApplicationContext webApplicationContext; private MockMvc mockMvc; - @Before public void setupMockMvc() { + @Before + public void setupMockMvc() { mockMvc = MockMvcBuilders.webAppContextSetup(webApplicationContext).build(); } - @Test public void givenRequestHasBeenMade_whenQueryAddressFilteringByUserName_thenGetJohn() throws Exception { - mockMvc.perform(get("/addresses?user.name=John")).andExpect(status().isOk()).andExpect(content().contentType(contentType)) - .andExpect(jsonPath("$", hasSize(1))).andExpect(jsonPath("$[0].address", is("Fake Street 1"))) - .andExpect(jsonPath("$[0].country", is("Fake Country"))); + @Test + public void givenRequest_whenQueryUserFilteringByCountrySpain_thenGetJohn() throws Exception { + mockMvc.perform(get("/users?address.country=Spain")).andExpect(status().isOk()).andExpect(content() + .contentType + (contentType)) + .andExpect(jsonPath("$", hasSize(1))) + .andExpect(jsonPath("$[0].name", is("John"))) + .andExpect(jsonPath("$[0].address.address", is("Fake Street 1"))) + .andExpect(jsonPath("$[0].address.country", is("Spain"))); } - @Test public void givenRequestHasBeenMade_whenQueryOverAddressAvailabilityFilteringByAddressCountry_thenGetAvailability() - throws Exception { - mockMvc.perform(get("/addressAvailabilities?address.country=Real Country")).andExpect(status().isOk()) - .andExpect(content().contentType(contentType)).andExpect(jsonPath("$", hasSize(1))) - .andExpect(jsonPath("$[0].monday", is(false))).andExpect(jsonPath("$[0].tuesday", is(false))) - .andExpect(jsonPath("$[0].wednesday", is(false))).andExpect(jsonPath("$[0].thursday", is(false))) - .andExpect(jsonPath("$[0].friday", is(false))).andExpect(jsonPath("$[0].saturday", is(true))) - .andExpect(jsonPath("$[0].sunday", is(true))); + @Test + public void givenRequest_whenQueryUserWithoutFilter_thenGetJohnAndLisa() throws Exception { + mockMvc.perform(get("/users")).andExpect(status().isOk()).andExpect(content() + .contentType + (contentType)) + .andExpect(jsonPath("$", hasSize(2))) + .andExpect(jsonPath("$[0].name", is("John"))) + .andExpect(jsonPath("$[0].address.address", is("Fake Street 1"))) + .andExpect(jsonPath("$[0].address.country", is("Spain"))) + .andExpect(jsonPath("$[1].name", is("Lisa"))) + .andExpect(jsonPath("$[1].address.address", is("Real Street 1"))) + .andExpect(jsonPath("$[1].address.country", is("Germany"))); } } From 3e2d5441445a4e72c6941eaa0b36f5360cdd8803 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jorge=20Collado=20Garc=C3=ADa?= Date: Fri, 8 Jun 2018 20:18:21 +0200 Subject: [PATCH 55/55] [BAEL-1686] - Updating test considerations --- spring-data-rest-querydsl/pom.xml | 4 ++ .../src/main/resources/application.yml | 2 +- .../IntegrationTest.java | 52 +++++++++++++++++++ 3 files changed, 57 insertions(+), 1 deletion(-) create mode 100644 spring-data-rest-querydsl/src/test/java/com/baeldung/springdatarestquerydsl/IntegrationTest.java diff --git a/spring-data-rest-querydsl/pom.xml b/spring-data-rest-querydsl/pom.xml index 3b31e1835c..e4832e1552 100644 --- a/spring-data-rest-querydsl/pom.xml +++ b/spring-data-rest-querydsl/pom.xml @@ -94,4 +94,8 @@ +<<<<<<< HEAD +======= + +>>>>>>> 19a1633c35d6d49f9c51b8ecc3dbe127c91d75c3 diff --git a/spring-data-rest-querydsl/src/main/resources/application.yml b/spring-data-rest-querydsl/src/main/resources/application.yml index fe9dae345d..f25c6ea0e3 100644 --- a/spring-data-rest-querydsl/src/main/resources/application.yml +++ b/spring-data-rest-querydsl/src/main/resources/application.yml @@ -5,7 +5,7 @@ spring: pool-name: hikari-pool url: jdbc:mysql://localhost:3306/baeldung?verifyServerCertificate=false&useSSL=false&requireSSL=false username: root - password: admin + jpa: hibernate: ddl-auto: create diff --git a/spring-data-rest-querydsl/src/test/java/com/baeldung/springdatarestquerydsl/IntegrationTest.java b/spring-data-rest-querydsl/src/test/java/com/baeldung/springdatarestquerydsl/IntegrationTest.java new file mode 100644 index 0000000000..ef86c2f36d --- /dev/null +++ b/spring-data-rest-querydsl/src/test/java/com/baeldung/springdatarestquerydsl/IntegrationTest.java @@ -0,0 +1,52 @@ +package com.baeldung.springdatarestquerydsl; + +import com.baeldung.Application; +import org.junit.Before; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.http.MediaType; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; +import org.springframework.test.context.web.WebAppConfiguration; +import org.springframework.test.web.servlet.MockMvc; +import org.springframework.test.web.servlet.setup.MockMvcBuilders; +import org.springframework.web.context.WebApplicationContext; + +import java.nio.charset.Charset; + +import static org.hamcrest.Matchers.hasSize; +import static org.hamcrest.Matchers.is; +import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.*; + +@RunWith(SpringJUnit4ClassRunner.class) @SpringBootTest(classes = Application.class) @WebAppConfiguration +public class IntegrationTest { + + final MediaType contentType = + new MediaType(MediaType.APPLICATION_JSON.getType(), MediaType.APPLICATION_JSON.getSubtype(), Charset.forName("utf8")); + + @Autowired private WebApplicationContext webApplicationContext; + + private MockMvc mockMvc; + + @Before public void setupMockMvc() { + mockMvc = MockMvcBuilders.webAppContextSetup(webApplicationContext).build(); + } + + @Test public void givenRequestHasBeenMade_whenQueryOverNameAttribute_thenGetJohn() throws Exception { + // Get John + mockMvc.perform(get("/personQuery?name=John")).andExpect(status().isOk()).andExpect(content().contentType(contentType)) + .andExpect(jsonPath("$", hasSize(1))).andExpect(jsonPath("$[0].name", is("John"))) + .andExpect(jsonPath("$[0].address.address", is("Fake Street 1"))) + .andExpect(jsonPath("$[0].address.country", is("Fake Country"))); + } + + @Test public void givenRequestHasBeenMade_whenQueryOverNameAttribute_thenGetLisa() throws Exception { + // Get Lisa + mockMvc.perform(get("/personQuery?name=Lisa")).andExpect(status().isOk()).andExpect(content().contentType(contentType)) + .andExpect(jsonPath("$", hasSize(1))).andExpect(jsonPath("$[0].name", is("Lisa"))) + .andExpect(jsonPath("$[0].address.address", is("Real Street 1"))) + .andExpect(jsonPath("$[0].address.country", is("Real Country"))); + } +}