From 1ff8710842b9d48ae66de693a2a47a51c9dcb49f Mon Sep 17 00:00:00 2001 From: amit2103 Date: Sat, 16 Mar 2019 20:40:14 +0530 Subject: [PATCH 01/27] [BAEL-12731] - Fixed tests in spring-boot-security module --- .../WebSecurityConfigurer.java | 2 +- .../config/AuthenticationMananagerConfig.java | 18 ++++++++++++++++++ .../config/AuthorizationServerConfig.java | 4 ++-- .../SpringBootSecurityTagLibsConfig.java | 2 +- .../BasicAuthConfigurationIntegrationTest.java | 5 ++--- 5 files changed, 24 insertions(+), 7 deletions(-) create mode 100644 spring-boot-security/src/main/java/com/baeldung/springbootsecurity/oauth2server/config/AuthenticationMananagerConfig.java diff --git a/spring-boot-security/src/main/java/com/baeldung/integrationtesting/WebSecurityConfigurer.java b/spring-boot-security/src/main/java/com/baeldung/integrationtesting/WebSecurityConfigurer.java index 32a48ce612..16ce8e6fc6 100644 --- a/spring-boot-security/src/main/java/com/baeldung/integrationtesting/WebSecurityConfigurer.java +++ b/spring-boot-security/src/main/java/com/baeldung/integrationtesting/WebSecurityConfigurer.java @@ -12,7 +12,7 @@ public class WebSecurityConfigurer extends WebSecurityConfigurerAdapter { protected void configure(AuthenticationManagerBuilder auth) throws Exception { auth.inMemoryAuthentication() .withUser("spring") - .password("secret") + .password("{noop}secret") .roles("USER"); } diff --git a/spring-boot-security/src/main/java/com/baeldung/springbootsecurity/oauth2server/config/AuthenticationMananagerConfig.java b/spring-boot-security/src/main/java/com/baeldung/springbootsecurity/oauth2server/config/AuthenticationMananagerConfig.java new file mode 100644 index 0000000000..2b4135f36d --- /dev/null +++ b/spring-boot-security/src/main/java/com/baeldung/springbootsecurity/oauth2server/config/AuthenticationMananagerConfig.java @@ -0,0 +1,18 @@ +package com.baeldung.springbootsecurity.oauth2server.config; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Profile; +import org.springframework.security.authentication.AuthenticationManager; +import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; + +@Configuration +@Profile("authz") +public class AuthenticationMananagerConfig extends WebSecurityConfigurerAdapter { + + @Bean + @Override + public AuthenticationManager authenticationManagerBean() throws Exception { + return super.authenticationManagerBean(); + } +} \ No newline at end of file diff --git a/spring-boot-security/src/main/java/com/baeldung/springbootsecurity/oauth2server/config/AuthorizationServerConfig.java b/spring-boot-security/src/main/java/com/baeldung/springbootsecurity/oauth2server/config/AuthorizationServerConfig.java index b403feb5c1..4686100638 100644 --- a/spring-boot-security/src/main/java/com/baeldung/springbootsecurity/oauth2server/config/AuthorizationServerConfig.java +++ b/spring-boot-security/src/main/java/com/baeldung/springbootsecurity/oauth2server/config/AuthorizationServerConfig.java @@ -25,13 +25,13 @@ public class AuthorizationServerConfig extends AuthorizationServerConfigurerAdap clients .inMemory() .withClient("baeldung") - .secret("baeldung") + .secret("{noop}baeldung") .authorizedGrantTypes("client_credentials", "password", "authorization_code") .scopes("openid", "read") .autoApprove(true) .and() .withClient("baeldung-admin") - .secret("baeldung") + .secret("{noop}baeldung") .authorizedGrantTypes("authorization_code", "client_credentials", "refresh_token") .scopes("read", "write") .autoApprove(true); diff --git a/spring-boot-security/src/main/java/com/baeldung/springsecuritytaglibs/config/SpringBootSecurityTagLibsConfig.java b/spring-boot-security/src/main/java/com/baeldung/springsecuritytaglibs/config/SpringBootSecurityTagLibsConfig.java index 665dd0bce9..59ae2885ad 100644 --- a/spring-boot-security/src/main/java/com/baeldung/springsecuritytaglibs/config/SpringBootSecurityTagLibsConfig.java +++ b/spring-boot-security/src/main/java/com/baeldung/springsecuritytaglibs/config/SpringBootSecurityTagLibsConfig.java @@ -14,7 +14,7 @@ public class SpringBootSecurityTagLibsConfig extends WebSecurityConfigurerAdapte protected void configure(AuthenticationManagerBuilder auth) throws Exception { auth.inMemoryAuthentication() .withUser("testUser") - .password("password") + .password("{noop}password") .roles("ADMIN"); } diff --git a/spring-boot-security/src/test/java/com/baeldung/springbootsecurity/basic_auth/BasicAuthConfigurationIntegrationTest.java b/spring-boot-security/src/test/java/com/baeldung/springbootsecurity/basic_auth/BasicAuthConfigurationIntegrationTest.java index 94cf9f4148..4e676cf6ff 100644 --- a/spring-boot-security/src/test/java/com/baeldung/springbootsecurity/basic_auth/BasicAuthConfigurationIntegrationTest.java +++ b/spring-boot-security/src/test/java/com/baeldung/springbootsecurity/basic_auth/BasicAuthConfigurationIntegrationTest.java @@ -15,6 +15,7 @@ import java.net.MalformedURLException; import java.net.URL; import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; import static org.springframework.boot.test.context.SpringBootTest.WebEnvironment.RANDOM_PORT; @RunWith(SpringRunner.class) @@ -48,8 +49,6 @@ public class BasicAuthConfigurationIntegrationTest { ResponseEntity response = restTemplate.getForEntity(base.toString(), String.class); assertEquals(HttpStatus.UNAUTHORIZED, response.getStatusCode()); - assertTrue(response - .getBody() - .contains("Unauthorized")); + assertNull(response.getBody()); } } From 5ca4d0b527e934e6463f7a465ed5d9a32d13c9f6 Mon Sep 17 00:00:00 2001 From: amit2103 Date: Sun, 17 Mar 2019 00:53:27 +0530 Subject: [PATCH 02/27] [BAEL-12731] - Added BcryptPasswordEncoder support --- .../integrationtesting/WebSecurityConfigurer.java | 13 +++++++++++-- .../config/AuthorizationServerConfig.java | 11 +++++++++-- .../config/SpringBootSecurityTagLibsConfig.java | 11 ++++++++++- 3 files changed, 30 insertions(+), 5 deletions(-) diff --git a/spring-boot-security/src/main/java/com/baeldung/integrationtesting/WebSecurityConfigurer.java b/spring-boot-security/src/main/java/com/baeldung/integrationtesting/WebSecurityConfigurer.java index 16ce8e6fc6..1437440668 100644 --- a/spring-boot-security/src/main/java/com/baeldung/integrationtesting/WebSecurityConfigurer.java +++ b/spring-boot-security/src/main/java/com/baeldung/integrationtesting/WebSecurityConfigurer.java @@ -1,18 +1,24 @@ package com.baeldung.integrationtesting; +import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder; import org.springframework.security.config.annotation.web.builders.HttpSecurity; import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; +import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; @Configuration public class WebSecurityConfigurer extends WebSecurityConfigurerAdapter { @Override protected void configure(AuthenticationManagerBuilder auth) throws Exception { + + BCryptPasswordEncoder encoder = passwordEncoder(); + auth.inMemoryAuthentication() + .passwordEncoder(encoder) .withUser("spring") - .password("{noop}secret") + .password(encoder.encode("secret")) .roles("USER"); } @@ -27,5 +33,8 @@ public class WebSecurityConfigurer extends WebSecurityConfigurerAdapter { .httpBasic(); } - + @Bean + public BCryptPasswordEncoder passwordEncoder() { + return new BCryptPasswordEncoder(); + } } diff --git a/spring-boot-security/src/main/java/com/baeldung/springbootsecurity/oauth2server/config/AuthorizationServerConfig.java b/spring-boot-security/src/main/java/com/baeldung/springbootsecurity/oauth2server/config/AuthorizationServerConfig.java index 4686100638..6e21987a89 100644 --- a/spring-boot-security/src/main/java/com/baeldung/springbootsecurity/oauth2server/config/AuthorizationServerConfig.java +++ b/spring-boot-security/src/main/java/com/baeldung/springbootsecurity/oauth2server/config/AuthorizationServerConfig.java @@ -1,9 +1,11 @@ package com.baeldung.springbootsecurity.oauth2server.config; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Profile; import org.springframework.security.authentication.AuthenticationManager; +import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; import org.springframework.security.oauth2.config.annotation.configurers.ClientDetailsServiceConfigurer; import org.springframework.security.oauth2.config.annotation.web.configuration.AuthorizationServerConfigurerAdapter; import org.springframework.security.oauth2.config.annotation.web.configurers.AuthorizationServerEndpointsConfigurer; @@ -25,15 +27,20 @@ public class AuthorizationServerConfig extends AuthorizationServerConfigurerAdap clients .inMemory() .withClient("baeldung") - .secret("{noop}baeldung") + .secret(passwordEncoder().encode("baeldung")) .authorizedGrantTypes("client_credentials", "password", "authorization_code") .scopes("openid", "read") .autoApprove(true) .and() .withClient("baeldung-admin") - .secret("{noop}baeldung") + .secret(passwordEncoder().encode("baeldung")) .authorizedGrantTypes("authorization_code", "client_credentials", "refresh_token") .scopes("read", "write") .autoApprove(true); } + + @Bean + public BCryptPasswordEncoder passwordEncoder() { + return new BCryptPasswordEncoder(); + } } diff --git a/spring-boot-security/src/main/java/com/baeldung/springsecuritytaglibs/config/SpringBootSecurityTagLibsConfig.java b/spring-boot-security/src/main/java/com/baeldung/springsecuritytaglibs/config/SpringBootSecurityTagLibsConfig.java index 59ae2885ad..75bc613bd1 100644 --- a/spring-boot-security/src/main/java/com/baeldung/springsecuritytaglibs/config/SpringBootSecurityTagLibsConfig.java +++ b/spring-boot-security/src/main/java/com/baeldung/springsecuritytaglibs/config/SpringBootSecurityTagLibsConfig.java @@ -1,10 +1,12 @@ package com.baeldung.springsecuritytaglibs.config; +import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder; import org.springframework.security.config.annotation.web.builders.HttpSecurity; import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; +import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; @Configuration @EnableWebSecurity @@ -12,9 +14,11 @@ public class SpringBootSecurityTagLibsConfig extends WebSecurityConfigurerAdapte @Override protected void configure(AuthenticationManagerBuilder auth) throws Exception { + BCryptPasswordEncoder encoder = passwordEncoder(); auth.inMemoryAuthentication() + .passwordEncoder(encoder) .withUser("testUser") - .password("{noop}password") + .password(encoder.encode("password")) .roles("ADMIN"); } @@ -28,4 +32,9 @@ public class SpringBootSecurityTagLibsConfig extends WebSecurityConfigurerAdapte .anyRequest().permitAll().and().httpBasic(); // @formatter:on } + + @Bean + public BCryptPasswordEncoder passwordEncoder() { + return new BCryptPasswordEncoder(); + } } \ No newline at end of file From e4eec5133b02bc03e2b4cfd3d29a4e164d0528d6 Mon Sep 17 00:00:00 2001 From: ciro Date: Sat, 30 Mar 2019 22:09:38 -0700 Subject: [PATCH 03/27] first commit --- core-java-lang-oop-2/.gitignore | 26 ++++++++++++++++++ core-java-lang-oop-2/README.md | 5 ++++ core-java-lang-oop-2/pom.xml | 27 +++++++++++++++++++ .../supertypecompilerexception/MyClass.java | 16 +++++++++++ .../MyClassSolutionI.java | 15 +++++++++++ .../MyClassSolutionII.java | 19 +++++++++++++ .../MyClassSolutionIII.java | 15 +++++++++++ .../MyException.java | 14 ++++++++++ .../src/main/resources/logback.xml | 19 +++++++++++++ .../src/test/resources/.gitignore | 13 +++++++++ 10 files changed, 169 insertions(+) create mode 100644 core-java-lang-oop-2/.gitignore create mode 100644 core-java-lang-oop-2/README.md create mode 100644 core-java-lang-oop-2/pom.xml create mode 100644 core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/MyClass.java create mode 100644 core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/MyClassSolutionI.java create mode 100644 core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/MyClassSolutionII.java create mode 100644 core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/MyClassSolutionIII.java create mode 100644 core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/MyException.java create mode 100644 core-java-lang-oop-2/src/main/resources/logback.xml create mode 100644 core-java-lang-oop-2/src/test/resources/.gitignore diff --git a/core-java-lang-oop-2/.gitignore b/core-java-lang-oop-2/.gitignore new file mode 100644 index 0000000000..3de4cc647e --- /dev/null +++ b/core-java-lang-oop-2/.gitignore @@ -0,0 +1,26 @@ +*.class + +0.* + +#folders# +/target +/neoDb* +/data +/src/main/webapp/WEB-INF/classes +*/META-INF/* +.resourceCache + +# Packaged files # +*.jar +*.war +*.ear + +# Files generated by integration tests +*.txt +backup-pom.xml +/bin/ +/temp + +#IntelliJ specific +.idea/ +*.iml \ No newline at end of file diff --git a/core-java-lang-oop-2/README.md b/core-java-lang-oop-2/README.md new file mode 100644 index 0000000000..e309810ba2 --- /dev/null +++ b/core-java-lang-oop-2/README.md @@ -0,0 +1,5 @@ +========= + +## Core Java Lang OOP 2 Cookbooks and Examples + +### Relevant Articles: diff --git a/core-java-lang-oop-2/pom.xml b/core-java-lang-oop-2/pom.xml new file mode 100644 index 0000000000..3faf9fe6ee --- /dev/null +++ b/core-java-lang-oop-2/pom.xml @@ -0,0 +1,27 @@ + + 4.0.0 + com.baeldung + core-java-lang-oop-2 + 0.1.0-SNAPSHOT + core-java-lang-oop-2 + jar + + + com.baeldung + parent-java + 0.0.1-SNAPSHOT + ../parent-java + + + + core-java-lang-oop-2 + + + src/main/resources + true + + + + + diff --git a/core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/MyClass.java b/core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/MyClass.java new file mode 100644 index 0000000000..ccf8646f57 --- /dev/null +++ b/core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/MyClass.java @@ -0,0 +1,16 @@ +package com.baeldung.supertypecompilerexception; + +public class MyClass { + + private int myField1 = 10; + private int myField2; + + public MyClass() { + //uncomment this to see the supertype compiler error: + //this(myField1); + } + + public MyClass(int i) { + myField2 = i; + } +} \ No newline at end of file diff --git a/core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/MyClassSolutionI.java b/core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/MyClassSolutionI.java new file mode 100644 index 0000000000..36000e4bf4 --- /dev/null +++ b/core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/MyClassSolutionI.java @@ -0,0 +1,15 @@ +package com.baeldung.supertypecompilerexception; + +public class MyClassSolutionI { + + private int myField1 = 10; + private int myField2; + + public MyClassSolutionI() { + myField2 = myField1; + } + + public MyClassSolutionI(int i) { + myField2 = i; + } +} diff --git a/core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/MyClassSolutionII.java b/core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/MyClassSolutionII.java new file mode 100644 index 0000000000..f9bc9b26ae --- /dev/null +++ b/core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/MyClassSolutionII.java @@ -0,0 +1,19 @@ +package com.baeldung.supertypecompilerexception; + +public class MyClassSolutionII { + + private int myField1 = 10; + private int myField2; + + public MyClassSolutionII() { + setupMyFields(myField1); + } + + public MyClassSolutionII(int i) { + setupMyFields(i); + } + + private void setupMyFields(int i) { + myField2 = i; + } +} diff --git a/core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/MyClassSolutionIII.java b/core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/MyClassSolutionIII.java new file mode 100644 index 0000000000..f449aa904d --- /dev/null +++ b/core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/MyClassSolutionIII.java @@ -0,0 +1,15 @@ +package com.baeldung.supertypecompilerexception; + +public class MyClassSolutionIII { + + private static final int SOME_CONSTANT = 10; + private int myField2; + + public MyClassSolutionIII() { + this(SOME_CONSTANT); + } + + public MyClassSolutionIII(int i) { + myField2 = i; + } +} diff --git a/core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/MyException.java b/core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/MyException.java new file mode 100644 index 0000000000..db60deb83f --- /dev/null +++ b/core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/MyException.java @@ -0,0 +1,14 @@ +package com.baeldung.supertypecompilerexception; + +public class MyException extends RuntimeException { + private int errorCode = 0; + + public MyException(String message) { + //uncomment this to see the supertype compiler error: + //super(message + getErrorCode()); + } + + public int getErrorCode() { + return errorCode; + } +} diff --git a/core-java-lang-oop-2/src/main/resources/logback.xml b/core-java-lang-oop-2/src/main/resources/logback.xml new file mode 100644 index 0000000000..56af2d397e --- /dev/null +++ b/core-java-lang-oop-2/src/main/resources/logback.xml @@ -0,0 +1,19 @@ + + + + + %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n + + + + + + + + + + + + + + \ No newline at end of file diff --git a/core-java-lang-oop-2/src/test/resources/.gitignore b/core-java-lang-oop-2/src/test/resources/.gitignore new file mode 100644 index 0000000000..83c05e60c8 --- /dev/null +++ b/core-java-lang-oop-2/src/test/resources/.gitignore @@ -0,0 +1,13 @@ +*.class + +#folders# +/target +/neoDb* +/data +/src/main/webapp/WEB-INF/classes +*/META-INF/* + +# Packaged files # +*.jar +*.war +*.ear \ No newline at end of file From 27699842f6a4f37c113ef6dac17067c141efdbb0 Mon Sep 17 00:00:00 2001 From: amit2103 Date: Sun, 31 Mar 2019 23:07:34 +0530 Subject: [PATCH 04/27] [BAEL-13322] - Removed noexception module : Code already present in libraries module --- noexception/pom.xml | 27 -------- .../noexception/CustomExceptionHandler.java | 24 ------- noexception/src/main/resources/logback.xml | 13 ---- .../noexception/NoExceptionUnitTest.java | 63 ------------------- pom.xml | 2 - 5 files changed, 129 deletions(-) delete mode 100644 noexception/pom.xml delete mode 100644 noexception/src/main/java/com/baeldung/noexception/CustomExceptionHandler.java delete mode 100644 noexception/src/main/resources/logback.xml delete mode 100644 noexception/src/test/java/com/baeldung/noexception/NoExceptionUnitTest.java diff --git a/noexception/pom.xml b/noexception/pom.xml deleted file mode 100644 index f632f1e3a9..0000000000 --- a/noexception/pom.xml +++ /dev/null @@ -1,27 +0,0 @@ - - 4.0.0 - com.baeldung - noexception - 1.0 - noexception - - - com.baeldung - parent-modules - 1.0.0-SNAPSHOT - - - - - com.machinezoo.noexception - noexception - ${noexception.version} - - - - - 1.1.0 - - - diff --git a/noexception/src/main/java/com/baeldung/noexception/CustomExceptionHandler.java b/noexception/src/main/java/com/baeldung/noexception/CustomExceptionHandler.java deleted file mode 100644 index 59e13efaa0..0000000000 --- a/noexception/src/main/java/com/baeldung/noexception/CustomExceptionHandler.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.baeldung.noexception; - -import com.machinezoo.noexception.ExceptionHandler; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -public class CustomExceptionHandler extends ExceptionHandler { - - private Logger logger = LoggerFactory.getLogger(CustomExceptionHandler.class); - - @Override - public boolean handle(Throwable throwable) { - - if (throwable.getClass() - .isAssignableFrom(RuntimeException.class) - || throwable.getClass() - .isAssignableFrom(Error.class)) { - return false; - } else { - logger.error("Caught Exception ", throwable); - return true; - } - } -} diff --git a/noexception/src/main/resources/logback.xml b/noexception/src/main/resources/logback.xml deleted file mode 100644 index 7d900d8ea8..0000000000 --- a/noexception/src/main/resources/logback.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n - - - - - - - - \ No newline at end of file diff --git a/noexception/src/test/java/com/baeldung/noexception/NoExceptionUnitTest.java b/noexception/src/test/java/com/baeldung/noexception/NoExceptionUnitTest.java deleted file mode 100644 index 690ea43520..0000000000 --- a/noexception/src/test/java/com/baeldung/noexception/NoExceptionUnitTest.java +++ /dev/null @@ -1,63 +0,0 @@ -package com.baeldung.noexception; - -import com.machinezoo.noexception.Exceptions; -import org.junit.Test; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -public class NoExceptionUnitTest { - - private static Logger logger = LoggerFactory.getLogger(NoExceptionUnitTest.class); - - @Test - public void whenStdExceptionHandling_thenCatchAndLog() { - try { - System.out.println("Result is " + Integer.parseInt("foobar")); - } catch (Throwable exception) { - logger.error("Caught exception:", exception); - } - } - - @Test - public void whenDefaultNoException_thenCatchAndLog() { - - Exceptions.log().run(() -> System.out.println("Result is " + Integer.parseInt("foobar"))); - } - - @Test - public void givenLogger_whenDefaultNoException_thenCatchAndLogWithClassName() { - System.out.println("Result is " + Exceptions.log(logger).get(() -> +Integer.parseInt("foobar")).orElse(-1)); - } - - @Test - public void givenLoggerAndMessage_whenDefaultNoException_thenCatchAndLogWithClassNameAndMessage() { - System.out.println("Result is " + Exceptions.log(logger, "Something went wrong:").get(() -> +Integer.parseInt("foobar")).orElse(-1)); - } - - @Test - public void givenDefaultValue_whenDefaultNoException_thenCatchAndLogPrintDefault() { - System.out.println("Result is " + Exceptions.log(logger, "Something went wrong:").get(() -> +Integer.parseInt("foobar")).orElse(-1)); - } - - @Test(expected = Error.class) - public void givenCustomHandler_whenError_thenRethrowError() { - CustomExceptionHandler customExceptionHandler = new CustomExceptionHandler(); - customExceptionHandler.run(() -> throwError()); - } - - @Test - public void givenCustomHandler_whenException_thenCatchAndLog() { - CustomExceptionHandler customExceptionHandler = new CustomExceptionHandler(); - customExceptionHandler.run(() -> throwException()); - } - - private static void throwError() { - throw new Error("This is very bad."); - } - - private static void throwException() { - String testString = "foo"; - testString.charAt(5); - } - -} diff --git a/pom.xml b/pom.xml index eaaf90899f..a832d6156f 100644 --- a/pom.xml +++ b/pom.xml @@ -504,7 +504,6 @@ mustache mybatis - noexception optaplanner orika @@ -1149,7 +1148,6 @@ mustache mybatis - noexception optaplanner orika From 602d8b5a092c03a4c0dc3c4d3965b3c8517d5c6f Mon Sep 17 00:00:00 2001 From: Ekaterina Galkina Date: Mon, 1 Apr 2019 14:03:29 +0500 Subject: [PATCH 05/27] BAEL-2477 --- .../java/com/baeldung/customer/Customer.java | 37 +++++++++++ .../baeldung/customer/CustomerRepository.java | 18 +++++ .../CustomerRepositoryIntegrationTest.java | 66 +++++++++++++++++++ 3 files changed, 121 insertions(+) create mode 100644 persistence-modules/spring-data-jpa/src/main/java/com/baeldung/customer/Customer.java create mode 100644 persistence-modules/spring-data-jpa/src/main/java/com/baeldung/customer/CustomerRepository.java create mode 100644 persistence-modules/spring-data-jpa/src/test/java/com/baeldung/customer/CustomerRepositoryIntegrationTest.java diff --git a/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/customer/Customer.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/customer/Customer.java new file mode 100644 index 0000000000..ed922c3075 --- /dev/null +++ b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/customer/Customer.java @@ -0,0 +1,37 @@ +package com.baeldung.customer; + +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.Id; + +@Entity +public class Customer { + + @Id + @GeneratedValue + private long id; + private String name; + private String email; + + public Customer(String name, String email) { + this.name = name; + this.email = email; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getEmail() { + return email; + } + + public void setEmail(String email) { + this.email = email; + } + +} diff --git a/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/customer/CustomerRepository.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/customer/CustomerRepository.java new file mode 100644 index 0000000000..c354ccbb58 --- /dev/null +++ b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/customer/CustomerRepository.java @@ -0,0 +1,18 @@ +package com.baeldung.customer; + +import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.data.jpa.repository.Query; +import org.springframework.data.repository.query.Param; + +import java.util.List; + +public interface CustomerRepository extends JpaRepository { + + List findByName(String name); + + List findByNameAndEmail(String name, String email); + + @Query("SELECT c FROM Customer c WHERE (:name is null or c.name = :name) and (:email is null or c.email = :email)") + List findCustomerByNameAndEmail(@Param("name") String name, @Param("email") String email); + +} diff --git a/persistence-modules/spring-data-jpa/src/test/java/com/baeldung/customer/CustomerRepositoryIntegrationTest.java b/persistence-modules/spring-data-jpa/src/test/java/com/baeldung/customer/CustomerRepositoryIntegrationTest.java new file mode 100644 index 0000000000..c3bd821f52 --- /dev/null +++ b/persistence-modules/spring-data-jpa/src/test/java/com/baeldung/customer/CustomerRepositoryIntegrationTest.java @@ -0,0 +1,66 @@ +package com.baeldung.customer; + +import com.baeldung.config.PersistenceConfiguration; +import com.baeldung.config.PersistenceProductConfiguration; +import com.baeldung.config.PersistenceUserConfiguration; +import org.junit.After; +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.autoconfigure.orm.jpa.DataJpaTest; +import org.springframework.test.context.junit4.SpringRunner; + +import javax.persistence.EntityManager; +import javax.persistence.PersistenceContext; +import java.util.List; + +import static org.junit.Assert.assertEquals; + +@DataJpaTest(excludeAutoConfiguration = { PersistenceConfiguration.class, PersistenceUserConfiguration.class, PersistenceProductConfiguration.class }) +@RunWith(SpringRunner.class) +public class CustomerRepositoryIntegrationTest { + + @PersistenceContext + private EntityManager entityManager; + + @Autowired + private CustomerRepository repository; + + @Before + public void before() { + entityManager.persist(new Customer("A", "A@example.com")); + entityManager.persist(new Customer("D", null)); + entityManager.persist(new Customer("D", "D@example.com")); + } + + @Test + public void givenQueryMethod_whenEmailIsNull_thenFoundByNullEmail() { + List customers = repository.findByNameAndEmail("D", null); + + assertEquals(1, customers.size()); + Customer actual = customers.get(0); + + assertEquals(null, actual.getEmail()); + assertEquals("D", actual.getName()); + } + + @Test + public void givenQueryMethod_whenEmailIsAbsent_thenIgnoreEmail() { + List customers = repository.findByName("D"); + + assertEquals(2, customers.size()); + } + + @Test + public void givenQueryAnnotation_whenEmailIsNull_thenIgnoreEmail() { + List customers = repository.findCustomerByNameAndEmail("D", null); + + assertEquals(2, customers.size()); + } + + @After + public void cleanUp() { + repository.deleteAll(); + } +} \ No newline at end of file From 006a51892db8bf8ac12de3f3607a81ab586d0b12 Mon Sep 17 00:00:00 2001 From: eric-martin Date: Mon, 1 Apr 2019 22:35:07 -0500 Subject: [PATCH 06/27] BAEL-2829: Moving to spring-data-jpa-2 --- .../src/main/java/com/baeldung/entity}/Employee.java | 2 +- .../java/com/baeldung/repository}/EmployeeRepository.java | 4 ++-- .../repository}/EmployeeRepositoryIntegrationTest.java | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) rename persistence-modules/{spring-data-jpa/src/main/java/com/baeldung/domain => spring-data-jpa-2/src/main/java/com/baeldung/entity}/Employee.java (89%) rename persistence-modules/{spring-data-jpa/src/main/java/com/baeldung/dao/repositories => spring-data-jpa-2/src/main/java/com/baeldung/repository}/EmployeeRepository.java (62%) rename persistence-modules/{spring-data-jpa/src/test/java/com/baeldung/dao/repositories => spring-data-jpa-2/src/test/java/com/baeldung/repository}/EmployeeRepositoryIntegrationTest.java (94%) diff --git a/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/domain/Employee.java b/persistence-modules/spring-data-jpa-2/src/main/java/com/baeldung/entity/Employee.java similarity index 89% rename from persistence-modules/spring-data-jpa/src/main/java/com/baeldung/domain/Employee.java rename to persistence-modules/spring-data-jpa-2/src/main/java/com/baeldung/entity/Employee.java index f2363cf746..135439863f 100644 --- a/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/domain/Employee.java +++ b/persistence-modules/spring-data-jpa-2/src/main/java/com/baeldung/entity/Employee.java @@ -1,4 +1,4 @@ -package com.baeldung.domain; +package com.baeldung.entity; import javax.persistence.Entity; import javax.persistence.Id; diff --git a/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/EmployeeRepository.java b/persistence-modules/spring-data-jpa-2/src/main/java/com/baeldung/repository/EmployeeRepository.java similarity index 62% rename from persistence-modules/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/EmployeeRepository.java rename to persistence-modules/spring-data-jpa-2/src/main/java/com/baeldung/repository/EmployeeRepository.java index 6185185791..2c4fee80e0 100644 --- a/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/EmployeeRepository.java +++ b/persistence-modules/spring-data-jpa-2/src/main/java/com/baeldung/repository/EmployeeRepository.java @@ -1,8 +1,8 @@ -package com.baeldung.dao.repositories; +package com.baeldung.repository; import org.springframework.data.jpa.repository.JpaRepository; -import com.baeldung.domain.Employee; +import com.baeldung.entity.Employee; public interface EmployeeRepository extends JpaRepository { diff --git a/persistence-modules/spring-data-jpa/src/test/java/com/baeldung/dao/repositories/EmployeeRepositoryIntegrationTest.java b/persistence-modules/spring-data-jpa-2/src/test/java/com/baeldung/repository/EmployeeRepositoryIntegrationTest.java similarity index 94% rename from persistence-modules/spring-data-jpa/src/test/java/com/baeldung/dao/repositories/EmployeeRepositoryIntegrationTest.java rename to persistence-modules/spring-data-jpa-2/src/test/java/com/baeldung/repository/EmployeeRepositoryIntegrationTest.java index 13ceb702d2..ebeed276c9 100644 --- a/persistence-modules/spring-data-jpa/src/test/java/com/baeldung/dao/repositories/EmployeeRepositoryIntegrationTest.java +++ b/persistence-modules/spring-data-jpa-2/src/test/java/com/baeldung/repository/EmployeeRepositoryIntegrationTest.java @@ -1,4 +1,4 @@ -package com.baeldung.dao.repositories; +package com.baeldung.repository; import static org.assertj.core.api.AssertionsForClassTypes.assertThat; @@ -8,7 +8,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.autoconfigure.orm.jpa.DataJpaTest; import org.springframework.test.context.junit4.SpringRunner; -import com.baeldung.domain.Employee; +import com.baeldung.entity.Employee; @RunWith(SpringRunner.class) @DataJpaTest From 8a9cfe80e9451be54a70eb8cfe4e46ab9986fc79 Mon Sep 17 00:00:00 2001 From: Saurabh Kedia Date: Tue, 2 Apr 2019 10:37:26 +0530 Subject: [PATCH 07/27] BAEL-379 A Guide to jBPM with Java (#6619) * BAEL-379 A Guide to jBPM with Java * BAEL-379 * BAEL-379 A Guide to jBPM with Java * BAEL-379 A Guide to jBPM with Java * BAEL-379 A Guide to jBPM with Java * BAEL-379 A Guide to jBPM with Java --- libraries2/pom.xml | 43 ++++++++++++ .../baeldung/jbpm/WorkflowProcessMain.java | 19 ++++++ .../baeldung/jbpm/engine/WorkflowEngine.java | 10 +++ .../jbpm/engine/WorkflowEngineImpl.java | 66 +++++++++++++++++++ .../src/main/resources/META-INF/kmodule.xml | 3 + .../com/baeldung/process/helloworld.bpmn | 54 +++++++++++++++ .../jbpm/WorkflowEngineIntegrationTest.java | 52 +++++++++++++++ pom.xml | 1 + 8 files changed, 248 insertions(+) create mode 100644 libraries2/pom.xml create mode 100644 libraries2/src/main/java/com/baeldung/jbpm/WorkflowProcessMain.java create mode 100644 libraries2/src/main/java/com/baeldung/jbpm/engine/WorkflowEngine.java create mode 100644 libraries2/src/main/java/com/baeldung/jbpm/engine/WorkflowEngineImpl.java create mode 100644 libraries2/src/main/resources/META-INF/kmodule.xml create mode 100644 libraries2/src/main/resources/com/baeldung/process/helloworld.bpmn create mode 100644 libraries2/src/test/java/com/baeldung/jbpm/WorkflowEngineIntegrationTest.java diff --git a/libraries2/pom.xml b/libraries2/pom.xml new file mode 100644 index 0000000000..84f19b359d --- /dev/null +++ b/libraries2/pom.xml @@ -0,0 +1,43 @@ + + + + 4.0.0 + libraries2 + libraries2 + + + com.baeldung + parent-modules + 1.0.0-SNAPSHOT + + + + 6.0.0.Final + + + + + jboss-public-repository-group + JBoss Public Repository Group + http://repository.jboss.org/nexus/content/groups/public/ + + true + never + + + true + daily + + + + + + + org.jbpm + jbpm-test + ${jbpm.version} + + + diff --git a/libraries2/src/main/java/com/baeldung/jbpm/WorkflowProcessMain.java b/libraries2/src/main/java/com/baeldung/jbpm/WorkflowProcessMain.java new file mode 100644 index 0000000000..8e54ff892e --- /dev/null +++ b/libraries2/src/main/java/com/baeldung/jbpm/WorkflowProcessMain.java @@ -0,0 +1,19 @@ +package com.baeldung.jbpm; + +import org.kie.api.runtime.manager.Context; +import org.kie.internal.runtime.manager.context.EmptyContext; + +import com.baeldung.jbpm.engine.WorkflowEngine; +import com.baeldung.jbpm.engine.WorkflowEngineImpl; + +public class WorkflowProcessMain { + + public static void main(String[] args) { + WorkflowEngine workflowEngine = new WorkflowEngineImpl(); + String processId = "com.baeldung.bpmn.helloworld"; + String kbaseId = "kbase"; + String persistenceUnit = "org.jbpm.persistence.jpa"; + Context initialContext = EmptyContext.get(); + workflowEngine.runjBPMEngineForProcess(processId, initialContext, kbaseId, persistenceUnit); + } +} \ No newline at end of file diff --git a/libraries2/src/main/java/com/baeldung/jbpm/engine/WorkflowEngine.java b/libraries2/src/main/java/com/baeldung/jbpm/engine/WorkflowEngine.java new file mode 100644 index 0000000000..b47a4cc8c1 --- /dev/null +++ b/libraries2/src/main/java/com/baeldung/jbpm/engine/WorkflowEngine.java @@ -0,0 +1,10 @@ +package com.baeldung.jbpm.engine; + +import org.kie.api.runtime.manager.Context; +import org.kie.api.runtime.process.ProcessInstance; + +public interface WorkflowEngine { + + public ProcessInstance runjBPMEngineForProcess(String processId, Context initialContext, String kbaseId, String persistenceUnit); + +} diff --git a/libraries2/src/main/java/com/baeldung/jbpm/engine/WorkflowEngineImpl.java b/libraries2/src/main/java/com/baeldung/jbpm/engine/WorkflowEngineImpl.java new file mode 100644 index 0000000000..7871241bef --- /dev/null +++ b/libraries2/src/main/java/com/baeldung/jbpm/engine/WorkflowEngineImpl.java @@ -0,0 +1,66 @@ +package com.baeldung.jbpm.engine; + +import javax.persistence.EntityManagerFactory; +import javax.persistence.Persistence; + +import org.jbpm.test.JBPMHelper; +import org.kie.api.KieBase; +import org.kie.api.KieServices; +import org.kie.api.runtime.KieContainer; +import org.kie.api.runtime.KieSession; +import org.kie.api.runtime.manager.Context; +import org.kie.api.runtime.manager.RuntimeEngine; +import org.kie.api.runtime.manager.RuntimeEnvironment; +import org.kie.api.runtime.manager.RuntimeEnvironmentBuilder; +import org.kie.api.runtime.manager.RuntimeManager; +import org.kie.api.runtime.manager.RuntimeManagerFactory; +import org.kie.api.runtime.process.ProcessInstance; + +public class WorkflowEngineImpl implements WorkflowEngine { + + @Override + public ProcessInstance runjBPMEngineForProcess(String processId, Context initialContext, String kbaseId, String persistenceUnit) { + RuntimeManager manager = null; + RuntimeEngine engine = null; + ProcessInstance pInstance = null; + try { + KieBase kbase = getKieBase(kbaseId); + manager = createJBPMRuntimeManager(kbase, persistenceUnit); + engine = manager.getRuntimeEngine(initialContext); + pInstance = executeProcessInstance(processId, manager, initialContext, engine); + } catch (Exception ex) { + ex.printStackTrace(); + } finally { + if (manager != null && engine != null) + manager.disposeRuntimeEngine(engine); + System.exit(0); + } + return pInstance; + } + + private ProcessInstance executeProcessInstance(String processId, RuntimeManager manager, Context initialContext, RuntimeEngine engine) { + KieSession ksession = engine.getKieSession(); + ProcessInstance pInstance = ksession.startProcess(processId); + return pInstance; + } + + private KieBase getKieBase(String kbaseId) { + KieServices ks = KieServices.Factory.get(); + KieContainer kContainer = ks.getKieClasspathContainer(); + KieBase kbase = kContainer.getKieBase(kbaseId); + return kbase; + } + + private RuntimeManager createJBPMRuntimeManager(KieBase kbase, String persistenceUnit) { + JBPMHelper.startH2Server(); + JBPMHelper.setupDataSource(); + EntityManagerFactory emf = Persistence.createEntityManagerFactory(persistenceUnit); + RuntimeEnvironmentBuilder runtimeEnvironmentBuilder = RuntimeEnvironmentBuilder.Factory.get() + .newDefaultBuilder(); + RuntimeEnvironment runtimeEnvironment = runtimeEnvironmentBuilder.entityManagerFactory(emf) + .knowledgeBase(kbase) + .get(); + return RuntimeManagerFactory.Factory.get() + .newSingletonRuntimeManager(runtimeEnvironment); + } +} diff --git a/libraries2/src/main/resources/META-INF/kmodule.xml b/libraries2/src/main/resources/META-INF/kmodule.xml new file mode 100644 index 0000000000..1b9ce1ce71 --- /dev/null +++ b/libraries2/src/main/resources/META-INF/kmodule.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/libraries2/src/main/resources/com/baeldung/process/helloworld.bpmn b/libraries2/src/main/resources/com/baeldung/process/helloworld.bpmn new file mode 100644 index 0000000000..30813b2057 --- /dev/null +++ b/libraries2/src/main/resources/com/baeldung/process/helloworld.bpmn @@ -0,0 +1,54 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/libraries2/src/test/java/com/baeldung/jbpm/WorkflowEngineIntegrationTest.java b/libraries2/src/test/java/com/baeldung/jbpm/WorkflowEngineIntegrationTest.java new file mode 100644 index 0000000000..ded46d7639 --- /dev/null +++ b/libraries2/src/test/java/com/baeldung/jbpm/WorkflowEngineIntegrationTest.java @@ -0,0 +1,52 @@ +package com.baeldung.jbpm; + +import org.jbpm.test.JbpmJUnitBaseTestCase; +import org.junit.After; +import org.junit.Before; +import org.junit.Test; +import org.kie.api.runtime.KieSession; +import org.kie.api.runtime.manager.RuntimeEngine; +import org.kie.api.runtime.manager.RuntimeManager; +import org.kie.api.runtime.process.ProcessInstance; +import org.kie.internal.runtime.manager.context.ProcessInstanceIdContext; + +public class WorkflowEngineIntegrationTest extends JbpmJUnitBaseTestCase { + + private String[] triggeredNodesArray = { "Start", "HelloWorld", "End" }; + private RuntimeManager manager = null; + private RuntimeEngine runtimeEngine = null; + private KieSession ksession = null; + private ProcessInstance processInstance = null; + + @Before + public void setup() { + manager = createRuntimeManager(Strategy.SINGLETON, "manager", "com/baeldung/process/helloworld.bpmn"); + runtimeEngine = getRuntimeEngine(ProcessInstanceIdContext.get()); + ksession = runtimeEngine.getKieSession(); + processInstance = ksession.startProcess("com.baeldung.bpmn.helloworld"); + } + + @After + public void cleanup() { + manager.disposeRuntimeEngine(runtimeEngine); + } + + @Test + public void givenProcessInstance_whenExecutionCompleted_thenVerifyNodesExecutionOrder() { + assertNodeTriggered(processInstance.getId(), triggeredNodesArray); + } + + @Test + public void givenProcessInstance_whenExecutionCompleted_thenVerifyKnowledgeSessionId() { + int ksessionID = ksession.getId(); + runtimeEngine = getRuntimeEngine(ProcessInstanceIdContext.get(processInstance.getId())); + ksession = runtimeEngine.getKieSession(); + assertEquals(ksessionID, ksession.getId()); + } + + @Test + public void givenProcessInstance_whenExecutionCompleted_thenVerifyProcessInstanceStatus() { + assertProcessInstanceCompleted(processInstance.getId(), ksession); + assertTrue("ProcessInstance completed with status 2", processInstance.getState() == 2); + } +} diff --git a/pom.xml b/pom.xml index a832d6156f..e785f1461f 100644 --- a/pom.xml +++ b/pom.xml @@ -480,6 +480,7 @@ libraries + libraries2 libraries-data libraries-apache-commons libraries-security From 61a7cf432bf3d5140b7b66d80275f3c6989dfa6d Mon Sep 17 00:00:00 2001 From: Priyesh Mashelkar Date: Sat, 30 Mar 2019 01:10:16 +0000 Subject: [PATCH 08/27] BAEL-1959 Classpath contains multiple bindings Updated pom.xml to exclude log4j binding --- libraries/pom.xml | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/libraries/pom.xml b/libraries/pom.xml index fb1f1cd1b6..eda67e5d7e 100644 --- a/libraries/pom.xml +++ b/libraries/pom.xml @@ -505,6 +505,16 @@ org.docx4j docx4j ${docx4j.version} + + + org.slf4j + slf4j-log4j12 + + + log4j + log4j + + javax.xml.bind From b42febfd83c6797c9ee71847b61053b9818b31db Mon Sep 17 00:00:00 2001 From: Ger Roza Date: Mon, 1 Apr 2019 11:33:22 -0300 Subject: [PATCH 09/27] Fixed or added Context Integration Tests for modules named in ticket --- .../ApplicationPropertiesConfigurations.java | 9 +++++++-- .../SpringContextIntegrationTest.java | 4 +--- .../aws/SpringContextIntegrationTest.java | 15 +++++++++++++++ ...ionTest.java => SpringContextLiveTest.java} | 12 ++++++++---- spring-cloud/spring-cloud-eureka/pom.xml | 9 +++++++++ .../spring-cloud-eureka-client/pom.xml | 6 ------ .../client/SpringContextIntegrationTest.java | 16 ++++++++++++++++ .../client}/SpringContextIntegrationTest.java | 7 +++---- .../server/SpringContextIntegrationTest.java | 16 ++++++++++++++++ .../consumer/SpringContextIntegrationTest.java | 18 ++++++++++++++++++ .../spring-cloud-hystrix/rest-consumer/pom.xml | 12 ++++++++++++ .../SpringContextIntegrationTest.java | 12 ++++++------ .../spring-cloud-hystrix/rest-producer/pom.xml | 12 ++++++++++++ .../producer/SpringContextIntegrationTest.java | 16 ++++++++++++++++ .../eureka-client/pom.xml | 7 +++++++ .../client/SpringContextIntegrationTest.java | 16 ++++++++++++++++ .../eureka-server/pom.xml | 8 +++++++- .../server/SpringContextIntegrationTest.java | 16 ++++++++++++++++ .../zuul-server/pom.xml | 7 +++++++ .../config/SpringContextIntegrationTest.java | 16 ++++++++++++++++ 20 files changed, 208 insertions(+), 26 deletions(-) rename spring-cloud/spring-cloud-archaius/additional-sources-simple/src/test/java/{org/baeldung => com/baeldung/spring/cloud/archaius/additionalsources}/SpringContextIntegrationTest.java (77%) create mode 100644 spring-cloud/spring-cloud-aws/src/test/java/com/baeldung/spring/cloud/aws/SpringContextIntegrationTest.java rename spring-cloud/spring-cloud-config/server/src/test/java/com/baeldung/spring/cloud/config/server/{ConfigServerListIntegrationTest.java => SpringContextLiveTest.java} (68%) create mode 100644 spring-cloud/spring-cloud-eureka/spring-cloud-eureka-client/src/test/java/com/baeldung/spring/cloud/eureka/client/SpringContextIntegrationTest.java rename spring-cloud/{spring-cloud-aws/src/test/java/org/baeldung => spring-cloud-eureka/spring-cloud-eureka-feign-client/src/test/java/com/baeldung/spring/cloud/feign/client}/SpringContextIntegrationTest.java (69%) create mode 100644 spring-cloud/spring-cloud-eureka/spring-cloud-eureka-server/src/test/java/com/baeldung/spring/cloud/eureka/server/SpringContextIntegrationTest.java create mode 100644 spring-cloud/spring-cloud-hystrix/feign-rest-consumer/src/test/java/com/baeldung/spring/cloud/hystrix/rest/consumer/SpringContextIntegrationTest.java rename spring-cloud/{spring-cloud-config/server/src/test/java/org/baeldung => spring-cloud-hystrix/rest-consumer/src/test/java/com/baeldung/spring/cloud/hystrix/rest/consumer}/SpringContextIntegrationTest.java (55%) create mode 100644 spring-cloud/spring-cloud-hystrix/rest-producer/src/test/java/com/baeldung/spring/cloud/hystrix/rest/producer/SpringContextIntegrationTest.java create mode 100644 spring-cloud/spring-cloud-zuul-eureka-integration/eureka-client/src/test/java/com/baeldung/spring/cloud/eureka/client/SpringContextIntegrationTest.java create mode 100644 spring-cloud/spring-cloud-zuul-eureka-integration/eureka-server/src/test/java/com/baeldung/spring/cloud/eureka/server/SpringContextIntegrationTest.java create mode 100644 spring-cloud/spring-cloud-zuul-eureka-integration/zuul-server/src/test/java/com/baeldung/spring/cloud/zuul/config/SpringContextIntegrationTest.java diff --git a/spring-cloud/spring-cloud-archaius/additional-sources-simple/src/main/java/com/baeldung/spring/cloud/archaius/additionalsources/config/ApplicationPropertiesConfigurations.java b/spring-cloud/spring-cloud-archaius/additional-sources-simple/src/main/java/com/baeldung/spring/cloud/archaius/additionalsources/config/ApplicationPropertiesConfigurations.java index f2d8ca2638..04d49d967f 100644 --- a/spring-cloud/spring-cloud-archaius/additional-sources-simple/src/main/java/com/baeldung/spring/cloud/archaius/additionalsources/config/ApplicationPropertiesConfigurations.java +++ b/spring-cloud/spring-cloud-archaius/additional-sources-simple/src/main/java/com/baeldung/spring/cloud/archaius/additionalsources/config/ApplicationPropertiesConfigurations.java @@ -1,8 +1,12 @@ package com.baeldung.spring.cloud.archaius.additionalsources.config; +import java.io.IOException; +import java.net.URL; + import org.apache.commons.configuration.AbstractConfiguration; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; +import org.springframework.core.io.ClassPathResource; import com.netflix.config.DynamicConfiguration; import com.netflix.config.FixedDelayPollingScheduler; @@ -13,8 +17,9 @@ import com.netflix.config.sources.URLConfigurationSource; public class ApplicationPropertiesConfigurations { @Bean - public AbstractConfiguration addApplicationPropertiesSource() { - PolledConfigurationSource source = new URLConfigurationSource("classpath:other-config.properties"); + public AbstractConfiguration addApplicationPropertiesSource() throws IOException { + URL configPropertyURL = (new ClassPathResource("other-config.properties")).getURL(); + PolledConfigurationSource source = new URLConfigurationSource(configPropertyURL); return new DynamicConfiguration(source, new FixedDelayPollingScheduler()); } diff --git a/spring-cloud/spring-cloud-archaius/additional-sources-simple/src/test/java/org/baeldung/SpringContextIntegrationTest.java b/spring-cloud/spring-cloud-archaius/additional-sources-simple/src/test/java/com/baeldung/spring/cloud/archaius/additionalsources/SpringContextIntegrationTest.java similarity index 77% rename from spring-cloud/spring-cloud-archaius/additional-sources-simple/src/test/java/org/baeldung/SpringContextIntegrationTest.java rename to spring-cloud/spring-cloud-archaius/additional-sources-simple/src/test/java/com/baeldung/spring/cloud/archaius/additionalsources/SpringContextIntegrationTest.java index e5ebbce1aa..4811ebaa13 100644 --- a/spring-cloud/spring-cloud-archaius/additional-sources-simple/src/test/java/org/baeldung/SpringContextIntegrationTest.java +++ b/spring-cloud/spring-cloud-archaius/additional-sources-simple/src/test/java/com/baeldung/spring/cloud/archaius/additionalsources/SpringContextIntegrationTest.java @@ -1,12 +1,10 @@ -package org.baeldung; +package com.baeldung.spring.cloud.archaius.additionalsources; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringRunner; -import com.baeldung.spring.cloud.archaius.additionalsources.AdditionalSourcesSimpleApplication; - @RunWith(SpringRunner.class) @SpringBootTest(classes = AdditionalSourcesSimpleApplication.class) public class SpringContextIntegrationTest { diff --git a/spring-cloud/spring-cloud-aws/src/test/java/com/baeldung/spring/cloud/aws/SpringContextIntegrationTest.java b/spring-cloud/spring-cloud-aws/src/test/java/com/baeldung/spring/cloud/aws/SpringContextIntegrationTest.java new file mode 100644 index 0000000000..e0026ce441 --- /dev/null +++ b/spring-cloud/spring-cloud-aws/src/test/java/com/baeldung/spring/cloud/aws/SpringContextIntegrationTest.java @@ -0,0 +1,15 @@ +package com.baeldung.spring.cloud.aws; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.junit4.SpringRunner; + +@RunWith(SpringRunner.class) +@SpringBootTest(classes = SpringCloudAwsApplication.class) +public class SpringContextIntegrationTest { + + @Test + public void whenSpringContextIsBootstrapped_thenNoExceptions() { + } +} diff --git a/spring-cloud/spring-cloud-config/server/src/test/java/com/baeldung/spring/cloud/config/server/ConfigServerListIntegrationTest.java b/spring-cloud/spring-cloud-config/server/src/test/java/com/baeldung/spring/cloud/config/server/SpringContextLiveTest.java similarity index 68% rename from spring-cloud/spring-cloud-config/server/src/test/java/com/baeldung/spring/cloud/config/server/ConfigServerListIntegrationTest.java rename to spring-cloud/spring-cloud-config/server/src/test/java/com/baeldung/spring/cloud/config/server/SpringContextLiveTest.java index c521a0d2ef..793b4abb6c 100644 --- a/spring-cloud/spring-cloud-config/server/src/test/java/com/baeldung/spring/cloud/config/server/ConfigServerListIntegrationTest.java +++ b/spring-cloud/spring-cloud-config/server/src/test/java/com/baeldung/spring/cloud/config/server/SpringContextLiveTest.java @@ -1,18 +1,22 @@ package com.baeldung.spring.cloud.config.server; -import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; import org.springframework.test.context.web.WebAppConfiguration; + +/** + * + * The context will load successfully with some properties provided by docker + * + */ @RunWith(SpringJUnit4ClassRunner.class) @SpringBootTest(classes = ConfigServer.class) @WebAppConfiguration -@Ignore -public class ConfigServerListIntegrationTest { +public class SpringContextLiveTest { @Test - public void contextLoads() { + public void whenSpringContextIsBootstrapped_thenNoExceptions() { } } diff --git a/spring-cloud/spring-cloud-eureka/pom.xml b/spring-cloud/spring-cloud-eureka/pom.xml index b59b415ee2..924981765c 100644 --- a/spring-cloud/spring-cloud-eureka/pom.xml +++ b/spring-cloud/spring-cloud-eureka/pom.xml @@ -21,6 +21,15 @@ 1.0.0-SNAPSHOT .. + + + + org.springframework.boot + spring-boot-starter-test + ${spring-boot.version} + test + + 2.0.1.RELEASE diff --git a/spring-cloud/spring-cloud-eureka/spring-cloud-eureka-client/pom.xml b/spring-cloud/spring-cloud-eureka/spring-cloud-eureka-client/pom.xml index c2d64ce237..85fa6606d2 100644 --- a/spring-cloud/spring-cloud-eureka/spring-cloud-eureka-client/pom.xml +++ b/spring-cloud/spring-cloud-eureka/spring-cloud-eureka-client/pom.xml @@ -26,12 +26,6 @@ spring-boot-starter-web ${spring-boot.version} - - org.springframework.boot - spring-boot-starter-test - ${spring-boot.version} - test - diff --git a/spring-cloud/spring-cloud-eureka/spring-cloud-eureka-client/src/test/java/com/baeldung/spring/cloud/eureka/client/SpringContextIntegrationTest.java b/spring-cloud/spring-cloud-eureka/spring-cloud-eureka-client/src/test/java/com/baeldung/spring/cloud/eureka/client/SpringContextIntegrationTest.java new file mode 100644 index 0000000000..8e379fd5a0 --- /dev/null +++ b/spring-cloud/spring-cloud-eureka/spring-cloud-eureka-client/src/test/java/com/baeldung/spring/cloud/eureka/client/SpringContextIntegrationTest.java @@ -0,0 +1,16 @@ +package com.baeldung.spring.cloud.eureka.client; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.junit4.SpringRunner; + +@RunWith(SpringRunner.class) +@SpringBootTest +public class SpringContextIntegrationTest { + + @Test + public void whenSpringContextIsBootstrapped_thenNoExceptions() { + } + +} diff --git a/spring-cloud/spring-cloud-aws/src/test/java/org/baeldung/SpringContextIntegrationTest.java b/spring-cloud/spring-cloud-eureka/spring-cloud-eureka-feign-client/src/test/java/com/baeldung/spring/cloud/feign/client/SpringContextIntegrationTest.java similarity index 69% rename from spring-cloud/spring-cloud-aws/src/test/java/org/baeldung/SpringContextIntegrationTest.java rename to spring-cloud/spring-cloud-eureka/spring-cloud-eureka-feign-client/src/test/java/com/baeldung/spring/cloud/feign/client/SpringContextIntegrationTest.java index fcba9c4132..ff742735b3 100644 --- a/spring-cloud/spring-cloud-aws/src/test/java/org/baeldung/SpringContextIntegrationTest.java +++ b/spring-cloud/spring-cloud-eureka/spring-cloud-eureka-feign-client/src/test/java/com/baeldung/spring/cloud/feign/client/SpringContextIntegrationTest.java @@ -1,17 +1,16 @@ -package org.baeldung; +package com.baeldung.spring.cloud.feign.client; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringRunner; -import com.baeldung.spring.cloud.aws.InstanceProfileAwsApplication; - @RunWith(SpringRunner.class) -@SpringBootTest(classes = InstanceProfileAwsApplication.class) +@SpringBootTest public class SpringContextIntegrationTest { @Test public void whenSpringContextIsBootstrapped_thenNoExceptions() { } + } diff --git a/spring-cloud/spring-cloud-eureka/spring-cloud-eureka-server/src/test/java/com/baeldung/spring/cloud/eureka/server/SpringContextIntegrationTest.java b/spring-cloud/spring-cloud-eureka/spring-cloud-eureka-server/src/test/java/com/baeldung/spring/cloud/eureka/server/SpringContextIntegrationTest.java new file mode 100644 index 0000000000..f03913b474 --- /dev/null +++ b/spring-cloud/spring-cloud-eureka/spring-cloud-eureka-server/src/test/java/com/baeldung/spring/cloud/eureka/server/SpringContextIntegrationTest.java @@ -0,0 +1,16 @@ +package com.baeldung.spring.cloud.eureka.server; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.junit4.SpringRunner; + +@RunWith(SpringRunner.class) +@SpringBootTest +public class SpringContextIntegrationTest { + + @Test + public void whenSpringContextIsBootstrapped_thenNoExceptions() { + } + +} diff --git a/spring-cloud/spring-cloud-hystrix/feign-rest-consumer/src/test/java/com/baeldung/spring/cloud/hystrix/rest/consumer/SpringContextIntegrationTest.java b/spring-cloud/spring-cloud-hystrix/feign-rest-consumer/src/test/java/com/baeldung/spring/cloud/hystrix/rest/consumer/SpringContextIntegrationTest.java new file mode 100644 index 0000000000..47ee5dcd49 --- /dev/null +++ b/spring-cloud/spring-cloud-hystrix/feign-rest-consumer/src/test/java/com/baeldung/spring/cloud/hystrix/rest/consumer/SpringContextIntegrationTest.java @@ -0,0 +1,18 @@ +package com.baeldung.spring.cloud.hystrix.rest.consumer; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.test.context.ContextConfiguration; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; +import org.springframework.test.context.web.WebAppConfiguration; + +@RunWith(SpringJUnit4ClassRunner.class) +@ContextConfiguration(classes = RestConsumerFeignApplication.class) +@WebAppConfiguration +public class SpringContextIntegrationTest { + + @Test + public void whenSpringContextIsBootstrapped_thenNoExceptions() { + } + +} diff --git a/spring-cloud/spring-cloud-hystrix/rest-consumer/pom.xml b/spring-cloud/spring-cloud-hystrix/rest-consumer/pom.xml index ec2f6d1e55..43ccfcc26d 100644 --- a/spring-cloud/spring-cloud-hystrix/rest-consumer/pom.xml +++ b/spring-cloud/spring-cloud-hystrix/rest-consumer/pom.xml @@ -40,6 +40,13 @@ spring-boot-starter-actuator ${spring-boot-starter-web.version} + + + org.springframework.boot + spring-boot-starter-test + test + ${spring-boot-starter-web.version} + @@ -53,5 +60,10 @@ + + + + 1.10.19 + diff --git a/spring-cloud/spring-cloud-config/server/src/test/java/org/baeldung/SpringContextIntegrationTest.java b/spring-cloud/spring-cloud-hystrix/rest-consumer/src/test/java/com/baeldung/spring/cloud/hystrix/rest/consumer/SpringContextIntegrationTest.java similarity index 55% rename from spring-cloud/spring-cloud-config/server/src/test/java/org/baeldung/SpringContextIntegrationTest.java rename to spring-cloud/spring-cloud-hystrix/rest-consumer/src/test/java/com/baeldung/spring/cloud/hystrix/rest/consumer/SpringContextIntegrationTest.java index cd30392d4f..3af30acc51 100644 --- a/spring-cloud/spring-cloud-config/server/src/test/java/org/baeldung/SpringContextIntegrationTest.java +++ b/spring-cloud/spring-cloud-hystrix/rest-consumer/src/test/java/com/baeldung/spring/cloud/hystrix/rest/consumer/SpringContextIntegrationTest.java @@ -1,18 +1,18 @@ -package org.baeldung; +package com.baeldung.spring.cloud.hystrix.rest.consumer; import org.junit.Test; import org.junit.runner.RunWith; -import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; import org.springframework.test.context.web.WebAppConfiguration; -import com.baeldung.spring.cloud.config.server.ConfigServer; - @RunWith(SpringJUnit4ClassRunner.class) -@SpringBootTest(classes = ConfigServer.class) +@ContextConfiguration(classes = RestConsumerApplication.class) @WebAppConfiguration public class SpringContextIntegrationTest { + @Test - public void contextLoads() { + public void whenSpringContextIsBootstrapped_thenNoExceptions() { } + } diff --git a/spring-cloud/spring-cloud-hystrix/rest-producer/pom.xml b/spring-cloud/spring-cloud-hystrix/rest-producer/pom.xml index 0f84fb7e23..07437634f5 100644 --- a/spring-cloud/spring-cloud-hystrix/rest-producer/pom.xml +++ b/spring-cloud/spring-cloud-hystrix/rest-producer/pom.xml @@ -20,6 +20,18 @@ spring-boot-starter-web ${spring-boot-starter-web.version} + + + org.springframework.boot + spring-boot-starter-test + ${spring-boot-starter-web.version} + test + + + + + 1.10.19 + diff --git a/spring-cloud/spring-cloud-hystrix/rest-producer/src/test/java/com/baeldung/spring/cloud/hystrix/rest/producer/SpringContextIntegrationTest.java b/spring-cloud/spring-cloud-hystrix/rest-producer/src/test/java/com/baeldung/spring/cloud/hystrix/rest/producer/SpringContextIntegrationTest.java new file mode 100644 index 0000000000..de696dc2b1 --- /dev/null +++ b/spring-cloud/spring-cloud-hystrix/rest-producer/src/test/java/com/baeldung/spring/cloud/hystrix/rest/producer/SpringContextIntegrationTest.java @@ -0,0 +1,16 @@ +package com.baeldung.spring.cloud.hystrix.rest.producer; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.junit4.SpringRunner; + +@RunWith(SpringRunner.class) +@SpringBootTest +public class SpringContextIntegrationTest { + + @Test + public void whenSpringContextIsBootstrapped_thenNoExceptions() { + } + +} diff --git a/spring-cloud/spring-cloud-zuul-eureka-integration/eureka-client/pom.xml b/spring-cloud/spring-cloud-zuul-eureka-integration/eureka-client/pom.xml index 0b479ec226..af7df71d17 100644 --- a/spring-cloud/spring-cloud-zuul-eureka-integration/eureka-client/pom.xml +++ b/spring-cloud/spring-cloud-zuul-eureka-integration/eureka-client/pom.xml @@ -25,6 +25,13 @@ spring-boot-starter-web ${spring-boot-starter-web.version} + + + org.springframework.boot + spring-boot-starter-test + ${spring-boot-starter-web.version} + test + diff --git a/spring-cloud/spring-cloud-zuul-eureka-integration/eureka-client/src/test/java/com/baeldung/spring/cloud/eureka/client/SpringContextIntegrationTest.java b/spring-cloud/spring-cloud-zuul-eureka-integration/eureka-client/src/test/java/com/baeldung/spring/cloud/eureka/client/SpringContextIntegrationTest.java new file mode 100644 index 0000000000..9eaff8f510 --- /dev/null +++ b/spring-cloud/spring-cloud-zuul-eureka-integration/eureka-client/src/test/java/com/baeldung/spring/cloud/eureka/client/SpringContextIntegrationTest.java @@ -0,0 +1,16 @@ +package com.baeldung.spring.cloud.eureka.client; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.junit4.SpringRunner; + +@RunWith(SpringRunner.class) +@SpringBootTest +public class SpringContextIntegrationTest { + + @Test + public void whenSpringContextIsBootstrapped_thenNoExceptions() { + } + +} diff --git a/spring-cloud/spring-cloud-zuul-eureka-integration/eureka-server/pom.xml b/spring-cloud/spring-cloud-zuul-eureka-integration/eureka-server/pom.xml index eea22779a6..d1f618507f 100644 --- a/spring-cloud/spring-cloud-zuul-eureka-integration/eureka-server/pom.xml +++ b/spring-cloud/spring-cloud-zuul-eureka-integration/eureka-server/pom.xml @@ -25,7 +25,13 @@ commons-configuration ${commons-config.version} - + + + org.springframework.boot + spring-boot-starter-test + ${spring-boot-starter-web.version} + test + diff --git a/spring-cloud/spring-cloud-zuul-eureka-integration/eureka-server/src/test/java/com/baeldung/spring/cloud/eureka/server/SpringContextIntegrationTest.java b/spring-cloud/spring-cloud-zuul-eureka-integration/eureka-server/src/test/java/com/baeldung/spring/cloud/eureka/server/SpringContextIntegrationTest.java new file mode 100644 index 0000000000..f03913b474 --- /dev/null +++ b/spring-cloud/spring-cloud-zuul-eureka-integration/eureka-server/src/test/java/com/baeldung/spring/cloud/eureka/server/SpringContextIntegrationTest.java @@ -0,0 +1,16 @@ +package com.baeldung.spring.cloud.eureka.server; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.junit4.SpringRunner; + +@RunWith(SpringRunner.class) +@SpringBootTest +public class SpringContextIntegrationTest { + + @Test + public void whenSpringContextIsBootstrapped_thenNoExceptions() { + } + +} diff --git a/spring-cloud/spring-cloud-zuul-eureka-integration/zuul-server/pom.xml b/spring-cloud/spring-cloud-zuul-eureka-integration/zuul-server/pom.xml index 39f94efdf0..57a11f3385 100644 --- a/spring-cloud/spring-cloud-zuul-eureka-integration/zuul-server/pom.xml +++ b/spring-cloud/spring-cloud-zuul-eureka-integration/zuul-server/pom.xml @@ -33,6 +33,13 @@ rxjava ${rxjava.version} + + + org.springframework.boot + spring-boot-starter-test + ${spring-boot-starter-web.version} + test + diff --git a/spring-cloud/spring-cloud-zuul-eureka-integration/zuul-server/src/test/java/com/baeldung/spring/cloud/zuul/config/SpringContextIntegrationTest.java b/spring-cloud/spring-cloud-zuul-eureka-integration/zuul-server/src/test/java/com/baeldung/spring/cloud/zuul/config/SpringContextIntegrationTest.java new file mode 100644 index 0000000000..cfd362edf8 --- /dev/null +++ b/spring-cloud/spring-cloud-zuul-eureka-integration/zuul-server/src/test/java/com/baeldung/spring/cloud/zuul/config/SpringContextIntegrationTest.java @@ -0,0 +1,16 @@ +package com.baeldung.spring.cloud.zuul.config; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.junit4.SpringRunner; + +@RunWith(SpringRunner.class) +@SpringBootTest +public class SpringContextIntegrationTest { + + @Test + public void whenSpringContextIsBootstrapped_thenNoExceptions() { + } + +} From c9211557bd6b2bf9e70db5309bc784688ce05c1f Mon Sep 17 00:00:00 2001 From: Paul Latzelsperger <43503240+beardyinc@users.noreply.github.com> Date: Tue, 2 Apr 2019 21:13:24 +0200 Subject: [PATCH 10/27] BAEL-2803 (#6640) * added sample code for eval article * BAEL-2803 Sample Code * updated tests, repo method names * moved sources for BAEL-2803 here * removed dependencies introduced by BAEL-2803 * re-added sources * moved code to new module * removed eval article code --- .../main/java/com/baeldung/exists/Car.java | 48 +++++++++++++++++++ .../com/baeldung/exists/CarRepository.java | 24 ++++++++++ .../exists/CarRepositoryIntegrationTest.java | 11 ++--- 3 files changed, 76 insertions(+), 7 deletions(-) create mode 100644 persistence-modules/spring-data-jpa-2/src/main/java/com/baeldung/exists/Car.java create mode 100644 persistence-modules/spring-data-jpa-2/src/main/java/com/baeldung/exists/CarRepository.java rename persistence-modules/{spring-boot-persistence => spring-data-jpa-2}/src/test/java/com/baeldung/exists/CarRepositoryIntegrationTest.java (95%) diff --git a/persistence-modules/spring-data-jpa-2/src/main/java/com/baeldung/exists/Car.java b/persistence-modules/spring-data-jpa-2/src/main/java/com/baeldung/exists/Car.java new file mode 100644 index 0000000000..bf09caf6ff --- /dev/null +++ b/persistence-modules/spring-data-jpa-2/src/main/java/com/baeldung/exists/Car.java @@ -0,0 +1,48 @@ +package com.baeldung.exists; + +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.Id; + +/** + * @author paullatzelsperger + * @since 2019-03-20 + */ +@Entity +public class Car { + + @Id + @GeneratedValue + private int id; + private Integer power; + private String model; + + Car() { + + } + + public Car(int power, String model) { + this.power = power; + this.model = model; + } + + public Integer getPower() { + return power; + } + + public void setPower(Integer power) { + this.power = power; + } + + public String getModel() { + return model; + } + + public void setModel(String model) { + this.model = model; + } + + public int getId() { + return id; + } +} diff --git a/persistence-modules/spring-data-jpa-2/src/main/java/com/baeldung/exists/CarRepository.java b/persistence-modules/spring-data-jpa-2/src/main/java/com/baeldung/exists/CarRepository.java new file mode 100644 index 0000000000..a54f19f4cd --- /dev/null +++ b/persistence-modules/spring-data-jpa-2/src/main/java/com/baeldung/exists/CarRepository.java @@ -0,0 +1,24 @@ +package com.baeldung.exists; + +import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.data.jpa.repository.Query; +import org.springframework.data.repository.query.Param; +import org.springframework.stereotype.Repository; + +/** + * @author paullatzelsperger + * @since 2019-03-20 + */ +@Repository +public interface CarRepository extends JpaRepository { + + boolean existsCarByPower(int power); + + boolean existsCarByModel(String model); + + @Query("select case when count(c)> 0 then true else false end from Car c where c.model = :model") + boolean existsCarExactCustomQuery(@Param("model") String model); + + @Query("select case when count(c)> 0 then true else false end from Car c where lower(c.model) like lower(:model)") + boolean existsCarLikeCustomQuery(@Param("model") String model); +} diff --git a/persistence-modules/spring-boot-persistence/src/test/java/com/baeldung/exists/CarRepositoryIntegrationTest.java b/persistence-modules/spring-data-jpa-2/src/test/java/com/baeldung/exists/CarRepositoryIntegrationTest.java similarity index 95% rename from persistence-modules/spring-boot-persistence/src/test/java/com/baeldung/exists/CarRepositoryIntegrationTest.java rename to persistence-modules/spring-data-jpa-2/src/test/java/com/baeldung/exists/CarRepositoryIntegrationTest.java index f9a48a7e66..d99f6671a3 100644 --- a/persistence-modules/spring-boot-persistence/src/test/java/com/baeldung/exists/CarRepositoryIntegrationTest.java +++ b/persistence-modules/spring-data-jpa-2/src/test/java/com/baeldung/exists/CarRepositoryIntegrationTest.java @@ -1,8 +1,6 @@ package com.baeldung.exists; -import static org.assertj.core.api.Assertions.assertThat; -import static org.springframework.data.domain.ExampleMatcher.GenericPropertyMatchers.ignoreCase; - +import com.baeldung.Application; import org.junit.After; import org.junit.Before; import org.junit.Test; @@ -13,13 +11,12 @@ import org.springframework.data.domain.Example; import org.springframework.data.domain.ExampleMatcher; import org.springframework.test.context.junit4.SpringRunner; -import com.baeldung.boot.Application; -import com.baeldung.boot.domain.Car; -import com.baeldung.boot.repository.CarRepository; - import java.util.Arrays; import java.util.List; +import static org.assertj.core.api.Assertions.assertThat; +import static org.springframework.data.domain.ExampleMatcher.GenericPropertyMatchers.ignoreCase; + @RunWith(SpringRunner.class) @SpringBootTest(classes = {Application.class}) public class CarRepositoryIntegrationTest { From 8991a7a11bcb601290409bdc5c3083c67b5b60f5 Mon Sep 17 00:00:00 2001 From: KevinGilmore Date: Tue, 2 Apr 2019 22:20:23 -0500 Subject: [PATCH 11/27] BAEL-2736: Update README (#6651) * BAEL-2246: add link back to article * BAEL-2174: rename core-java-net module to core-java-networking * BAEL-2174: add link back to article * BAEL-2363 BAEL-2337 BAEL-1996 BAEL-2277 add links back to articles * BAEL-2367: add link back to article * BAEL-2335: add link back to article * BAEL-2413: add link back to article * Update README.MD * BAEL-2577: add link back to article * BAEL-2490: add link back to article * BAEL-2471: add link back to article * BAEL-2583: add link back to article * BAEL-2738: add link back to article * BAEL-2711: Add spring-boot-angular module to root pom * BAEL-2544 BAEL-2711 BAEL-2575 BAEL-2657 Add links back to articles * BAEL-2736: Add link back to article --- testing-modules/rest-assured/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/testing-modules/rest-assured/README.md b/testing-modules/rest-assured/README.md index 50f36f61eb..de15515f9d 100644 --- a/testing-modules/rest-assured/README.md +++ b/testing-modules/rest-assured/README.md @@ -1,2 +1,3 @@ ###Relevant Articles: - [A Guide to REST-assured](http://www.baeldung.com/rest-assured-tutorial) +- [REST-assured Support for Spring MockMvc](https://www.baeldung.com/spring-mock-mvc-rest-assured) From 871ee3ccce62c015b83cb44867657a2517358274 Mon Sep 17 00:00:00 2001 From: Rodrigo Graciano Date: Wed, 3 Apr 2019 13:20:28 -0400 Subject: [PATCH 12/27] BAEL-2844 (#6641) --- core-java-12/pom.xml | 1 + .../switchExpression/SwitchUnitTest.java | 37 +++++++++++++++++++ 2 files changed, 38 insertions(+) create mode 100644 core-java-12/src/test/java/com/baeldung/switchExpression/SwitchUnitTest.java diff --git a/core-java-12/pom.xml b/core-java-12/pom.xml index defef5e9d3..c5eec1a4bb 100644 --- a/core-java-12/pom.xml +++ b/core-java-12/pom.xml @@ -34,6 +34,7 @@ ${maven.compiler.source.version} ${maven.compiler.target.version} + --enable-preview diff --git a/core-java-12/src/test/java/com/baeldung/switchExpression/SwitchUnitTest.java b/core-java-12/src/test/java/com/baeldung/switchExpression/SwitchUnitTest.java new file mode 100644 index 0000000000..708e416090 --- /dev/null +++ b/core-java-12/src/test/java/com/baeldung/switchExpression/SwitchUnitTest.java @@ -0,0 +1,37 @@ +package com.baeldung.switchExpression; + +import org.junit.Assert; +import org.junit.Test; + +public class SwitchUnitTest { + + @Test + public void switchJava12(){ + + var month = Month.AUG; + + var value = switch(month){ + case JAN,JUN, JUL -> 3; + case FEB,SEP, OCT, NOV, DEC -> 1; + case MAR,MAY, APR, AUG -> 2; + }; + + Assert.assertEquals(value, 2); + } + + @Test + public void switchLocalVariable(){ + var month = Month.AUG; + int i = switch (month){ + case JAN,JUN, JUL -> 3; + case FEB,SEP, OCT, NOV, DEC -> 1; + case MAR,MAY, APR, AUG -> { + int j = month.toString().length() * 4; + break j; + } + }; + Assert.assertEquals(12, i); + } + + enum Month {JAN, FEB, MAR, APR, MAY, JUN, JUL, AUG, SEP, OCT, NOV, DEC} +} From b7fbf839f9a338021eb7a50eba70bf0703e02935 Mon Sep 17 00:00:00 2001 From: soufiane-cheouati <46105138+soufiane-cheouati@users.noreply.github.com> Date: Wed, 3 Apr 2019 17:27:36 +0000 Subject: [PATCH 13/27] Revering tree update (#6561) * Add files via upload * Add files via upload * Add files via upload * Add files via upload * Add files via upload --- .../algorithms/reversingtree/TreeNode.java | 84 ++++++------ .../reversingtree/TreeReverser.java | 121 ++++++++---------- .../reversingtree/TreeReverserUnitTest.java | 80 +++++++----- 3 files changed, 142 insertions(+), 143 deletions(-) diff --git a/algorithms-miscellaneous-2/src/main/java/com/baeldung/algorithms/reversingtree/TreeNode.java b/algorithms-miscellaneous-2/src/main/java/com/baeldung/algorithms/reversingtree/TreeNode.java index 7905b752a9..a6ec2277e5 100644 --- a/algorithms-miscellaneous-2/src/main/java/com/baeldung/algorithms/reversingtree/TreeNode.java +++ b/algorithms-miscellaneous-2/src/main/java/com/baeldung/algorithms/reversingtree/TreeNode.java @@ -1,42 +1,42 @@ -package com.baeldung.algorithms.reversingtree; - -public class TreeNode { - - private int value; - private TreeNode rightChild; - private TreeNode leftChild; - - public int getValue() { - return value; - } - - public void setValue(int value) { - this.value = value; - } - - public TreeNode getRightChild() { - return rightChild; - } - - public void setRightChild(TreeNode rightChild) { - this.rightChild = rightChild; - } - - public TreeNode getLeftChild() { - return leftChild; - } - - public void setLeftChild(TreeNode leftChild) { - this.leftChild = leftChild; - } - - public TreeNode(int value, TreeNode rightChild, TreeNode leftChild) { - this.value = value; - this.rightChild = rightChild; - this.leftChild = leftChild; - } - - public TreeNode(int value) { - this.value = value; - } -} +package com.baeldung.algorithms.reversingtree; + +public class TreeNode { + + private int value; + private TreeNode rightChild; + private TreeNode leftChild; + + public int getValue() { + return value; + } + + public void setValue(int value) { + this.value = value; + } + + public TreeNode getRightChild() { + return rightChild; + } + + public void setRightChild(TreeNode rightChild) { + this.rightChild = rightChild; + } + + public TreeNode getLeftChild() { + return leftChild; + } + + public void setLeftChild(TreeNode leftChild) { + this.leftChild = leftChild; + } + + public TreeNode(int value, TreeNode leftChild, TreeNode rightChild) { + this.value = value; + this.rightChild = rightChild; + this.leftChild = leftChild; + } + + public TreeNode(int value) { + this.value = value; + } +} diff --git a/algorithms-miscellaneous-2/src/main/java/com/baeldung/algorithms/reversingtree/TreeReverser.java b/algorithms-miscellaneous-2/src/main/java/com/baeldung/algorithms/reversingtree/TreeReverser.java index 6d3a9ddd31..162119d390 100644 --- a/algorithms-miscellaneous-2/src/main/java/com/baeldung/algorithms/reversingtree/TreeReverser.java +++ b/algorithms-miscellaneous-2/src/main/java/com/baeldung/algorithms/reversingtree/TreeReverser.java @@ -1,68 +1,53 @@ -package com.baeldung.algorithms.reversingtree; - -import java.util.LinkedList; - -public class TreeReverser { - - public TreeNode createBinaryTree() { - - TreeNode leaf1 = new TreeNode(3); - TreeNode leaf2 = new TreeNode(1); - TreeNode leaf3 = new TreeNode(9); - TreeNode leaf4 = new TreeNode(6); - - TreeNode nodeLeft = new TreeNode(2, leaf1, leaf2); - TreeNode nodeRight = new TreeNode(7, leaf3, leaf4); - - TreeNode root = new TreeNode(4, nodeRight, nodeLeft); - - return root; - } - - public void reverseRecursive(TreeNode treeNode) { - if (treeNode == null) { - return; - } - - TreeNode temp = treeNode.getLeftChild(); - treeNode.setLeftChild(treeNode.getRightChild()); - treeNode.setRightChild(temp); - - reverseRecursive(treeNode.getLeftChild()); - reverseRecursive(treeNode.getRightChild()); - } - - public void reverseIterative(TreeNode treeNode) { - LinkedList queue = new LinkedList(); - - if (treeNode != null) { - queue.add(treeNode); - } - - while (!queue.isEmpty()) { - - TreeNode node = queue.poll(); - if (node.getLeftChild() != null) - queue.add(node.getLeftChild()); - if (node.getRightChild() != null) - queue.add(node.getRightChild()); - - TreeNode temp = node.getLeftChild(); - node.setLeftChild(node.getRightChild()); - node.setRightChild(temp); - } - } - - public String toString(TreeNode root) { - if (root == null) { - return ""; - } - - StringBuffer buffer = new StringBuffer(String.valueOf(root.getValue())).append(" "); - - buffer.append(toString(root.getLeftChild())); - buffer.append(toString(root.getRightChild())); - - return buffer.toString(); - } -} +package com.baeldung.algorithms.reversingtree; + +import java.util.LinkedList; + +public class TreeReverser { + + public void reverseRecursive(TreeNode treeNode) { + if (treeNode == null) { + return; + } + + TreeNode temp = treeNode.getLeftChild(); + treeNode.setLeftChild(treeNode.getRightChild()); + treeNode.setRightChild(temp); + + reverseRecursive(treeNode.getLeftChild()); + reverseRecursive(treeNode.getRightChild()); + } + + public void reverseIterative(TreeNode treeNode) { + LinkedList queue = new LinkedList(); + + if (treeNode != null) { + queue.add(treeNode); + } + + while (!queue.isEmpty()) { + + TreeNode node = queue.poll(); + if (node.getLeftChild() != null) + queue.add(node.getLeftChild()); + if (node.getRightChild() != null) + queue.add(node.getRightChild()); + + TreeNode temp = node.getLeftChild(); + node.setLeftChild(node.getRightChild()); + node.setRightChild(temp); + } + } + + public String toString(TreeNode root) { + if (root == null) { + return ""; + } + + StringBuffer buffer = new StringBuffer(String.valueOf(root.getValue())).append(" "); + + buffer.append(toString(root.getLeftChild())); + buffer.append(toString(root.getRightChild())); + + return buffer.toString(); + } +} diff --git a/algorithms-miscellaneous-2/src/test/java/com/baeldung/algorithms/reversingtree/TreeReverserUnitTest.java b/algorithms-miscellaneous-2/src/test/java/com/baeldung/algorithms/reversingtree/TreeReverserUnitTest.java index cbc265fae1..44fac57361 100644 --- a/algorithms-miscellaneous-2/src/test/java/com/baeldung/algorithms/reversingtree/TreeReverserUnitTest.java +++ b/algorithms-miscellaneous-2/src/test/java/com/baeldung/algorithms/reversingtree/TreeReverserUnitTest.java @@ -1,33 +1,47 @@ -package com.baeldung.algorithms.reversingtree; - -import static org.junit.jupiter.api.Assertions.assertEquals; - -import org.junit.jupiter.api.Test; - -public class TreeReverserUnitTest { - - @Test - public void givenTreeWhenReversingRecursivelyThenReversed() { - TreeReverser reverser = new TreeReverser(); - - TreeNode treeNode = reverser.createBinaryTree(); - - reverser.reverseRecursive(treeNode); - - assertEquals("4 7 9 6 2 3 1", reverser.toString(treeNode) - .trim()); - } - - @Test - public void givenTreeWhenReversingIterativelyThenReversed() { - TreeReverser reverser = new TreeReverser(); - - TreeNode treeNode = reverser.createBinaryTree(); - - reverser.reverseIterative(treeNode); - - assertEquals("4 7 9 6 2 3 1", reverser.toString(treeNode) - .trim()); - } - -} +package com.baeldung.algorithms.reversingtree; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +import org.junit.jupiter.api.Test; + +public class TreeReverserUnitTest { + + @Test + public void givenTreeWhenReversingRecursivelyThenReversed() { + TreeReverser reverser = new TreeReverser(); + + TreeNode treeNode = createBinaryTree(); + + reverser.reverseRecursive(treeNode); + + assertEquals("4 7 9 6 2 3 1", reverser.toString(treeNode) + .trim()); + } + + @Test + public void givenTreeWhenReversingIterativelyThenReversed() { + TreeReverser reverser = new TreeReverser(); + + TreeNode treeNode = createBinaryTree(); + + reverser.reverseIterative(treeNode); + + assertEquals("4 7 9 6 2 3 1", reverser.toString(treeNode) + .trim()); + } + + private TreeNode createBinaryTree() { + + TreeNode leaf1 = new TreeNode(1); + TreeNode leaf2 = new TreeNode(3); + TreeNode leaf3 = new TreeNode(6); + TreeNode leaf4 = new TreeNode(9); + + TreeNode nodeRight = new TreeNode(7, leaf3, leaf4); + TreeNode nodeLeft = new TreeNode(2, leaf1, leaf2); + + TreeNode root = new TreeNode(4, nodeLeft, nodeRight); + + return root; + } +} From b9ceedea23aaf2dc4875bdf3d82f1bddf8706ebd Mon Sep 17 00:00:00 2001 From: ciro Date: Wed, 3 Apr 2019 16:59:50 -0700 Subject: [PATCH 14/27] corrections --- core-java-lang-oop-2/.gitignore | 26 ++----------------- ...ssSolutionI.java => MyClassSolution1.java} | 6 ++--- ...sSolutionII.java => MyClassSolution2.java} | 6 ++--- ...SolutionIII.java => MyClassSolution3.java} | 6 ++--- .../src/main/resources/logback.xml | 19 -------------- .../src/test/resources/.gitignore | 13 ---------- 6 files changed, 11 insertions(+), 65 deletions(-) rename core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/{MyClassSolutionI.java => MyClassSolution1.java} (63%) rename core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/{MyClassSolutionII.java => MyClassSolution2.java} (70%) rename core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/{MyClassSolutionIII.java => MyClassSolution3.java} (64%) delete mode 100644 core-java-lang-oop-2/src/main/resources/logback.xml delete mode 100644 core-java-lang-oop-2/src/test/resources/.gitignore diff --git a/core-java-lang-oop-2/.gitignore b/core-java-lang-oop-2/.gitignore index 3de4cc647e..36aba1c242 100644 --- a/core-java-lang-oop-2/.gitignore +++ b/core-java-lang-oop-2/.gitignore @@ -1,26 +1,4 @@ -*.class - -0.* - -#folders# -/target -/neoDb* -/data -/src/main/webapp/WEB-INF/classes -*/META-INF/* -.resourceCache - -# Packaged files # -*.jar -*.war -*.ear - -# Files generated by integration tests -*.txt -backup-pom.xml -/bin/ -/temp - -#IntelliJ specific +target/ .idea/ +bin/ *.iml \ No newline at end of file diff --git a/core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/MyClassSolutionI.java b/core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/MyClassSolution1.java similarity index 63% rename from core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/MyClassSolutionI.java rename to core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/MyClassSolution1.java index 36000e4bf4..36fa446302 100644 --- a/core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/MyClassSolutionI.java +++ b/core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/MyClassSolution1.java @@ -1,15 +1,15 @@ package com.baeldung.supertypecompilerexception; -public class MyClassSolutionI { +public class MyClassSolution1 { private int myField1 = 10; private int myField2; - public MyClassSolutionI() { + public MyClassSolution1() { myField2 = myField1; } - public MyClassSolutionI(int i) { + public MyClassSolution1(int i) { myField2 = i; } } diff --git a/core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/MyClassSolutionII.java b/core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/MyClassSolution2.java similarity index 70% rename from core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/MyClassSolutionII.java rename to core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/MyClassSolution2.java index f9bc9b26ae..adaea4bfbe 100644 --- a/core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/MyClassSolutionII.java +++ b/core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/MyClassSolution2.java @@ -1,15 +1,15 @@ package com.baeldung.supertypecompilerexception; -public class MyClassSolutionII { +public class MyClassSolution2 { private int myField1 = 10; private int myField2; - public MyClassSolutionII() { + public MyClassSolution2() { setupMyFields(myField1); } - public MyClassSolutionII(int i) { + public MyClassSolution2(int i) { setupMyFields(i); } diff --git a/core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/MyClassSolutionIII.java b/core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/MyClassSolution3.java similarity index 64% rename from core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/MyClassSolutionIII.java rename to core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/MyClassSolution3.java index f449aa904d..04048f01db 100644 --- a/core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/MyClassSolutionIII.java +++ b/core-java-lang-oop-2/src/main/java/com/baeldung/supertypecompilerexception/MyClassSolution3.java @@ -1,15 +1,15 @@ package com.baeldung.supertypecompilerexception; -public class MyClassSolutionIII { +public class MyClassSolution3 { private static final int SOME_CONSTANT = 10; private int myField2; - public MyClassSolutionIII() { + public MyClassSolution3() { this(SOME_CONSTANT); } - public MyClassSolutionIII(int i) { + public MyClassSolution3(int i) { myField2 = i; } } diff --git a/core-java-lang-oop-2/src/main/resources/logback.xml b/core-java-lang-oop-2/src/main/resources/logback.xml deleted file mode 100644 index 56af2d397e..0000000000 --- a/core-java-lang-oop-2/src/main/resources/logback.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - - - %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n - - - - - - - - - - - - - - \ No newline at end of file diff --git a/core-java-lang-oop-2/src/test/resources/.gitignore b/core-java-lang-oop-2/src/test/resources/.gitignore deleted file mode 100644 index 83c05e60c8..0000000000 --- a/core-java-lang-oop-2/src/test/resources/.gitignore +++ /dev/null @@ -1,13 +0,0 @@ -*.class - -#folders# -/target -/neoDb* -/data -/src/main/webapp/WEB-INF/classes -*/META-INF/* - -# Packaged files # -*.jar -*.war -*.ear \ No newline at end of file From 73630a6f8302f8aa2965c41eccd9f119b249c705 Mon Sep 17 00:00:00 2001 From: eric-martin Date: Wed, 3 Apr 2019 20:33:22 -0500 Subject: [PATCH 15/27] BAEL-2481: Moved to spring-mvc-java --- .../src/main/java/com/baeldung/filters/EmptyParamFilter.java | 0 .../src/main/java/com/baeldung/listeners/AppListener.java | 0 .../src/main/java/com/baeldung/listeners/RequestListener.java | 0 .../src/main/java/com/baeldung/servlets/CounterServlet.java | 0 .../src/main/java/com/baeldung/servlets/UppercaseServlet.java | 0 5 files changed, 0 insertions(+), 0 deletions(-) rename {javax-servlets => spring-mvc-java}/src/main/java/com/baeldung/filters/EmptyParamFilter.java (100%) rename {javax-servlets => spring-mvc-java}/src/main/java/com/baeldung/listeners/AppListener.java (100%) rename {javax-servlets => spring-mvc-java}/src/main/java/com/baeldung/listeners/RequestListener.java (100%) rename {javax-servlets => spring-mvc-java}/src/main/java/com/baeldung/servlets/CounterServlet.java (100%) rename {javax-servlets => spring-mvc-java}/src/main/java/com/baeldung/servlets/UppercaseServlet.java (100%) diff --git a/javax-servlets/src/main/java/com/baeldung/filters/EmptyParamFilter.java b/spring-mvc-java/src/main/java/com/baeldung/filters/EmptyParamFilter.java similarity index 100% rename from javax-servlets/src/main/java/com/baeldung/filters/EmptyParamFilter.java rename to spring-mvc-java/src/main/java/com/baeldung/filters/EmptyParamFilter.java diff --git a/javax-servlets/src/main/java/com/baeldung/listeners/AppListener.java b/spring-mvc-java/src/main/java/com/baeldung/listeners/AppListener.java similarity index 100% rename from javax-servlets/src/main/java/com/baeldung/listeners/AppListener.java rename to spring-mvc-java/src/main/java/com/baeldung/listeners/AppListener.java diff --git a/javax-servlets/src/main/java/com/baeldung/listeners/RequestListener.java b/spring-mvc-java/src/main/java/com/baeldung/listeners/RequestListener.java similarity index 100% rename from javax-servlets/src/main/java/com/baeldung/listeners/RequestListener.java rename to spring-mvc-java/src/main/java/com/baeldung/listeners/RequestListener.java diff --git a/javax-servlets/src/main/java/com/baeldung/servlets/CounterServlet.java b/spring-mvc-java/src/main/java/com/baeldung/servlets/CounterServlet.java similarity index 100% rename from javax-servlets/src/main/java/com/baeldung/servlets/CounterServlet.java rename to spring-mvc-java/src/main/java/com/baeldung/servlets/CounterServlet.java diff --git a/javax-servlets/src/main/java/com/baeldung/servlets/UppercaseServlet.java b/spring-mvc-java/src/main/java/com/baeldung/servlets/UppercaseServlet.java similarity index 100% rename from javax-servlets/src/main/java/com/baeldung/servlets/UppercaseServlet.java rename to spring-mvc-java/src/main/java/com/baeldung/servlets/UppercaseServlet.java From a7eb7bf8e0285f9da28c75026f5ad2f4e36c0a37 Mon Sep 17 00:00:00 2001 From: kwoyke Date: Thu, 4 Apr 2019 18:43:36 +0200 Subject: [PATCH 16/27] BAEL-2820 Transforming Optional of an Empty String into Empty Optional (#6634) --- core-java-11/pom.xml | 9 ++++++ .../EmptyStringToEmptyOptionalUnitTest.java | 32 +++++++++++++++++++ 2 files changed, 41 insertions(+) create mode 100644 core-java-11/src/test/java/com/baeldung/EmptyStringToEmptyOptionalUnitTest.java diff --git a/core-java-11/pom.xml b/core-java-11/pom.xml index a9776d8f3b..933acdbecc 100644 --- a/core-java-11/pom.xml +++ b/core-java-11/pom.xml @@ -14,6 +14,14 @@ 1.0.0-SNAPSHOT + + + com.google.guava + guava + ${guava.version} + + + @@ -31,6 +39,7 @@ 11 11 + 27.1-jre diff --git a/core-java-11/src/test/java/com/baeldung/EmptyStringToEmptyOptionalUnitTest.java b/core-java-11/src/test/java/com/baeldung/EmptyStringToEmptyOptionalUnitTest.java new file mode 100644 index 0000000000..cc429209d4 --- /dev/null +++ b/core-java-11/src/test/java/com/baeldung/EmptyStringToEmptyOptionalUnitTest.java @@ -0,0 +1,32 @@ +package com.baeldung; + +import com.google.common.base.Strings; +import org.junit.Assert; +import org.junit.Test; + +import java.util.Optional; +import java.util.function.Predicate; + +public class EmptyStringToEmptyOptionalUnitTest { + + @Test + public void givenEmptyString_whenFilteringOnOptional_thenEmptyOptionalIsReturned() { + String str = ""; + Optional opt = Optional.ofNullable(str).filter(s -> !s.isEmpty()); + Assert.assertFalse(opt.isPresent()); + } + + @Test + public void givenEmptyString_whenFilteringOnOptionalInJava11_thenEmptyOptionalIsReturned() { + String str = ""; + Optional opt = Optional.ofNullable(str).filter(Predicate.not(String::isEmpty)); + Assert.assertFalse(opt.isPresent()); + } + + @Test + public void givenEmptyString_whenPassingResultOfEmptyToNullToOfNullable_thenEmptyOptionalIsReturned() { + String str = ""; + Optional opt = Optional.ofNullable(Strings.emptyToNull(str)); + Assert.assertFalse(opt.isPresent()); + } +} From 574097428a66b349aadd3bae17bd3b796988c7d4 Mon Sep 17 00:00:00 2001 From: amit2103 Date: Fri, 5 Apr 2019 00:51:24 +0530 Subject: [PATCH 17/27] [BAEL-13311] - Checked modules that don't use our standard parents --- apache-meecrowave/pom.xml | 6 ++++++ ...cleEndpointsTest.java => ArticleEndpointsUnitTest.java} | 2 +- spring-rest-hal-browser/pom.xml | 7 +++++++ 3 files changed, 14 insertions(+), 1 deletion(-) rename apache-meecrowave/src/test/java/com/baeldung/meecrowave/{ArticleEndpointsTest.java => ArticleEndpointsUnitTest.java} (96%) diff --git a/apache-meecrowave/pom.xml b/apache-meecrowave/pom.xml index fb5af69f9b..bb851577e2 100644 --- a/apache-meecrowave/pom.xml +++ b/apache-meecrowave/pom.xml @@ -6,6 +6,12 @@ 0.0.1 apache-meecrowave A sample REST API application with Meecrowave + + + com.baeldung + parent-modules + 1.0.0-SNAPSHOT + diff --git a/apache-meecrowave/src/test/java/com/baeldung/meecrowave/ArticleEndpointsTest.java b/apache-meecrowave/src/test/java/com/baeldung/meecrowave/ArticleEndpointsUnitTest.java similarity index 96% rename from apache-meecrowave/src/test/java/com/baeldung/meecrowave/ArticleEndpointsTest.java rename to apache-meecrowave/src/test/java/com/baeldung/meecrowave/ArticleEndpointsUnitTest.java index 0dc9773490..f9a06fd7b9 100644 --- a/apache-meecrowave/src/test/java/com/baeldung/meecrowave/ArticleEndpointsTest.java +++ b/apache-meecrowave/src/test/java/com/baeldung/meecrowave/ArticleEndpointsUnitTest.java @@ -17,7 +17,7 @@ import okhttp3.Request; import okhttp3.Response; @RunWith(MonoMeecrowave.Runner.class) -public class ArticleEndpointsTest { +public class ArticleEndpointsUnitTest { @ConfigurationInject private Meecrowave.Builder config; diff --git a/spring-rest-hal-browser/pom.xml b/spring-rest-hal-browser/pom.xml index 413aad9e8c..cc3b1b65fe 100644 --- a/spring-rest-hal-browser/pom.xml +++ b/spring-rest-hal-browser/pom.xml @@ -8,6 +8,13 @@ 1.0-SNAPSHOT spring-rest-hal-browser + + parent-boot-1 + com.baeldung + 0.0.1-SNAPSHOT + ../parent-boot-1 + + From 3d31d07b46ab58eaff4aead784910ec63946b20c Mon Sep 17 00:00:00 2001 From: dev-chirag <41482403+dev-chirag@users.noreply.github.com> Date: Fri, 5 Apr 2019 09:43:51 +0530 Subject: [PATCH 18/27] BAEL2489:Avoid check for null statements in Java (#6647) * BAEL2489 - Avoid check for null statement in Java * BAEL2489 Avoid check for null statement in Java * BAEL2489 Avoid check for null statement in Java * BAEL2489 Avoid check for null statement in Java * BAEL2489 Avoid check for null statement in Java * BAEL2489 Avoid check for null statement in Java - Removing unused pom changes * BAEL2489 Avoid check for null statement in Java - Removing unused pom changes * Delete pom.xml Removing unused changes in core-java * BAEL2489 Avoid check for null statement in Java - Removing unused pom changes * BAEL2489 Avoid check for null statement in Java - adding ofnullable to Optional example --- .../src/main/java/com/baeldung/nulls/UsingOptional.java | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/patterns/design-patterns-2/src/main/java/com/baeldung/nulls/UsingOptional.java b/patterns/design-patterns-2/src/main/java/com/baeldung/nulls/UsingOptional.java index 6c17290a72..d5dd56e760 100644 --- a/patterns/design-patterns-2/src/main/java/com/baeldung/nulls/UsingOptional.java +++ b/patterns/design-patterns-2/src/main/java/com/baeldung/nulls/UsingOptional.java @@ -8,11 +8,7 @@ public class UsingOptional { String response = doSomething(processed); - if (response == null) { - return Optional.empty(); - } - - return Optional.of(response); + return Optional.ofNullable(response); } private String doSomething(boolean processed) { From af4edd08fd19b720a3955eeb40b33ddcd90a9463 Mon Sep 17 00:00:00 2001 From: Amy DeGregorio Date: Fri, 5 Apr 2019 11:04:56 -0400 Subject: [PATCH 19/27] BAEL-2801 (#6665) * BAEL-2727 Example Code * BAEL-2801 Example code * Change to use parent-boot-2 --- spring-mvc-simple-2/pom.xml | 37 +++++++ .../java/com/baeldung/spring/Application.java | 11 +++ .../controller/ReadHeaderRestController.java | 97 +++++++++++++++++++ .../baeldung/AppContextIntegrationTest.java | 13 +++ ...adHeaderRestControllerIntegrationTest.java | 86 ++++++++++++++++ 5 files changed, 244 insertions(+) create mode 100644 spring-mvc-simple-2/pom.xml create mode 100644 spring-mvc-simple-2/src/main/java/com/baeldung/spring/Application.java create mode 100644 spring-mvc-simple-2/src/main/java/com/baeldung/spring/headers/controller/ReadHeaderRestController.java create mode 100644 spring-mvc-simple-2/src/test/java/com/baeldung/AppContextIntegrationTest.java create mode 100644 spring-mvc-simple-2/src/test/java/com/baeldung/headers/controller/ReadHeaderRestControllerIntegrationTest.java diff --git a/spring-mvc-simple-2/pom.xml b/spring-mvc-simple-2/pom.xml new file mode 100644 index 0000000000..74302cff78 --- /dev/null +++ b/spring-mvc-simple-2/pom.xml @@ -0,0 +1,37 @@ + + + 4.0.0 + spring-mvc-simple-2 + war + spring-mvc-simple-2 + + + com.baeldung + parent-boot-2 + 0.0.1-SNAPSHOT + ../parent-boot-2 + + + + + org.springframework.boot + spring-boot-starter-web + + + + + 1.8 + 1.8 + + + + + + org.apache.maven.plugins + maven-war-plugin + + + spring-mvc-simple2 + + diff --git a/spring-mvc-simple-2/src/main/java/com/baeldung/spring/Application.java b/spring-mvc-simple-2/src/main/java/com/baeldung/spring/Application.java new file mode 100644 index 0000000000..40a0a55761 --- /dev/null +++ b/spring-mvc-simple-2/src/main/java/com/baeldung/spring/Application.java @@ -0,0 +1,11 @@ +package com.baeldung.spring; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class Application { + public static void main(String[] args) { + SpringApplication.run(Application.class, args); + } +} diff --git a/spring-mvc-simple-2/src/main/java/com/baeldung/spring/headers/controller/ReadHeaderRestController.java b/spring-mvc-simple-2/src/main/java/com/baeldung/spring/headers/controller/ReadHeaderRestController.java new file mode 100644 index 0000000000..6a0f3b6a0d --- /dev/null +++ b/spring-mvc-simple-2/src/main/java/com/baeldung/spring/headers/controller/ReadHeaderRestController.java @@ -0,0 +1,97 @@ +package com.baeldung.spring.headers.controller; + +import java.net.InetSocketAddress; +import java.util.Map; +import java.util.stream.Collectors; + +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.springframework.http.HttpHeaders; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.util.MultiValueMap; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestHeader; +import org.springframework.web.bind.annotation.RestController; + +@RestController +public class ReadHeaderRestController { + private static final Log LOG = LogFactory.getLog(ReadHeaderRestController.class); + + @GetMapping("/") + public ResponseEntity index() { + return new ResponseEntity("Index", HttpStatus.OK); + } + + @GetMapping("/greeting") + public ResponseEntity greeting(@RequestHeader(value = "accept-language") String language) { + String greeting = ""; + String firstLanguage = (language.length() > 1 ? language.substring(0, 2) : language); + switch (firstLanguage) { + case "es": + greeting = "Hola!"; + break; + case "de": + greeting = "Hallo!"; + break; + case "fr": + greeting = "Bonjour!"; + break; + case "en": + default: + greeting = "Hello!"; + break; + } + + return new ResponseEntity(greeting, HttpStatus.OK); + } + + @GetMapping("/double") + public ResponseEntity doubleNumber(@RequestHeader("my-number") int myNumber) { + return new ResponseEntity( + String.format("%d * 2 = %d", myNumber, (myNumber * 2)), + HttpStatus.OK); + } + + @GetMapping("/listHeaders") + public ResponseEntity listAllHeaders(@RequestHeader Map headers) { + + headers.forEach((key, value) -> { + LOG.info(String.format("Header '%s' = %s", key, value)); + }); + + return new ResponseEntity(String.format("Listed %d headers", headers.size()), HttpStatus.OK); + } + + @GetMapping("/multiValue") + public ResponseEntity multiValue(@RequestHeader MultiValueMap headers) { + headers.forEach((key, value) -> { + LOG.info(String.format("Header '%s' = %s", key, value.stream().collect(Collectors.joining("|")))); + }); + + return new ResponseEntity(String.format("Listed %d headers", headers.size()), HttpStatus.OK); + } + + @GetMapping("/getBaseUrl") + public ResponseEntity getBaseUrl(@RequestHeader HttpHeaders headers) { + InetSocketAddress host = headers.getHost(); + String url = "http://" + host.getHostName() + ":" + host.getPort(); + return new ResponseEntity(String.format("Base URL = %s", url), HttpStatus.OK); + } + + @GetMapping("/nonRequiredHeader") + public ResponseEntity evaluateNonRequiredHeader( + @RequestHeader(value = "optional-header", required = false) String optionalHeader) { + + return new ResponseEntity( + String.format("Was the optional header present? %s!", (optionalHeader == null ? "No" : "Yes")), + HttpStatus.OK); + } + + @GetMapping("/default") + public ResponseEntity evaluateDefaultHeaderValue( + @RequestHeader(value = "optional-header", defaultValue = "3600") int optionalHeader) { + + return new ResponseEntity(String.format("Optional Header is %d", optionalHeader), HttpStatus.OK); + } +} diff --git a/spring-mvc-simple-2/src/test/java/com/baeldung/AppContextIntegrationTest.java b/spring-mvc-simple-2/src/test/java/com/baeldung/AppContextIntegrationTest.java new file mode 100644 index 0000000000..27207688e6 --- /dev/null +++ b/spring-mvc-simple-2/src/test/java/com/baeldung/AppContextIntegrationTest.java @@ -0,0 +1,13 @@ +package com.baeldung; + +import org.junit.jupiter.api.Test; +import org.springframework.boot.test.context.SpringBootTest; + +import com.baeldung.spring.Application; + +@SpringBootTest(classes = Application.class) +public class AppContextIntegrationTest { + @Test + public void contextLoads() { + } +} diff --git a/spring-mvc-simple-2/src/test/java/com/baeldung/headers/controller/ReadHeaderRestControllerIntegrationTest.java b/spring-mvc-simple-2/src/test/java/com/baeldung/headers/controller/ReadHeaderRestControllerIntegrationTest.java new file mode 100644 index 0000000000..6f94004cc7 --- /dev/null +++ b/spring-mvc-simple-2/src/test/java/com/baeldung/headers/controller/ReadHeaderRestControllerIntegrationTest.java @@ -0,0 +1,86 @@ +package com.baeldung.headers.controller; + +import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.content; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; + +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.springframework.context.annotation.Configuration; +import org.springframework.test.context.junit.jupiter.SpringExtension; +import org.springframework.test.context.junit.jupiter.web.SpringJUnitWebConfig; +import org.springframework.test.web.servlet.MockMvc; +import org.springframework.test.web.servlet.setup.MockMvcBuilders; + +import com.baeldung.spring.headers.controller.ReadHeaderRestController; + +@SpringJUnitWebConfig(ReadHeaderRestControllerIntegrationTest.Config.class) +@ExtendWith(SpringExtension.class) +public class ReadHeaderRestControllerIntegrationTest { + private static final Log LOG = LogFactory.getLog(ReadHeaderRestControllerIntegrationTest.class); + + @Configuration + static class Config { + + } + + private MockMvc mockMvc; + + @BeforeEach + public void setUp() { + mockMvc = MockMvcBuilders.standaloneSetup(new ReadHeaderRestController()) + .build(); + } + + @Test + public void whenGetRequestSentToAllHeaders_thenStatusOkAndTextReturned() throws Exception { + mockMvc.perform(get("/listHeaders").header("my-header", "Test")) + .andExpect(status().isOk()) + .andExpect(content().string("Listed 1 headers")); + } + + @Test + public void whenGetRequestSentToMultiValue_thenStatusOkAndTextReturned() throws Exception { + mockMvc.perform(get("/multiValue").header("my-header", "ABC", "DEF", "GHI")) + .andExpect(status().isOk()) + .andExpect(content().string("Listed 1 headers")); + } + + @Test + public void whenGetRequestSentToGreeting_thenStatusOKAndGreetingReturned() throws Exception { + mockMvc.perform(get("/greeting").header("accept-language", "de")) + .andExpect(status().isOk()) + .andExpect(content().string("Hallo!")); + } + + @Test + public void whenGetRequestSentToDouble_thenStatusOKAndCorrectResultReturned() throws Exception { + mockMvc.perform(get("/double").header("my-number", 2)) + .andExpect(status().isOk()) + .andExpect(content().string("2 * 2 = 4")); + } + + @Test + public void whenGetRequestSentToGetBaseUrl_thenStatusOkAndHostReturned() throws Exception { + mockMvc.perform(get("/getBaseUrl").header("host", "localhost:8080")) + .andExpect(status().isOk()) + .andExpect(content().string("Base URL = http://localhost:8080")); + } + + @Test + public void whenGetRequestSentToNonRequiredHeaderWithoutHeader_thenStatusOKAndMessageReturned() throws Exception { + mockMvc.perform(get("/nonRequiredHeader")) + .andExpect(status().isOk()) + .andExpect(content().string("Was the optional header present? No!")); + } + + @Test + public void whenGetRequestSentToDefaultWithoutHeader_thenStatusOKAndMessageReturned() throws Exception { + mockMvc.perform(get("/default")) + .andExpect(status().isOk()) + .andExpect(content().string("Optional Header is 3600")); + } +} From 3f5ed8dcc14fb6009e8f396e9d7633e72fd37cb5 Mon Sep 17 00:00:00 2001 From: Loredana Date: Sat, 6 Apr 2019 13:47:03 +0300 Subject: [PATCH 20/27] fix bean config --- .../oauth2server/config/WebSecurityConfiguration.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/spring-boot-security/src/main/java/com/baeldung/springbootsecurity/oauth2server/config/WebSecurityConfiguration.java b/spring-boot-security/src/main/java/com/baeldung/springbootsecurity/oauth2server/config/WebSecurityConfiguration.java index f2540c01b8..3a8c073870 100644 --- a/spring-boot-security/src/main/java/com/baeldung/springbootsecurity/oauth2server/config/WebSecurityConfiguration.java +++ b/spring-boot-security/src/main/java/com/baeldung/springbootsecurity/oauth2server/config/WebSecurityConfiguration.java @@ -2,10 +2,12 @@ package com.baeldung.springbootsecurity.oauth2server.config; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Profile; import org.springframework.security.authentication.AuthenticationManager; import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; @Configuration +@Profile("!authz") public class WebSecurityConfiguration extends WebSecurityConfigurerAdapter { @Bean From 0da4c3b1b9c3a420a1eae338929115fbe02980a6 Mon Sep 17 00:00:00 2001 From: amit2103 Date: Sat, 6 Apr 2019 16:57:02 +0530 Subject: [PATCH 21/27] [BAEL-13378] - Added modules those were not built --- pom.xml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index e785f1461f..5c77c7736e 100644 --- a/pom.xml +++ b/pom.xml @@ -332,7 +332,7 @@ parent-spring-5 parent-java parent-kotlin - + akka-streams algorithms-genetic algorithms-miscellaneous-1 @@ -391,6 +391,7 @@ core-java-lang-syntax core-java-lang core-java-lang-oop + core-java-lang-oop-2 core-java-networking core-java-perf core-java-sun @@ -440,6 +441,7 @@ jackson-2 java-collections-conversions java-collections-maps + java-collections-maps-2 @@ -448,6 +450,7 @@ java-rmi java-spi java-streams + java-streams-2 java-strings java-vavr-stream java-websocket @@ -616,6 +619,7 @@ spring-boot-mvc spring-boot-ops spring-boot-rest + spring-boot-data spring-boot-property-exp spring-boot-security spring-boot-testing @@ -663,11 +667,13 @@ spring-mvc-java spring-mvc-kotlin spring-mvc-simple + spring-mvc-simple-2 spring-mvc-velocity spring-mvc-webflow spring-mvc-xml spring-protobuf + spring-quartz From 06cb2e5351bc40428ace7844b6384688f8065d8b Mon Sep 17 00:00:00 2001 From: Shubhra Srivastava Date: Sat, 6 Apr 2019 21:30:35 +0530 Subject: [PATCH 22/27] Bael 2826 case insensitive spring data jpa (#6668) * BAEL-2826: Case Insensitive Comparison Spring data jpa * BAEL-2826: Fixing imports * BAEL-2826: Case Insensitive Comparison Spring data jpa * BAEL-2826: Fixing imports * BAEL-2826: Moving code to another repo * BAEL-2826: Moving code to another repo * BAEL-2826 : Refactor * BAEL-2826 : Refactor * BAEL-2826 : Override equals hashcode --- .../java/com/baeldung/entity/Passenger.java | 78 +++++++++++++++++++ .../repository/PassengerRepository.java | 14 ++++ .../PassengerRepositoryIntegrationTest.java | 54 +++++++++++++ 3 files changed, 146 insertions(+) create mode 100644 persistence-modules/spring-data-jpa-2/src/main/java/com/baeldung/entity/Passenger.java create mode 100644 persistence-modules/spring-data-jpa-2/src/main/java/com/baeldung/repository/PassengerRepository.java create mode 100644 persistence-modules/spring-data-jpa-2/src/test/java/com/baeldung/repository/PassengerRepositoryIntegrationTest.java diff --git a/persistence-modules/spring-data-jpa-2/src/main/java/com/baeldung/entity/Passenger.java b/persistence-modules/spring-data-jpa-2/src/main/java/com/baeldung/entity/Passenger.java new file mode 100644 index 0000000000..3aafbe9afa --- /dev/null +++ b/persistence-modules/spring-data-jpa-2/src/main/java/com/baeldung/entity/Passenger.java @@ -0,0 +1,78 @@ +package com.baeldung.entity; + +import javax.persistence.Basic; +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.Id; +import java.util.Objects; + +@Entity +public class Passenger { + + @Id + @GeneratedValue + @Column(nullable = false) + private Long id; + + @Basic(optional = false) + @Column(nullable = false) + private String firstName; + + @Basic(optional = false) + @Column(nullable = false) + private String lastName; + + private Passenger(String firstName, String lastName) { + this.firstName = firstName; + this.lastName = lastName; + } + + public static Passenger from(String firstName, String lastName) { + return new Passenger(firstName, lastName); + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + 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; + } + + @Override + public String toString() { + return "Passenger{" + "id=" + id + ", firstName='" + firstName + '\'' + ", lastName='" + lastName + '\'' + '}'; + } + + @Override + public boolean equals(Object o) { + if (this == o) + return true; + if (o == null || getClass() != o.getClass()) + return false; + Passenger passenger = (Passenger) o; + return Objects.equals(firstName, passenger.firstName) && Objects.equals(lastName, passenger.lastName); + } + + @Override + public int hashCode() { + return Objects.hash(firstName, lastName); + } +} diff --git a/persistence-modules/spring-data-jpa-2/src/main/java/com/baeldung/repository/PassengerRepository.java b/persistence-modules/spring-data-jpa-2/src/main/java/com/baeldung/repository/PassengerRepository.java new file mode 100644 index 0000000000..a295a74f1b --- /dev/null +++ b/persistence-modules/spring-data-jpa-2/src/main/java/com/baeldung/repository/PassengerRepository.java @@ -0,0 +1,14 @@ +package com.baeldung.repository; + +import com.baeldung.entity.Passenger; +import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.stereotype.Repository; + +import java.util.List; + +@Repository +interface PassengerRepository extends JpaRepository { + + List findByFirstNameIgnoreCase(String firstName); + +} diff --git a/persistence-modules/spring-data-jpa-2/src/test/java/com/baeldung/repository/PassengerRepositoryIntegrationTest.java b/persistence-modules/spring-data-jpa-2/src/test/java/com/baeldung/repository/PassengerRepositoryIntegrationTest.java new file mode 100644 index 0000000000..f96f0249d7 --- /dev/null +++ b/persistence-modules/spring-data-jpa-2/src/test/java/com/baeldung/repository/PassengerRepositoryIntegrationTest.java @@ -0,0 +1,54 @@ +package com.baeldung.repository; + +import com.baeldung.entity.Passenger; +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.autoconfigure.orm.jpa.DataJpaTest; +import org.springframework.test.context.junit4.SpringRunner; + +import javax.persistence.EntityManager; +import javax.persistence.PersistenceContext; +import java.util.List; + +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.contains; +import static org.hamcrest.core.IsNot.not; + +@DataJpaTest +@RunWith(SpringRunner.class) +public class PassengerRepositoryIntegrationTest { + + @PersistenceContext + private EntityManager entityManager; + @Autowired + private PassengerRepository repository; + + @Before + public void before() { + entityManager.persist(Passenger.from("Jill", "Smith")); + entityManager.persist(Passenger.from("Eve", "Jackson")); + entityManager.persist(Passenger.from("Fred", "Bloggs")); + entityManager.persist(Passenger.from("Ricki", "Bobbie")); + entityManager.persist(Passenger.from("Siya", "Kolisi")); + } + + @Test + public void givenPassengers_whenMatchingIgnoreCase_thenExpectedReturned() { + Passenger jill = Passenger.from("Jill", "Smith"); + Passenger eve = Passenger.from("Eve", "Jackson"); + Passenger fred = Passenger.from("Fred", "Bloggs"); + Passenger siya = Passenger.from("Siya", "Kolisi"); + Passenger ricki = Passenger.from("Ricki", "Bobbie"); + + List passengers = repository.findByFirstNameIgnoreCase("FRED"); + + assertThat(passengers, contains(fred)); + assertThat(passengers, not(contains(eve))); + assertThat(passengers, not(contains(siya))); + assertThat(passengers, not(contains(jill))); + assertThat(passengers, not(contains(ricki))); + + } +} From caef6500c2c3554da90cac2398ed7293f4285871 Mon Sep 17 00:00:00 2001 From: amit2103 Date: Sun, 7 Apr 2019 00:19:58 +0530 Subject: [PATCH 23/27] [BAEL-13313] - Extract versions into properties --- akka-streams/pom.xml | 5 +++-- persistence-modules/jnosql/jnosql-diana/pom.xml | 12 ++++++------ .../spring-data-cassandra-reactive/pom.xml | 3 ++- spring-akka/pom.xml | 3 ++- .../src/main/java/com/baeldung/pom.xml | 7 ++++--- spring-boot-testing/pom.xml | 3 ++- .../spring-cloud-contract-consumer/pom.xml | 10 ++++++---- .../spring-cloud-contract-producer/pom.xml | 5 +++-- spring-freemarker/pom.xml | 3 ++- spring-jersey/pom.xml | 15 +++++++++------ spring-mvc-simple/pom.xml | 3 ++- spring-mvc-xml/pom.xml | 3 ++- spring-reactor/pom.xml | 9 +++++++-- spring-security-mvc-jsonview/pom.xml | 9 +++++---- spring-security-mvc-persisted-remember-me/pom.xml | 4 ++-- spring-security-stormpath/pom.xml | 6 +++++- spring-session/spring-session-jdbc/pom.xml | 7 +++---- tensorflow-java/pom.xml | 12 ++++++------ testing-modules/load-testing-comparison/pom.xml | 7 ++++--- .../math-test-functions/pom.xml | 2 +- testing-modules/parallel-tests-junit/pom.xml | 7 +++++++ .../string-test-functions/pom.xml | 2 +- testing-modules/testing/pom.xml | 3 ++- 23 files changed, 86 insertions(+), 54 deletions(-) diff --git a/akka-streams/pom.xml b/akka-streams/pom.xml index a885753ce2..7719bb7351 100644 --- a/akka-streams/pom.xml +++ b/akka-streams/pom.xml @@ -14,18 +14,19 @@ com.typesafe.akka - akka-stream_2.11 + akka-stream_${scala.version} ${akkastreams.version} com.typesafe.akka - akka-stream-testkit_2.11 + akka-stream-testkit_${scala.version} ${akkastreams.version} 2.5.2 + 2.11 \ No newline at end of file diff --git a/persistence-modules/jnosql/jnosql-diana/pom.xml b/persistence-modules/jnosql/jnosql-diana/pom.xml index b52c808cf5..a4951761d8 100644 --- a/persistence-modules/jnosql/jnosql-diana/pom.xml +++ b/persistence-modules/jnosql/jnosql-diana/pom.xml @@ -18,36 +18,36 @@ org.jnosql.diana diana-document - 0.0.5 + ${jnosql.version} org.jnosql.diana mongodb-driver - 0.0.5 + ${jnosql.version} org.jnosql.diana diana-column - 0.0.5 + ${jnosql.version} org.jnosql.diana cassandra-driver - 0.0.5 + ${jnosql.version} org.jnosql.diana diana-key-value - 0.0.5 + ${jnosql.version} org.jnosql.diana hazelcast-driver - 0.0.5 + ${jnosql.version} diff --git a/persistence-modules/spring-data-cassandra-reactive/pom.xml b/persistence-modules/spring-data-cassandra-reactive/pom.xml index d2bc574ee9..bc8f49862d 100644 --- a/persistence-modules/spring-data-cassandra-reactive/pom.xml +++ b/persistence-modules/spring-data-cassandra-reactive/pom.xml @@ -21,7 +21,7 @@ org.springframework.data spring-data-cassandra - 2.1.2.RELEASE + ${spring-data-cassandra.version} io.projectreactor @@ -53,6 +53,7 @@ UTF-8 1.8 + 2.1.2.RELEASE diff --git a/spring-akka/pom.xml b/spring-akka/pom.xml index 92b3f1162d..d8b943b5ae 100644 --- a/spring-akka/pom.xml +++ b/spring-akka/pom.xml @@ -19,7 +19,7 @@ com.typesafe.akka - akka-actor_2.11 + akka-actor_${scala.version} ${akka.version} @@ -44,6 +44,7 @@ 4.3.4.RELEASE 2.4.14 + 2.11 \ No newline at end of file diff --git a/spring-boot-angular/src/main/java/com/baeldung/pom.xml b/spring-boot-angular/src/main/java/com/baeldung/pom.xml index d4ebc870b4..ac86f932b4 100644 --- a/spring-boot-angular/src/main/java/com/baeldung/pom.xml +++ b/spring-boot-angular/src/main/java/com/baeldung/pom.xml @@ -6,15 +6,13 @@ 1.0 jar Spring Boot Angular Application + org.springframework.boot spring-boot-starter-parent 2.1.3.RELEASE - - 1.8 - @@ -46,4 +44,7 @@ + + 1.8 + \ No newline at end of file diff --git a/spring-boot-testing/pom.xml b/spring-boot-testing/pom.xml index caf48276b6..84107070bd 100644 --- a/spring-boot-testing/pom.xml +++ b/spring-boot-testing/pom.xml @@ -101,7 +101,7 @@ org.codehaus.gmavenplus gmavenplus-plugin - 1.6 + ${gmavenplus-plugin.version} @@ -119,6 +119,7 @@ com.baeldung.boot.Application 2.2.4 1.2-groovy-2.4 + 1.6 diff --git a/spring-cloud/spring-cloud-contract/spring-cloud-contract-consumer/pom.xml b/spring-cloud/spring-cloud-contract/spring-cloud-contract-consumer/pom.xml index 7d00a9f463..8ecda40d0a 100644 --- a/spring-cloud/spring-cloud-contract/spring-cloud-contract-consumer/pom.xml +++ b/spring-cloud/spring-cloud-contract/spring-cloud-contract-consumer/pom.xml @@ -20,24 +20,24 @@ org.springframework.cloud spring-cloud-contract-wiremock - 1.2.2.RELEASE + ${spring-cloud.version} test org.springframework.cloud spring-cloud-contract-stub-runner - 1.2.2.RELEASE + ${spring-cloud.version} test org.springframework.boot spring-boot-starter-web - 1.5.9.RELEASE + ${spring-boot.version} org.springframework.boot spring-boot-starter-data-rest - 1.5.9.RELEASE + ${spring-boot.version} com.baeldung.spring.cloud @@ -51,5 +51,7 @@ UTF-8 UTF-8 1.8 + 1.2.2.RELEASE + 1.5.9.RELEASE diff --git a/spring-cloud/spring-cloud-contract/spring-cloud-contract-producer/pom.xml b/spring-cloud/spring-cloud-contract/spring-cloud-contract-producer/pom.xml index a6bd4e1be4..47759a818a 100644 --- a/spring-cloud/spring-cloud-contract/spring-cloud-contract-producer/pom.xml +++ b/spring-cloud/spring-cloud-contract/spring-cloud-contract-producer/pom.xml @@ -25,12 +25,12 @@ org.springframework.boot spring-boot-starter-web - 1.5.9.RELEASE + ${spring-boot.version} org.springframework.boot spring-boot-starter-data-rest - 1.5.9.RELEASE + ${spring-boot.version} @@ -66,6 +66,7 @@ UTF-8 1.8 Edgware.SR1 + 1.5.9.RELEASE diff --git a/spring-freemarker/pom.xml b/spring-freemarker/pom.xml index c71643dc39..40558476ef 100644 --- a/spring-freemarker/pom.xml +++ b/spring-freemarker/pom.xml @@ -48,7 +48,7 @@ org.springframework.boot spring-boot-starter-test - 1.5.10.RELEASE + ${spring-boot.version} test @@ -59,6 +59,7 @@ 2.3.28 3.1.0 false + 1.5.10.RELEASE diff --git a/spring-jersey/pom.xml b/spring-jersey/pom.xml index c12f6a1241..5a12d27180 100644 --- a/spring-jersey/pom.xml +++ b/spring-jersey/pom.xml @@ -95,28 +95,28 @@ com.github.tomakehurst wiremock - 1.58 + ${wiremock.version} test com.fasterxml.jackson.jaxrs jackson-jaxrs-json-provider - 2.9.7 + ${jackson.version} com.fasterxml.jackson.core jackson-databind - 2.9.7 + ${jackson.version} org.slf4j slf4j-jdk14 - 1.7.25 + ${org.slf4j.version} org.assertj assertj-core - 3.10.0 + ${assertj-core.version} test @@ -124,7 +124,7 @@ org.springframework.boot spring-boot-starter-test - 1.5.10.RELEASE + ${spring-boot.version} test @@ -228,6 +228,9 @@ 4.4.9 4.5.5 4.0.0 + 1.58 + 3.10.0 + 1.5.10.RELEASE diff --git a/spring-mvc-simple/pom.xml b/spring-mvc-simple/pom.xml index b9ed3a3e81..cdd4a9e13a 100644 --- a/spring-mvc-simple/pom.xml +++ b/spring-mvc-simple/pom.xml @@ -22,7 +22,7 @@ com.sun.mail javax.mail - 1.6.1 + ${javax.mail.version} javax.servlet @@ -182,6 +182,7 @@ 5.1.0 20180130 3.0.8 + 1.6.1 diff --git a/spring-mvc-xml/pom.xml b/spring-mvc-xml/pom.xml index c6a6da406c..beea8e5ee2 100644 --- a/spring-mvc-xml/pom.xml +++ b/spring-mvc-xml/pom.xml @@ -88,7 +88,7 @@ org.springframework.boot spring-boot-starter-test - 1.5.10.RELEASE + ${spring-boot.version} test @@ -118,6 +118,7 @@ 5.0.2.RELEASE + 1.5.10.RELEASE 5.1.40 diff --git a/spring-reactor/pom.xml b/spring-reactor/pom.xml index 051244c9db..2d69096c58 100644 --- a/spring-reactor/pom.xml +++ b/spring-reactor/pom.xml @@ -27,12 +27,17 @@ io.projectreactor reactor-bus - 2.0.8.RELEASE + ${reactor.version} io.projectreactor reactor-core - 2.0.8.RELEASE + ${reactor.version} + + + 2.0.2.RELEASE + 2.0.8.RELEASE + diff --git a/spring-security-mvc-jsonview/pom.xml b/spring-security-mvc-jsonview/pom.xml index b6d3e7e399..8fa7b4ffb5 100644 --- a/spring-security-mvc-jsonview/pom.xml +++ b/spring-security-mvc-jsonview/pom.xml @@ -20,17 +20,17 @@ com.fasterxml.jackson.core jackson-core - 2.9.7 + ${jackson.version} com.fasterxml.jackson.core jackson-annotations - 2.9.7 + ${jackson.version} com.fasterxml.jackson.core jackson-databind - 2.9.7 + ${jackson.version} @@ -139,7 +139,7 @@ com.jayway.jsonpath json-path - 2.4.0 + ${json-path.version} test @@ -213,6 +213,7 @@ 2.6 1.6.1 + 2.4.0 diff --git a/spring-security-mvc-persisted-remember-me/pom.xml b/spring-security-mvc-persisted-remember-me/pom.xml index c65b7a30cb..d10565255d 100644 --- a/spring-security-mvc-persisted-remember-me/pom.xml +++ b/spring-security-mvc-persisted-remember-me/pom.xml @@ -137,7 +137,7 @@ org.springframework.boot spring-boot-starter-test - 1.5.10.RELEASE + ${spring-boot.version} test @@ -211,7 +211,7 @@ 2.6 1.6.1 - + 1.5.10.RELEASE \ No newline at end of file diff --git a/spring-security-stormpath/pom.xml b/spring-security-stormpath/pom.xml index dd6037a22c..6db4b38d80 100644 --- a/spring-security-stormpath/pom.xml +++ b/spring-security-stormpath/pom.xml @@ -32,7 +32,7 @@ com.stormpath.spring stormpath-default-spring-boot-starter - 1.5.4 + ${stormpath-spring.version} @@ -60,5 +60,9 @@ + + + 1.5.4 + diff --git a/spring-session/spring-session-jdbc/pom.xml b/spring-session/spring-session-jdbc/pom.xml index a98c4b3429..b46b549ce2 100644 --- a/spring-session/spring-session-jdbc/pom.xml +++ b/spring-session/spring-session-jdbc/pom.xml @@ -10,10 +10,6 @@ jar Spring Session with JDBC tutorial - - 1.4.197 - - parent-boot-2 com.baeldung @@ -52,5 +48,8 @@ + + 1.4.197 + \ No newline at end of file diff --git a/tensorflow-java/pom.xml b/tensorflow-java/pom.xml index e9d92157e8..f52cd4a68f 100644 --- a/tensorflow-java/pom.xml +++ b/tensorflow-java/pom.xml @@ -15,12 +15,6 @@ 1.0.0-SNAPSHOT - - 1.8 - 1.12.0 - 5.4.0 - - org.tensorflow @@ -49,4 +43,10 @@ + + + 1.8 + 1.12.0 + 5.4.0 + \ No newline at end of file diff --git a/testing-modules/load-testing-comparison/pom.xml b/testing-modules/load-testing-comparison/pom.xml index 63472d0467..44014e96ab 100644 --- a/testing-modules/load-testing-comparison/pom.xml +++ b/testing-modules/load-testing-comparison/pom.xml @@ -42,7 +42,7 @@ com.fasterxml.jackson.core jackson-databind - 2.9.4 + ${jackson.version} org.springframework.boot @@ -68,12 +68,12 @@ com.h2database h2 - 1.4.197 + ${h2.version} org.projectlombok lombok - 1.18.2 + ${lombok.version} compile @@ -145,6 +145,7 @@ 5.0 3.11 2.0.5.RELEASE + 1.4.197 \ No newline at end of file diff --git a/testing-modules/parallel-tests-junit/math-test-functions/pom.xml b/testing-modules/parallel-tests-junit/math-test-functions/pom.xml index a3569714ef..cc9f27de05 100644 --- a/testing-modules/parallel-tests-junit/math-test-functions/pom.xml +++ b/testing-modules/parallel-tests-junit/math-test-functions/pom.xml @@ -18,7 +18,7 @@ junit junit - 4.12 + ${junit.version} test diff --git a/testing-modules/parallel-tests-junit/pom.xml b/testing-modules/parallel-tests-junit/pom.xml index f400a5ae07..993974046c 100644 --- a/testing-modules/parallel-tests-junit/pom.xml +++ b/testing-modules/parallel-tests-junit/pom.xml @@ -6,6 +6,13 @@ 0.0.1-SNAPSHOT parallel-tests-junit pom + + + com.baeldung + parent-java + 0.0.1-SNAPSHOT + ../../parent-java + math-test-functions diff --git a/testing-modules/parallel-tests-junit/string-test-functions/pom.xml b/testing-modules/parallel-tests-junit/string-test-functions/pom.xml index 7fa09ff493..b0c0ed29fc 100644 --- a/testing-modules/parallel-tests-junit/string-test-functions/pom.xml +++ b/testing-modules/parallel-tests-junit/string-test-functions/pom.xml @@ -18,7 +18,7 @@ junit junit - 4.12 + ${junit.version} test diff --git a/testing-modules/testing/pom.xml b/testing-modules/testing/pom.xml index 2e783b2116..ccfa1070d1 100644 --- a/testing-modules/testing/pom.xml +++ b/testing-modules/testing/pom.xml @@ -91,7 +91,7 @@ com.github.javafaker javafaker - 0.15 + ${javafaker.version} @@ -177,6 +177,7 @@ 0.4 3.0.0 1.5 + 0.15 From 54c29a4b3e78b0414f85e976c39e4ce3e6144106 Mon Sep 17 00:00:00 2001 From: eric-martin Date: Sat, 6 Apr 2019 18:37:30 -0500 Subject: [PATCH 24/27] BAEL-1959: Moved to logging-modules/logback --- libraries/pom.xml | 10 ---------- logging-modules/logback/pom.xml | 17 +++++++++++++++++ 2 files changed, 17 insertions(+), 10 deletions(-) diff --git a/libraries/pom.xml b/libraries/pom.xml index cca821bbb5..7823732224 100644 --- a/libraries/pom.xml +++ b/libraries/pom.xml @@ -481,16 +481,6 @@ org.docx4j docx4j ${docx4j.version} - - - org.slf4j - slf4j-log4j12 - - - log4j - log4j - - javax.xml.bind diff --git a/logging-modules/logback/pom.xml b/logging-modules/logback/pom.xml index 845424af0c..41a28ffd17 100644 --- a/logging-modules/logback/pom.xml +++ b/logging-modules/logback/pom.xml @@ -37,12 +37,29 @@ jackson-databind ${jackson.version} + + org.docx4j + docx4j + ${docx4j.version} + + + org.slf4j + slf4j-log4j12 + + + log4j + log4j + + + + 1.2.3 0.1.5 2.9.7 + 3.3.5 From d0c21cad25eb9a744fb1472ec831c7ac7be45e2a Mon Sep 17 00:00:00 2001 From: amit2103 Date: Sun, 7 Apr 2019 11:30:58 +0530 Subject: [PATCH 25/27] [BAEL-13313] - Fixed PMD violation for string-test-functions module unit test --- .../{StringFunctionTest.java => StringFunctionUnitTest.java} | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename testing-modules/parallel-tests-junit/string-test-functions/src/test/java/com/baeldung/{StringFunctionTest.java => StringFunctionUnitTest.java} (88%) diff --git a/testing-modules/parallel-tests-junit/string-test-functions/src/test/java/com/baeldung/StringFunctionTest.java b/testing-modules/parallel-tests-junit/string-test-functions/src/test/java/com/baeldung/StringFunctionUnitTest.java similarity index 88% rename from testing-modules/parallel-tests-junit/string-test-functions/src/test/java/com/baeldung/StringFunctionTest.java rename to testing-modules/parallel-tests-junit/string-test-functions/src/test/java/com/baeldung/StringFunctionUnitTest.java index 7f2bc5e5e7..685a33b084 100644 --- a/testing-modules/parallel-tests-junit/string-test-functions/src/test/java/com/baeldung/StringFunctionTest.java +++ b/testing-modules/parallel-tests-junit/string-test-functions/src/test/java/com/baeldung/StringFunctionUnitTest.java @@ -4,7 +4,7 @@ import static org.junit.Assert.assertEquals; import org.junit.Test; -public class StringFunctionTest { +public class StringFunctionUnitTest { @Test public void test_upperCase() { From 42667dc3b3b757d1643b68049769861784a05443 Mon Sep 17 00:00:00 2001 From: amit2103 Date: Sun, 7 Apr 2019 11:41:04 +0530 Subject: [PATCH 26/27] [BAEL-13313] - Fixed PMD violation for math-test-functions module --- ...thmeticFunctionTest.java => ArithmeticFunctionUnitTest.java} | 2 +- ...parisonFunctionTest.java => ComparisonFunctionUnitTest.java} | 2 +- .../src/test/java/com/baeldung/FunctionTestSuite.java | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) rename testing-modules/parallel-tests-junit/math-test-functions/src/test/java/com/baeldung/{ArithmeticFunctionTest.java => ArithmeticFunctionUnitTest.java} (93%) rename testing-modules/parallel-tests-junit/math-test-functions/src/test/java/com/baeldung/{ComparisonFunctionTest.java => ComparisonFunctionUnitTest.java} (87%) diff --git a/testing-modules/parallel-tests-junit/math-test-functions/src/test/java/com/baeldung/ArithmeticFunctionTest.java b/testing-modules/parallel-tests-junit/math-test-functions/src/test/java/com/baeldung/ArithmeticFunctionUnitTest.java similarity index 93% rename from testing-modules/parallel-tests-junit/math-test-functions/src/test/java/com/baeldung/ArithmeticFunctionTest.java rename to testing-modules/parallel-tests-junit/math-test-functions/src/test/java/com/baeldung/ArithmeticFunctionUnitTest.java index df0aa695fc..1f048b305f 100644 --- a/testing-modules/parallel-tests-junit/math-test-functions/src/test/java/com/baeldung/ArithmeticFunctionTest.java +++ b/testing-modules/parallel-tests-junit/math-test-functions/src/test/java/com/baeldung/ArithmeticFunctionUnitTest.java @@ -4,7 +4,7 @@ import static org.junit.Assert.assertEquals; import org.junit.Test; -public class ArithmeticFunctionTest { +public class ArithmeticFunctionUnitTest { @Test public void test_addingIntegers_returnsSum() { diff --git a/testing-modules/parallel-tests-junit/math-test-functions/src/test/java/com/baeldung/ComparisonFunctionTest.java b/testing-modules/parallel-tests-junit/math-test-functions/src/test/java/com/baeldung/ComparisonFunctionUnitTest.java similarity index 87% rename from testing-modules/parallel-tests-junit/math-test-functions/src/test/java/com/baeldung/ComparisonFunctionTest.java rename to testing-modules/parallel-tests-junit/math-test-functions/src/test/java/com/baeldung/ComparisonFunctionUnitTest.java index 4f72c87279..839b6c2cf3 100644 --- a/testing-modules/parallel-tests-junit/math-test-functions/src/test/java/com/baeldung/ComparisonFunctionTest.java +++ b/testing-modules/parallel-tests-junit/math-test-functions/src/test/java/com/baeldung/ComparisonFunctionUnitTest.java @@ -4,7 +4,7 @@ import static org.junit.Assert.assertEquals; import org.junit.Test; -public class ComparisonFunctionTest { +public class ComparisonFunctionUnitTest { @Test public void test_findMax() { diff --git a/testing-modules/parallel-tests-junit/math-test-functions/src/test/java/com/baeldung/FunctionTestSuite.java b/testing-modules/parallel-tests-junit/math-test-functions/src/test/java/com/baeldung/FunctionTestSuite.java index 4fe551b365..d12eab5c51 100644 --- a/testing-modules/parallel-tests-junit/math-test-functions/src/test/java/com/baeldung/FunctionTestSuite.java +++ b/testing-modules/parallel-tests-junit/math-test-functions/src/test/java/com/baeldung/FunctionTestSuite.java @@ -5,7 +5,7 @@ import org.junit.runners.Suite; import org.junit.runners.Suite.SuiteClasses; @RunWith(Suite.class) -@SuiteClasses({ ComparisonFunctionTest.class, ArithmeticFunctionTest.class }) +@SuiteClasses({ ComparisonFunctionUnitTest.class, ArithmeticFunctionUnitTest.class }) public class FunctionTestSuite { } From c42110372456670f19d0091b9b62efbfcc465f7f Mon Sep 17 00:00:00 2001 From: amit2103 Date: Sun, 7 Apr 2019 11:55:35 +0530 Subject: [PATCH 27/27] [BAEL-13378] - Added submodules in integration profiles also --- pom.xml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 5c77c7736e..e0622d3d6e 100644 --- a/pom.xml +++ b/pom.xml @@ -989,7 +989,7 @@ parent-spring-5 parent-java parent-kotlin - + akka-streams algorithms-genetic algorithms-miscellaneous-1 @@ -1045,6 +1045,7 @@ core-java-lang-syntax core-java-lang core-java-lang-oop + core-java-lang-oop-2 core-java-networking core-java-perf core-java-sun @@ -1092,6 +1093,7 @@ jackson-2 java-collections-conversions java-collections-maps + java-collections-maps-2 java-ee-8-security-api java-lite @@ -1099,6 +1101,7 @@ java-rmi java-spi java-streams + java-streams-2 java-strings java-vavr-stream java-websocket @@ -1258,6 +1261,7 @@ spring-boot-mvc spring-boot-ops spring-boot-rest + spring-boot-data spring-boot-property-exp spring-boot-security spring-boot-vue @@ -1303,11 +1307,13 @@ spring-mvc-java spring-mvc-kotlin spring-mvc-simple + spring-mvc-simple-2 spring-mvc-velocity spring-mvc-webflow spring-mvc-xml spring-protobuf + spring-quartz