diff --git a/core-java-modules/core-java-io-apis-2/README.md b/core-java-modules/core-java-io-apis-2/README.md index f3d72fe8b5..bbaf7d9584 100644 --- a/core-java-modules/core-java-io-apis-2/README.md +++ b/core-java-modules/core-java-io-apis-2/README.md @@ -5,3 +5,5 @@ This module contains articles about core Java input/output(IO) APIs. ### Relevant Articles: - [Constructing a Relative Path From Two Absolute Paths in Java](https://www.baeldung.com/java-relative-path-absolute) - [Java Scanner Taking a Character Input](https://www.baeldung.com/java-scanner-character-input) +- [Get the Desktop Path in Java](https://www.baeldung.com/java-desktop-path) + diff --git a/core-java-modules/core-java-io-apis-2/src/test/java/com/baeldung/scanner/NextLineVsNextIntUnitTest.java b/core-java-modules/core-java-io-apis-2/src/test/java/com/baeldung/scanner/NextLineVsNextIntUnitTest.java new file mode 100644 index 0000000000..8fab7c62e9 --- /dev/null +++ b/core-java-modules/core-java-io-apis-2/src/test/java/com/baeldung/scanner/NextLineVsNextIntUnitTest.java @@ -0,0 +1,85 @@ +package com.baeldung.scanner; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertThrows; + +import java.util.InputMismatchException; +import java.util.Scanner; + +import org.junit.jupiter.api.Test; + +public class NextLineVsNextIntUnitTest { + + @Test + void whenInputLineIsNumber_thenNextLineAndNextIntBothWork() { + String input = "42\n"; + + //nextLine() + Scanner sc1 = new Scanner(input); + int num1 = Integer.parseInt(sc1.nextLine()); + assertEquals(42, num1); + + //nextInt() + Scanner sc2 = new Scanner(input); + int num2 = sc2.nextInt(); + assertEquals(42, num2); + + } + + @Test + void whenInputIsNotValidNumber_thenNextLineAndNextIntThrowDifferentException() { + String input = "Nan\n"; + + //nextLine() -> NumberFormatException + Scanner sc1 = new Scanner(input); + assertThrows(NumberFormatException.class, () -> Integer.parseInt(sc1.nextLine())); + + //nextInt() -> InputMismatchException + Scanner sc2 = new Scanner(input); + assertThrows(InputMismatchException.class, sc2::nextInt); + } + + @Test + void whenUsingNextInt_thenTheNextTokenAfterItFailsToParseIsNotConsumed() { + String input = "42 is a magic number\n"; + + //nextInt() to read '42' + Scanner sc2 = new Scanner(input); + int num2 = sc2.nextInt(); + assertEquals(42, num2); + + // call nextInt() again on "is" + assertThrows(InputMismatchException.class, sc2::nextInt); + + String theNextToken = sc2.next(); + assertEquals("is", theNextToken); + + theNextToken = sc2.next(); + assertEquals("a", theNextToken); + } + + @Test + void whenReadingTwoInputLines_thenNextLineAndNextIntBehaveDifferently() { + + String input = new StringBuilder().append("42\n") + .append("It is a magic number.\n") + .toString(); + + //nextLine() + Scanner sc1 = new Scanner(input); + int num1 = Integer.parseInt(sc1.nextLine()); + String nextLineText1 = sc1.nextLine(); + assertEquals(42, num1); + assertEquals("It is a magic number.", nextLineText1); + + //nextInt() + Scanner sc2 = new Scanner(input); + int num2 = sc2.nextInt(); + assertEquals(42, num2); + + // nextInt() leaves the newline character (\n) behind + String nextLineText2 = sc2.nextLine(); + assertEquals("", nextLineText2); + } + +} \ No newline at end of file diff --git a/core-java-modules/core-java-nio-2/README.md b/core-java-modules/core-java-nio-2/README.md index 308356cf8b..527600779a 100644 --- a/core-java-modules/core-java-nio-2/README.md +++ b/core-java-modules/core-java-nio-2/README.md @@ -14,5 +14,4 @@ This module contains articles about core Java non-blocking input and output (IO) - [What Is the Difference Between NIO and NIO.2?](https://www.baeldung.com/java-nio-vs-nio-2) - [Guide to ByteBuffer](https://www.baeldung.com/java-bytebuffer) - [Find Files that Match Wildcard Strings in Java](https://www.baeldung.com/java-files-match-wildcard-strings) -- [Get the Desktop Path in Java](https://www.baeldung.com/java-desktop-path) - [[<-- Prev]](/core-java-modules/core-java-nio) diff --git a/core-java-modules/core-java-streams-4/README.md b/core-java-modules/core-java-streams-4/README.md index 4175fb1f70..c6717ec5fe 100644 --- a/core-java-modules/core-java-streams-4/README.md +++ b/core-java-modules/core-java-streams-4/README.md @@ -10,4 +10,3 @@ - [Understanding the Difference Between Stream.of() and IntStream.range()](https://www.baeldung.com/java-stream-of-and-intstream-range) - [Check if Object Is an Array in Java](https://www.baeldung.com/java-check-if-object-is-an-array) - [Mapping an Array of Integers to Strings Using Java Streams](https://www.baeldung.com/java-stream-integer-array-to-strings) -- [Difference Between parallelStream() and stream().parallel() in Java](https://www.baeldung.com/java-parallelstream-vs-stream-parallel) diff --git a/core-java-modules/core-java-streams-5/README.md b/core-java-modules/core-java-streams-5/README.md new file mode 100644 index 0000000000..4f367799f2 --- /dev/null +++ b/core-java-modules/core-java-streams-5/README.md @@ -0,0 +1 @@ +- [Difference Between parallelStream() and stream().parallel() in Java](https://www.baeldung.com/java-parallelstream-vs-stream-parallel) diff --git a/core-java-modules/core-java-streams-5/pom.xml b/core-java-modules/core-java-streams-5/pom.xml new file mode 100644 index 0000000000..d1f8af6461 --- /dev/null +++ b/core-java-modules/core-java-streams-5/pom.xml @@ -0,0 +1,72 @@ + + + 4.0.0 + core-java-streams-5 + core-java-streams-5 + jar + + + com.baeldung.core-java-modules + core-java-modules + 0.0.1-SNAPSHOT + + + + + log4j + log4j + ${log4j.version} + + + org.junit + junit-bom + ${junit-jupiter.version} + pom + import + + + org.assertj + assertj-core + 3.23.1 + test + + + org.apache.commons + commons-lang3 + 3.12.0 + test + + + + + core-java-streams-4 + + + ../core-java-streams-4/src/main + true + + + + + org.apache.maven.plugins + maven-compiler-plugin + ${maven-compiler-plugin.version} + + ${maven.compiler.source} + ${maven.compiler.target} + -parameters + + + + + + + + 3.1 + 12 + 12 + + + \ No newline at end of file diff --git a/core-java-modules/core-java-streams-4/src/main/java/com/baeldung/streams/parallelstream/Book.java b/core-java-modules/core-java-streams-5/src/main/java/com/baeldung/streams/parallelstream/Book.java similarity index 99% rename from core-java-modules/core-java-streams-4/src/main/java/com/baeldung/streams/parallelstream/Book.java rename to core-java-modules/core-java-streams-5/src/main/java/com/baeldung/streams/parallelstream/Book.java index 165df55166..d52a31aac9 100644 --- a/core-java-modules/core-java-streams-4/src/main/java/com/baeldung/streams/parallelstream/Book.java +++ b/core-java-modules/core-java-streams-5/src/main/java/com/baeldung/streams/parallelstream/Book.java @@ -34,4 +34,4 @@ public class Book { public void setYearPublished(int yearPublished) { this.yearPublished = yearPublished; } -} +} \ No newline at end of file diff --git a/core-java-modules/core-java-streams-4/src/main/java/com/baeldung/streams/parallelstream/BookSpliterator.java b/core-java-modules/core-java-streams-5/src/main/java/com/baeldung/streams/parallelstream/BookSpliterator.java similarity index 99% rename from core-java-modules/core-java-streams-4/src/main/java/com/baeldung/streams/parallelstream/BookSpliterator.java rename to core-java-modules/core-java-streams-5/src/main/java/com/baeldung/streams/parallelstream/BookSpliterator.java index 14e87e0b07..7460e1372b 100644 --- a/core-java-modules/core-java-streams-4/src/main/java/com/baeldung/streams/parallelstream/BookSpliterator.java +++ b/core-java-modules/core-java-streams-5/src/main/java/com/baeldung/streams/parallelstream/BookSpliterator.java @@ -37,4 +37,4 @@ public class BookSpliterator implements Spliterator { public int characteristics() { return CONCURRENT; } -} +} \ No newline at end of file diff --git a/core-java-modules/core-java-streams-4/src/main/java/com/baeldung/streams/parallelstream/MyBookContainer.java b/core-java-modules/core-java-streams-5/src/main/java/com/baeldung/streams/parallelstream/MyBookContainer.java similarity index 99% rename from core-java-modules/core-java-streams-4/src/main/java/com/baeldung/streams/parallelstream/MyBookContainer.java rename to core-java-modules/core-java-streams-5/src/main/java/com/baeldung/streams/parallelstream/MyBookContainer.java index dc4b0e2623..d7e3adc5f1 100644 --- a/core-java-modules/core-java-streams-4/src/main/java/com/baeldung/streams/parallelstream/MyBookContainer.java +++ b/core-java-modules/core-java-streams-5/src/main/java/com/baeldung/streams/parallelstream/MyBookContainer.java @@ -90,4 +90,4 @@ public class MyBookContainer implements Collection { public void clear() { } -} +} \ No newline at end of file diff --git a/core-java-modules/core-java-streams-4/src/main/java/com/baeldung/streams/parallelstream/ParallelStreamApplication.java b/core-java-modules/core-java-streams-5/src/main/java/com/baeldung/streams/parallelstream/ParallelStreamApplication.java similarity index 99% rename from core-java-modules/core-java-streams-4/src/main/java/com/baeldung/streams/parallelstream/ParallelStreamApplication.java rename to core-java-modules/core-java-streams-5/src/main/java/com/baeldung/streams/parallelstream/ParallelStreamApplication.java index 9cdaf58bfb..4297bdd3ed 100644 --- a/core-java-modules/core-java-streams-4/src/main/java/com/baeldung/streams/parallelstream/ParallelStreamApplication.java +++ b/core-java-modules/core-java-streams-5/src/main/java/com/baeldung/streams/parallelstream/ParallelStreamApplication.java @@ -38,4 +38,4 @@ public class ParallelStreamApplication { }); return countOfBooks.get(); } -} +} \ No newline at end of file diff --git a/core-java-modules/core-java-streams-4/src/test/java/parallelstream/ParallelStreamUnitTest.java b/core-java-modules/core-java-streams-5/src/test/java/com/baeldung/parallelstream/ParallelStreamUnitTest.java similarity index 97% rename from core-java-modules/core-java-streams-4/src/test/java/parallelstream/ParallelStreamUnitTest.java rename to core-java-modules/core-java-streams-5/src/test/java/com/baeldung/parallelstream/ParallelStreamUnitTest.java index 5542a21020..af8172a10d 100644 --- a/core-java-modules/core-java-streams-4/src/test/java/parallelstream/ParallelStreamUnitTest.java +++ b/core-java-modules/core-java-streams-5/src/test/java/com/baeldung/parallelstream/ParallelStreamUnitTest.java @@ -1,6 +1,5 @@ -package parallelstream; +package com.baeldung.parallelstream; -import java.util.ArrayList; import java.util.List; import org.junit.Assert; diff --git a/java-jdi/pom.xml b/java-jdi/pom.xml index b4c11c1bfe..dded13896f 100644 --- a/java-jdi/pom.xml +++ b/java-jdi/pom.xml @@ -15,13 +15,7 @@ - - com.sun - tools - ${tools.version} - system - ${java.home}/../lib/tools.jar - + @@ -32,10 +26,25 @@ true + + + org.apache.maven.plugins + maven-compiler-plugin + + ${maven.compiler.source.version} + ${maven.compiler.target.version} + + --add-exports=jdk.jdi/com.sun.jdi=ALL-UNNAMED + + + + + - 1.8 + 17 + 17 \ No newline at end of file diff --git a/libraries-ai/README.md b/libraries-ai/README.md new file mode 100644 index 0000000000..8b13789179 --- /dev/null +++ b/libraries-ai/README.md @@ -0,0 +1 @@ + diff --git a/libraries-ai/pom.xml b/libraries-ai/pom.xml new file mode 100644 index 0000000000..2c1490440f --- /dev/null +++ b/libraries-ai/pom.xml @@ -0,0 +1,33 @@ + + + 4.0.0 + libraries-ai + libraries-ai + + + com.baeldung + parent-modules + 1.0.0-SNAPSHOT + + + + + edu.stanford.nlp + stanford-corenlp + ${stanford-corenlp.version} + + + org.apache.opennlp + opennlp-tools + ${opennlp-tools.version} + + + + + 4.5.3 + 2.1.1 + + + \ No newline at end of file diff --git a/libraries-ai/src/test/java/com/baeldung/nlp/CoreNLPTokenizerUnitTest.java b/libraries-ai/src/test/java/com/baeldung/nlp/CoreNLPTokenizerUnitTest.java new file mode 100644 index 0000000000..11c5cd0be8 --- /dev/null +++ b/libraries-ai/src/test/java/com/baeldung/nlp/CoreNLPTokenizerUnitTest.java @@ -0,0 +1,41 @@ +package com.baeldung.nlp; + +import edu.stanford.nlp.ling.CoreAnnotations; +import edu.stanford.nlp.ling.CoreLabel; +import edu.stanford.nlp.pipeline.Annotation; +import edu.stanford.nlp.pipeline.StanfordCoreNLP; +import edu.stanford.nlp.util.CoreMap; +import org.junit.Test; + +import java.util.List; +import java.util.Properties; + +import static org.junit.Assert.assertEquals; + +public class CoreNLPTokenizerUnitTest { + @Test + public void givenSampleText_whenTokenize_thenExpectedTokensReturned() { + + Properties props = new Properties(); + props.setProperty("annotators", "tokenize"); + + StanfordCoreNLP pipeline = new StanfordCoreNLP(props); + String text = "The german shepard display an act of kindness"; + + Annotation document = new Annotation(text); + pipeline.annotate(document); + + List sentences = document.get(CoreAnnotations.SentencesAnnotation.class); + StringBuilder tokens = new StringBuilder(); + + for (CoreMap sentence : sentences) { + for (CoreLabel token : sentence.get(CoreAnnotations.TokensAnnotation.class)) { + String word = token.get(CoreAnnotations.TextAnnotation.class); + tokens.append(word) + .append(" "); + } + } + assertEquals("The german shepard display an act of kindness", tokens.toString() + .trim()); + } +} diff --git a/libraries-ai/src/test/java/com/baeldung/nlp/OpenNLPLanguageDetector.java b/libraries-ai/src/test/java/com/baeldung/nlp/OpenNLPLanguageDetector.java new file mode 100644 index 0000000000..00792b4875 --- /dev/null +++ b/libraries-ai/src/test/java/com/baeldung/nlp/OpenNLPLanguageDetector.java @@ -0,0 +1,33 @@ +package com.baeldung.nlp; + +import opennlp.tools.langdetect.Language; +import opennlp.tools.langdetect.LanguageDetectorME; +import opennlp.tools.langdetect.LanguageDetectorModel; +import org.junit.jupiter.api.Test; + +import java.io.FileInputStream; +import java.io.IOException; +import java.io.InputStream; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +class OpenNLPLanguageDetector { + + @Test + public void givenTextInEnglish_whenDetectLanguage_thenReturnsEnglishLanguageCode() { + + String text = "the dream my father told me"; + LanguageDetectorModel model; + + try (InputStream modelIn = new FileInputStream("langdetect-183.bin")) { + model = new LanguageDetectorModel(modelIn); + } catch (IOException e) { + return; + } + + LanguageDetectorME detector = new LanguageDetectorME(model); + Language language = detector.predictLanguage(text); + + assertEquals("eng", language.getLang()); + } +} \ No newline at end of file diff --git a/libraries-data-2/pom.xml b/libraries-data-2/pom.xml index f673ebd470..655bad2e2b 100644 --- a/libraries-data-2/pom.xml +++ b/libraries-data-2/pom.xml @@ -134,6 +134,11 @@ ${byte-buddy.version} test + + io.swagger.parser.v3 + swagger-parser + ${swagger-parser.version} + @@ -171,6 +176,7 @@ 1.1.0 3.0.0 2.8.4 + 2.1.13 \ No newline at end of file diff --git a/libraries-data-2/src/main/java/com/baeldung/swaggerparser/SwaggerParser.java b/libraries-data-2/src/main/java/com/baeldung/swaggerparser/SwaggerParser.java new file mode 100644 index 0000000000..d1f04e680a --- /dev/null +++ b/libraries-data-2/src/main/java/com/baeldung/swaggerparser/SwaggerParser.java @@ -0,0 +1,92 @@ +package com.baeldung.swaggerparser; + +import java.util.List; + +import io.swagger.parser.OpenAPIParser; +import io.swagger.v3.oas.models.OpenAPI; +import io.swagger.v3.oas.models.PathItem; +import io.swagger.v3.oas.models.Paths; +import io.swagger.v3.oas.models.info.Info; +import io.swagger.v3.oas.models.responses.ApiResponse; +import io.swagger.v3.oas.models.responses.ApiResponses; +import io.swagger.v3.oas.models.servers.Server; +import io.swagger.v3.parser.core.models.SwaggerParseResult; + +public class SwaggerParser { + + private static String OPENAPI_SPECIFICATION_STRING = "{\"openapi\":\"3.0.0\",\"info\":{\"title\":\"User APIs\",\"version\":\"1.0\"},\"servers\":[{\"url\":\"https://jsonplaceholder.typicode.com\",\"description\":\"Json Place Holder Service\"}],\"paths\":{\"/users/{id}\":{\"parameters\":[{\"schema\":{\"type\":\"integer\"},\"name\":\"id\",\"in\":\"path\",\"required\":true}],\"get\":{\"summary\":\"Fetch user by ID\",\"tags\":[\"User\"],\"responses\":{\"200\":{\"description\":\"OK\",\"content\":{\"application/json\":{\"schema\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"integer\"},\"name\":{\"type\":\"string\"}}}}}}},\"operationId\":\"get-users-user_id\",\"description\":\"Retrieve a specific user by ID\"}}}}"; + + public static void main(String[] args) { + parseYAMLFile(); + parseJSONFile(); + parseString(); + } + + private static void parseString() { + SwaggerParseResult result = new OpenAPIParser().readContents(OPENAPI_SPECIFICATION_STRING, null, null); + + OpenAPI openAPI = result.getOpenAPI(); + + if (openAPI != null) { + printData(openAPI); + } + } + + private static void parseJSONFile() { + SwaggerParseResult result = new OpenAPIParser().readLocation("sample.yml", null, null); + + OpenAPI openAPI = result.getOpenAPI(); + + if (openAPI != null) { + printData(openAPI); + } + } + + private static void parseYAMLFile() { + SwaggerParseResult result = new OpenAPIParser().readLocation("sample.json", null, null); + + OpenAPI openAPI = result.getOpenAPI(); + + if (openAPI != null) { + printData(openAPI); + } + } + + private static void printData(OpenAPI openAPI) { + System.out.println(openAPI.getSpecVersion()); + + Info info = openAPI.getInfo(); + System.out.println(info.getTitle()); + System.out.println(info.getVersion()); + + List servers = openAPI.getServers(); + for (Server server : servers) { + System.out.println(server.getUrl()); + System.out.println(server.getDescription()); + } + + Paths paths = openAPI.getPaths(); + paths.entrySet() + .forEach(pathEntry -> { + System.out.println(pathEntry.getKey()); + + PathItem path = pathEntry.getValue(); + System.out.println(path.getGet() + .getSummary()); + System.out.println(path.getGet() + .getDescription()); + System.out.println(path.getGet() + .getOperationId()); + + ApiResponses responses = path.getGet() + .getResponses(); + responses.entrySet() + .forEach(responseEntry -> { + System.out.println(responseEntry.getKey()); + + ApiResponse response = responseEntry.getValue(); + System.out.println(response.getDescription()); + }); + }); + } +} diff --git a/libraries-data-2/src/main/resources/sample.json b/libraries-data-2/src/main/resources/sample.json new file mode 100644 index 0000000000..8b59bbb42a --- /dev/null +++ b/libraries-data-2/src/main/resources/sample.json @@ -0,0 +1,55 @@ +{ + "openapi": "3.0.0", + "info": { + "title": "User APIs", + "version": "1.0" + }, + "servers": [ + { + "url": "https://jsonplaceholder.typicode.com", + "description": "Json Place Holder Service" + } + ], + "paths": { + "/users/{id}": { + "parameters": [ + { + "schema": { + "type": "integer" + }, + "name": "id", + "in": "path", + "required": true + } + ], + "get": { + "summary": "Fetch user by ID", + "tags": [ + "User" + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "name": { + "type": "string" + } + } + } + } + } + } + }, + "operationId": "get-users-user_id", + "description": "Retrieve a specific user by ID" + } + } + } +} \ No newline at end of file diff --git a/libraries-data-2/src/main/resources/sample.yml b/libraries-data-2/src/main/resources/sample.yml new file mode 100644 index 0000000000..ddfa064393 --- /dev/null +++ b/libraries-data-2/src/main/resources/sample.yml @@ -0,0 +1,33 @@ +openapi: 3.0.0 +info: + title: User APIs + version: '1.0' +servers: + - url: https://jsonplaceholder.typicode.com + description: Json Place Holder Service +paths: + /users/{id}: + parameters: + - schema: + type: integer + name: id + in: path + required: true + get: + summary: Fetch user by ID + tags: + - User + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + id: + type: integer + name: + type: string + operationId: get-users-user_id + description: Retrieve a specific user by ID \ No newline at end of file diff --git a/libraries-data-2/src/test/java/com/baeldung/swaggerparser/SwaggerParserUnitTest.java b/libraries-data-2/src/test/java/com/baeldung/swaggerparser/SwaggerParserUnitTest.java new file mode 100644 index 0000000000..615bd917cb --- /dev/null +++ b/libraries-data-2/src/test/java/com/baeldung/swaggerparser/SwaggerParserUnitTest.java @@ -0,0 +1,65 @@ +package com.baeldung.swaggerparser; + +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertNotNull; +import static org.junit.jupiter.api.Assertions.assertNull; +import static org.junit.jupiter.api.Assertions.assertTrue; + +import java.util.List; + +import org.junit.jupiter.api.Test; + +import io.swagger.parser.OpenAPIParser; +import io.swagger.v3.oas.models.OpenAPI; +import io.swagger.v3.parser.core.models.SwaggerParseResult; + +public class SwaggerParserUnitTest { + + private static String OPENAPI_SPECIFICATION_STRING = "{\"openapi\":\"3.0.0\",\"info\":{\"title\":\"User APIs\",\"version\":\"1.0\"},\"servers\":[{\"url\":\"https://jsonplaceholder.typicode.com\",\"description\":\"Json Place Holder Service\"}],\"paths\":{\"/users/{id}\":{\"parameters\":[{\"schema\":{\"type\":\"integer\"},\"name\":\"id\",\"in\":\"path\",\"required\":true}],\"get\":{\"summary\":\"Fetch user by ID\",\"tags\":[\"User\"],\"responses\":{\"200\":{\"description\":\"OK\",\"content\":{\"application/json\":{\"schema\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"integer\"},\"name\":{\"type\":\"string\"}}}}}}},\"operationId\":\"get-users-user_id\",\"description\":\"Retrieve a specific user by ID\"}}}}"; + + @Test + public void givenAValidOpenAPIYAMLFile_whenParsing_thenCheckIfParsed() { + SwaggerParseResult result = new OpenAPIParser().readLocation("valid-openapi-sample.yml", null, null); + + OpenAPI openAPI = result.getOpenAPI(); + + assertNotNull(openAPI); + } + + @Test + public void givenAValidOpenAPIYAMLFile_whenParsing_thenCheckIfNotErrors() { + SwaggerParseResult result = new OpenAPIParser().readLocation("valid-openapi-sample.yml", null, null); + + List messages = result.getMessages(); + + assertTrue(messages.isEmpty()); + } + + @Test + public void givenAnInvalidOpenAPIYAMLFile_whenParsing_thenCheckIfErrors() { + SwaggerParseResult result = new OpenAPIParser().readLocation("invalid-openapi-sample.yml", null, null); + + List messages = result.getMessages(); + + assertFalse(messages.isEmpty()); + } + + @Test + public void givenAValidOpenAPISpecificationString_whenParsing_thenCheckIfParsed() { + SwaggerParseResult result = new OpenAPIParser().readContents(OPENAPI_SPECIFICATION_STRING, null, null); + + OpenAPI openAPI = result.getOpenAPI(); + + assertNotNull(openAPI); + } + + @Test + public void givenAValidOpenAPISpecificationString_whenParsing_thenCheckIfNotErrors() { + SwaggerParseResult result = new OpenAPIParser().readLocation(OPENAPI_SPECIFICATION_STRING, null, null); + + List messages = result.getMessages(); + + assertNull(messages); + } + +} diff --git a/libraries-data-2/src/test/resources/invalid-openapi-sample.yml b/libraries-data-2/src/test/resources/invalid-openapi-sample.yml new file mode 100644 index 0000000000..eaac64c9a9 --- /dev/null +++ b/libraries-data-2/src/test/resources/invalid-openapi-sample.yml @@ -0,0 +1,32 @@ +openapi: 3.0.0 +info: + title: User APIs + version: '1.0' +servers: + - description: Json Place Holder Service +paths: + /users/{id}: + parameters: + - schema: + type: integer + name: id + in: path + required: true + get: + summary: Fetch user by ID + tags: + - User + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + id: + type: integer + name: + type: string + operationId: get-users-user_id + description: Retrieve a specific user by ID \ No newline at end of file diff --git a/libraries-data-2/src/test/resources/valid-openapi-sample.yml b/libraries-data-2/src/test/resources/valid-openapi-sample.yml new file mode 100644 index 0000000000..ddfa064393 --- /dev/null +++ b/libraries-data-2/src/test/resources/valid-openapi-sample.yml @@ -0,0 +1,33 @@ +openapi: 3.0.0 +info: + title: User APIs + version: '1.0' +servers: + - url: https://jsonplaceholder.typicode.com + description: Json Place Holder Service +paths: + /users/{id}: + parameters: + - schema: + type: integer + name: id + in: path + required: true + get: + summary: Fetch user by ID + tags: + - User + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + id: + type: integer + name: + type: string + operationId: get-users-user_id + description: Retrieve a specific user by ID \ No newline at end of file diff --git a/pom.xml b/pom.xml index 428aa1d268..bef7603cff 100644 --- a/pom.xml +++ b/pom.xml @@ -354,8 +354,6 @@ - java-jdi - jetbrains language-interop @@ -547,8 +545,6 @@ - java-jdi - language-interop @@ -800,7 +796,6 @@ custom-pmd - spring-core-6 data-structures ddd-contexts jackson-modules @@ -868,7 +863,7 @@ hystrix jackson-simple java-blockchain - + java-jdi java-rmi java-spi javax-sound @@ -923,7 +918,6 @@ spring-activiti spring-core-2 spring-core-3 - spring-core-5 spring-di-3 spring-cucumber @@ -1053,7 +1047,6 @@ spring-aop spring-aop-2 custom-pmd - spring-core-6 data-structures ddd-contexts jackson-modules @@ -1123,7 +1116,7 @@ hystrix jackson-simple java-blockchain - + java-jdi java-rmi java-spi javax-sound @@ -1152,6 +1145,7 @@ libraries-http libraries-http-2 libraries-io + libraries-ai libraries-primitive libraries-rpc libraries-server @@ -1178,7 +1172,6 @@ spring-activiti spring-core-2 spring-core-3 - spring-core-5 spring-di-3 spring-cucumber diff --git a/spring-core-2/.gitignore b/spring-core-2/.gitignore deleted file mode 100644 index 83c05e60c8..0000000000 --- a/spring-core-2/.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 diff --git a/spring-core-2/README.md b/spring-core-2/README.md index 18e4e32d1f..80ae54b2a4 100644 --- a/spring-core-2/README.md +++ b/spring-core-2/README.md @@ -6,4 +6,9 @@ This module contains articles about core Spring functionality - [Quick Guide to Spring Bean Scopes](http://www.baeldung.com/spring-bean-scopes) - [Spring Events](https://www.baeldung.com/spring-events) +- [Solving Spring’s “not eligible for auto-proxying” Warning](https://www.baeldung.com/spring-not-eligible-for-auto-proxying) +- [Finding the Spring Version](https://www.baeldung.com/spring-find-version) +- [How Does the Spring Singleton Bean Serve Concurrent Requests?](https://www.baeldung.com/spring-singleton-concurrent-requests) +- [Reinitialize Singleton Bean in Spring Context](https://www.baeldung.com/spring-reinitialize-singleton-bean) +- [Getting the Current ApplicationContext in Spring](https://www.baeldung.com/spring-get-current-applicationcontext) - More articles: [[<-- prev]](/spring-core)[[next -->]](/spring-core-3) diff --git a/spring-core-2/pom.xml b/spring-core-2/pom.xml index d05090fa6b..bab47cb70c 100644 --- a/spring-core-2/pom.xml +++ b/spring-core-2/pom.xml @@ -15,29 +15,15 @@ ../parent-boot-2 - - - - org.springframework - spring-framework-bom - ${org.springframework.version} - pom - import - - - org.springframework - spring-core - ${org.springframework.version} - - - org.springframework.boot - spring-boot-starter-thymeleaf - ${org.springframework.version} - - - - + + org.springframework.boot + spring-boot-starter + + + org.springframework.boot + spring-boot-starter-web + com.fasterxml.jackson.core jackson-databind @@ -129,6 +115,11 @@ spring-test test + + org.springframework.boot + spring-boot-starter-test + test + net.javacrumbs.shedlock @@ -140,6 +131,10 @@ shedlock-provider-jdbc-template ${shedlock.version} + + org.projectlombok + lombok + @@ -164,8 +159,6 @@ com.baeldung.sample.App - - 5.3.0 1.3.2 5.2.5.Final diff --git a/spring-core-6/src/main/java/com/baeldung/applicationcontext/ApplicationContextProvider.java b/spring-core-2/src/main/java/com/baeldung/applicationcontext/ApplicationContextProvider.java similarity index 100% rename from spring-core-6/src/main/java/com/baeldung/applicationcontext/ApplicationContextProvider.java rename to spring-core-2/src/main/java/com/baeldung/applicationcontext/ApplicationContextProvider.java diff --git a/spring-core-6/src/main/java/com/baeldung/applicationcontext/ItemService.java b/spring-core-2/src/main/java/com/baeldung/applicationcontext/ItemService.java similarity index 100% rename from spring-core-6/src/main/java/com/baeldung/applicationcontext/ItemService.java rename to spring-core-2/src/main/java/com/baeldung/applicationcontext/ItemService.java diff --git a/spring-core-6/src/main/java/com/baeldung/applicationcontext/MyBean.java b/spring-core-2/src/main/java/com/baeldung/applicationcontext/MyBean.java similarity index 100% rename from spring-core-6/src/main/java/com/baeldung/applicationcontext/MyBean.java rename to spring-core-2/src/main/java/com/baeldung/applicationcontext/MyBean.java diff --git a/spring-core-5/src/main/java/com/baeldung/component/autoproxying/DataCache.java b/spring-core-2/src/main/java/com/baeldung/component/autoproxying/DataCache.java similarity index 100% rename from spring-core-5/src/main/java/com/baeldung/component/autoproxying/DataCache.java rename to spring-core-2/src/main/java/com/baeldung/component/autoproxying/DataCache.java diff --git a/spring-core-5/src/main/java/com/baeldung/component/autoproxying/EligibleForAutoProxyRandomIntProcessor.java b/spring-core-2/src/main/java/com/baeldung/component/autoproxying/EligibleForAutoProxyRandomIntProcessor.java similarity index 100% rename from spring-core-5/src/main/java/com/baeldung/component/autoproxying/EligibleForAutoProxyRandomIntProcessor.java rename to spring-core-2/src/main/java/com/baeldung/component/autoproxying/EligibleForAutoProxyRandomIntProcessor.java diff --git a/spring-core-5/src/main/java/com/baeldung/component/autoproxying/NotEligibleForAutoProxyRandomIntProcessor.java b/spring-core-2/src/main/java/com/baeldung/component/autoproxying/NotEligibleForAutoProxyRandomIntProcessor.java similarity index 100% rename from spring-core-5/src/main/java/com/baeldung/component/autoproxying/NotEligibleForAutoProxyRandomIntProcessor.java rename to spring-core-2/src/main/java/com/baeldung/component/autoproxying/NotEligibleForAutoProxyRandomIntProcessor.java diff --git a/spring-core-5/src/main/java/com/baeldung/component/autoproxying/RandomInt.java b/spring-core-2/src/main/java/com/baeldung/component/autoproxying/RandomInt.java similarity index 100% rename from spring-core-5/src/main/java/com/baeldung/component/autoproxying/RandomInt.java rename to spring-core-2/src/main/java/com/baeldung/component/autoproxying/RandomInt.java diff --git a/spring-core-5/src/main/java/com/baeldung/component/autoproxying/RandomIntGenerator.java b/spring-core-2/src/main/java/com/baeldung/component/autoproxying/RandomIntGenerator.java similarity index 100% rename from spring-core-5/src/main/java/com/baeldung/component/autoproxying/RandomIntGenerator.java rename to spring-core-2/src/main/java/com/baeldung/component/autoproxying/RandomIntGenerator.java diff --git a/spring-core-5/src/main/java/com/baeldung/concurrentrequest/ConcurrentRequestApplication.java b/spring-core-2/src/main/java/com/baeldung/concurrentrequest/ConcurrentRequestApplication.java similarity index 100% rename from spring-core-5/src/main/java/com/baeldung/concurrentrequest/ConcurrentRequestApplication.java rename to spring-core-2/src/main/java/com/baeldung/concurrentrequest/ConcurrentRequestApplication.java diff --git a/spring-core-5/src/main/java/com/baeldung/concurrentrequest/Product.java b/spring-core-2/src/main/java/com/baeldung/concurrentrequest/Product.java similarity index 100% rename from spring-core-5/src/main/java/com/baeldung/concurrentrequest/Product.java rename to spring-core-2/src/main/java/com/baeldung/concurrentrequest/Product.java diff --git a/spring-core-5/src/main/java/com/baeldung/concurrentrequest/ProductController.java b/spring-core-2/src/main/java/com/baeldung/concurrentrequest/ProductController.java similarity index 100% rename from spring-core-5/src/main/java/com/baeldung/concurrentrequest/ProductController.java rename to spring-core-2/src/main/java/com/baeldung/concurrentrequest/ProductController.java diff --git a/spring-core-5/src/main/java/com/baeldung/concurrentrequest/ProductService.java b/spring-core-2/src/main/java/com/baeldung/concurrentrequest/ProductService.java similarity index 100% rename from spring-core-5/src/main/java/com/baeldung/concurrentrequest/ProductService.java rename to spring-core-2/src/main/java/com/baeldung/concurrentrequest/ProductService.java diff --git a/spring-core-5/src/main/java/com/baeldung/concurrentrequest/Stock.java b/spring-core-2/src/main/java/com/baeldung/concurrentrequest/Stock.java similarity index 100% rename from spring-core-5/src/main/java/com/baeldung/concurrentrequest/Stock.java rename to spring-core-2/src/main/java/com/baeldung/concurrentrequest/Stock.java diff --git a/spring-core-6/src/main/java/com/baeldung/reinitializebean/ReinitializeBeanApp.java b/spring-core-2/src/main/java/com/baeldung/reinitializebean/ReinitializeBeanApp.java similarity index 100% rename from spring-core-6/src/main/java/com/baeldung/reinitializebean/ReinitializeBeanApp.java rename to spring-core-2/src/main/java/com/baeldung/reinitializebean/ReinitializeBeanApp.java diff --git a/spring-core-6/src/main/java/com/baeldung/reinitializebean/cache/ConfigManager.java b/spring-core-2/src/main/java/com/baeldung/reinitializebean/cache/ConfigManager.java similarity index 100% rename from spring-core-6/src/main/java/com/baeldung/reinitializebean/cache/ConfigManager.java rename to spring-core-2/src/main/java/com/baeldung/reinitializebean/cache/ConfigManager.java diff --git a/spring-core-6/src/main/java/com/baeldung/reinitializebean/controller/ConfigController.java b/spring-core-2/src/main/java/com/baeldung/reinitializebean/controller/ConfigController.java similarity index 100% rename from spring-core-6/src/main/java/com/baeldung/reinitializebean/controller/ConfigController.java rename to spring-core-2/src/main/java/com/baeldung/reinitializebean/controller/ConfigController.java diff --git a/spring-core-5/src/main/java/com/baeldung/version/VersionObtainer.java b/spring-core-2/src/main/java/com/baeldung/version/VersionObtainer.java similarity index 96% rename from spring-core-5/src/main/java/com/baeldung/version/VersionObtainer.java rename to spring-core-2/src/main/java/com/baeldung/version/VersionObtainer.java index 392cc44a72..e0e28c6181 100644 --- a/spring-core-5/src/main/java/com/baeldung/version/VersionObtainer.java +++ b/spring-core-2/src/main/java/com/baeldung/version/VersionObtainer.java @@ -1,20 +1,20 @@ -package com.baeldung.version; - -import org.springframework.boot.system.JavaVersion; -import org.springframework.boot.system.SystemProperties; -import org.springframework.core.SpringVersion; - -public class VersionObtainer { - - public String getSpringVersion() { - return SpringVersion.getVersion(); - } - - public String getJavaVersion() { - return JavaVersion.getJavaVersion().toString(); - } - - public String getJdkVersion() { - return SystemProperties.get("java.version"); - } -} +package com.baeldung.version; + +import org.springframework.boot.system.JavaVersion; +import org.springframework.boot.system.SystemProperties; +import org.springframework.core.SpringVersion; + +public class VersionObtainer { + + public String getSpringVersion() { + return SpringVersion.getVersion(); + } + + public String getJavaVersion() { + return JavaVersion.getJavaVersion().toString(); + } + + public String getJdkVersion() { + return SystemProperties.get("java.version"); + } +} diff --git a/spring-core-2/src/main/resources/application.properties b/spring-core-2/src/main/resources/application.properties index e69de29bb2..97916eec19 100644 --- a/spring-core-2/src/main/resources/application.properties +++ b/spring-core-2/src/main/resources/application.properties @@ -0,0 +1 @@ +config.file.path=./spring-core-2/src/main/resources/config.properties \ No newline at end of file diff --git a/spring-core-6/src/main/resources/config.properties b/spring-core-2/src/main/resources/config.properties similarity index 100% rename from spring-core-6/src/main/resources/config.properties rename to spring-core-2/src/main/resources/config.properties diff --git a/spring-core-6/src/test/java/com/baeldung/applicationcontext/ApplicationContextProviderUnitTest.java b/spring-core-2/src/test/java/com/baeldung/applicationcontext/ApplicationContextProviderUnitTest.java similarity index 100% rename from spring-core-6/src/test/java/com/baeldung/applicationcontext/ApplicationContextProviderUnitTest.java rename to spring-core-2/src/test/java/com/baeldung/applicationcontext/ApplicationContextProviderUnitTest.java diff --git a/spring-core-6/src/test/java/com/baeldung/applicationcontext/MyBeanUnitTest.java b/spring-core-2/src/test/java/com/baeldung/applicationcontext/MyBeanUnitTest.java similarity index 100% rename from spring-core-6/src/test/java/com/baeldung/applicationcontext/MyBeanUnitTest.java rename to spring-core-2/src/test/java/com/baeldung/applicationcontext/MyBeanUnitTest.java diff --git a/spring-core-6/src/test/java/com/baeldung/applicationcontext/TestContextConfig.java b/spring-core-2/src/test/java/com/baeldung/applicationcontext/TestContextConfig.java similarity index 100% rename from spring-core-6/src/test/java/com/baeldung/applicationcontext/TestContextConfig.java rename to spring-core-2/src/test/java/com/baeldung/applicationcontext/TestContextConfig.java diff --git a/spring-core-5/src/test/java/com/baeldung/component/autoproxying/EligibleForAutoProxyingIntegrationTest.java b/spring-core-2/src/test/java/com/baeldung/component/autoproxying/EligibleForAutoProxyingIntegrationTest.java similarity index 100% rename from spring-core-5/src/test/java/com/baeldung/component/autoproxying/EligibleForAutoProxyingIntegrationTest.java rename to spring-core-2/src/test/java/com/baeldung/component/autoproxying/EligibleForAutoProxyingIntegrationTest.java diff --git a/spring-core-5/src/test/java/com/baeldung/component/autoproxying/MemoryLogAppender.java b/spring-core-2/src/test/java/com/baeldung/component/autoproxying/MemoryLogAppender.java similarity index 100% rename from spring-core-5/src/test/java/com/baeldung/component/autoproxying/MemoryLogAppender.java rename to spring-core-2/src/test/java/com/baeldung/component/autoproxying/MemoryLogAppender.java diff --git a/spring-core-5/src/test/java/com/baeldung/component/autoproxying/NotEligibleForAutoProxyingIntegrationTest.java b/spring-core-2/src/test/java/com/baeldung/component/autoproxying/NotEligibleForAutoProxyingIntegrationTest.java similarity index 100% rename from spring-core-5/src/test/java/com/baeldung/component/autoproxying/NotEligibleForAutoProxyingIntegrationTest.java rename to spring-core-2/src/test/java/com/baeldung/component/autoproxying/NotEligibleForAutoProxyingIntegrationTest.java diff --git a/spring-core-5/src/test/java/com/baeldung/concurrentrequest/ConcurrentRequestManualTest.java b/spring-core-2/src/test/java/com/baeldung/concurrentrequest/ConcurrentRequestManualTest.java similarity index 100% rename from spring-core-5/src/test/java/com/baeldung/concurrentrequest/ConcurrentRequestManualTest.java rename to spring-core-2/src/test/java/com/baeldung/concurrentrequest/ConcurrentRequestManualTest.java diff --git a/spring-core-5/src/test/java/com/baeldung/version/VersionObtainerUnitTest.java b/spring-core-2/src/test/java/com/baeldung/version/VersionObtainerUnitTest.java similarity index 96% rename from spring-core-5/src/test/java/com/baeldung/version/VersionObtainerUnitTest.java rename to spring-core-2/src/test/java/com/baeldung/version/VersionObtainerUnitTest.java index 6d77cd1403..af074d5783 100644 --- a/spring-core-5/src/test/java/com/baeldung/version/VersionObtainerUnitTest.java +++ b/spring-core-2/src/test/java/com/baeldung/version/VersionObtainerUnitTest.java @@ -1,30 +1,30 @@ -package com.baeldung.version; - -import static org.assertj.core.api.Assertions.assertThat; - -import org.junit.Test; -import org.springframework.boot.test.context.SpringBootTest; - -@SpringBootTest(classes = VersionObtainer.class) -public class VersionObtainerUnitTest { - - public VersionObtainer version = new VersionObtainer(); - - @Test - public void testGetSpringVersion() { - String res = version.getSpringVersion(); - assertThat(res).isNotEmpty(); - } - - @Test - public void testGetJdkVersion() { - String res = version.getJdkVersion(); - assertThat(res).isNotEmpty(); - } - - @Test - public void testGetJavaVersion() { - String res = version.getJavaVersion(); - assertThat(res).isNotEmpty(); - } -} +package com.baeldung.version; + +import static org.assertj.core.api.Assertions.assertThat; + +import org.junit.Test; +import org.springframework.boot.test.context.SpringBootTest; + +@SpringBootTest(classes = VersionObtainer.class) +public class VersionObtainerUnitTest { + + public VersionObtainer version = new VersionObtainer(); + + @Test + public void testGetSpringVersion() { + String res = version.getSpringVersion(); + assertThat(res).isNotEmpty(); + } + + @Test + public void testGetJdkVersion() { + String res = version.getJdkVersion(); + assertThat(res).isNotEmpty(); + } + + @Test + public void testGetJavaVersion() { + String res = version.getJavaVersion(); + assertThat(res).isNotEmpty(); + } +} diff --git a/spring-core-3/README.md b/spring-core-3/README.md index 394f6e1857..ed88561e10 100644 --- a/spring-core-3/README.md +++ b/spring-core-3/README.md @@ -10,4 +10,5 @@ This module contains articles about core Spring functionality - [Design Patterns in the Spring Framework](https://www.baeldung.com/spring-framework-design-patterns) - [Difference Between BeanFactory and ApplicationContext](https://www.baeldung.com/spring-beanfactory-vs-applicationcontext) - [Custom Scope in Spring](http://www.baeldung.com/spring-custom-scope) +- [The Spring ApplicationContext](https://www.baeldung.com/spring-application-context) - More articles: [[<-- prev]](/spring-core-2) [[next -->]](/spring-core-4) diff --git a/spring-core-4/src/main/java/com/baeldung/applicationcontext/AccountConfig.java b/spring-core-3/src/main/java/com/baeldung/applicationcontext/AccountConfig.java similarity index 100% rename from spring-core-4/src/main/java/com/baeldung/applicationcontext/AccountConfig.java rename to spring-core-3/src/main/java/com/baeldung/applicationcontext/AccountConfig.java diff --git a/spring-core-4/src/main/java/com/baeldung/applicationcontext/AccountRepository.java b/spring-core-3/src/main/java/com/baeldung/applicationcontext/AccountRepository.java similarity index 100% rename from spring-core-4/src/main/java/com/baeldung/applicationcontext/AccountRepository.java rename to spring-core-3/src/main/java/com/baeldung/applicationcontext/AccountRepository.java diff --git a/spring-core-4/src/main/java/com/baeldung/applicationcontext/AccountService.java b/spring-core-3/src/main/java/com/baeldung/applicationcontext/AccountService.java similarity index 100% rename from spring-core-4/src/main/java/com/baeldung/applicationcontext/AccountService.java rename to spring-core-3/src/main/java/com/baeldung/applicationcontext/AccountService.java diff --git a/spring-core-4/src/main/java/com/baeldung/applicationcontext/MyWebApplicationInitializer.java b/spring-core-3/src/main/java/com/baeldung/applicationcontext/MyWebApplicationInitializer.java similarity index 100% rename from spring-core-4/src/main/java/com/baeldung/applicationcontext/MyWebApplicationInitializer.java rename to spring-core-3/src/main/java/com/baeldung/applicationcontext/MyWebApplicationInitializer.java diff --git a/spring-core-4/src/main/java/com/baeldung/applicationcontext/MyXmlWebApplicationInitializer.java b/spring-core-3/src/main/java/com/baeldung/applicationcontext/MyXmlWebApplicationInitializer.java similarity index 100% rename from spring-core-4/src/main/java/com/baeldung/applicationcontext/MyXmlWebApplicationInitializer.java rename to spring-core-3/src/main/java/com/baeldung/applicationcontext/MyXmlWebApplicationInitializer.java diff --git a/spring-core-4/src/main/java/com/baeldung/applicationcontext/UserService.java b/spring-core-3/src/main/java/com/baeldung/applicationcontext/UserService.java similarity index 100% rename from spring-core-4/src/main/java/com/baeldung/applicationcontext/UserService.java rename to spring-core-3/src/main/java/com/baeldung/applicationcontext/UserService.java diff --git a/spring-core-4/src/test/java/com/baeldung/applicationcontext/ApplicationContextUnitTest.java b/spring-core-3/src/test/java/com/baeldung/applicationcontext/ApplicationContextUnitTest.java similarity index 100% rename from spring-core-4/src/test/java/com/baeldung/applicationcontext/ApplicationContextUnitTest.java rename to spring-core-3/src/test/java/com/baeldung/applicationcontext/ApplicationContextUnitTest.java diff --git a/spring-core-4/src/test/resources/applicationcontext/account-bean-config.xml b/spring-core-3/src/test/resources/applicationcontext/account-bean-config.xml similarity index 100% rename from spring-core-4/src/test/resources/applicationcontext/account-bean-config.xml rename to spring-core-3/src/test/resources/applicationcontext/account-bean-config.xml diff --git a/spring-core-4/src/test/resources/applicationcontext/user-bean-config.xml b/spring-core-3/src/test/resources/applicationcontext/user-bean-config.xml similarity index 100% rename from spring-core-4/src/test/resources/applicationcontext/user-bean-config.xml rename to spring-core-3/src/test/resources/applicationcontext/user-bean-config.xml diff --git a/spring-core-4/src/test/resources/config/messages.properties b/spring-core-3/src/test/resources/config/messages.properties similarity index 100% rename from spring-core-4/src/test/resources/config/messages.properties rename to spring-core-3/src/test/resources/config/messages.properties diff --git a/spring-core-4/README.md b/spring-core-4/README.md index 6ade284e2e..a0f5ac97f9 100644 --- a/spring-core-4/README.md +++ b/spring-core-4/README.md @@ -6,5 +6,4 @@ This module contains articles about core Spring functionality - [Creating Spring Beans Through Factory Methods](https://www.baeldung.com/spring-beans-factory-methods) - [Spring BeanPostProcessor](https://www.baeldung.com/spring-beanpostprocessor) -- [The Spring ApplicationContext](https://www.baeldung.com/spring-application-context) -- More articles: [[<-- prev]](/spring-core-3) [[next -->]](/spring-core-5) +- More articles: [[<-- prev]](/spring-core-3) diff --git a/spring-core-5/README.md b/spring-core-5/README.md deleted file mode 100644 index cfcbf5380a..0000000000 --- a/spring-core-5/README.md +++ /dev/null @@ -1,10 +0,0 @@ -## Spring Core - -This module contains articles about core Spring functionality. - -## Relevant Articles: - -- [Solving Spring’s “not eligible for auto-proxying” Warning](https://www.baeldung.com/spring-not-eligible-for-auto-proxying) -- [Finding the Spring Version](https://www.baeldung.com/spring-find-version) -- [How Does the Spring Singleton Bean Serve Concurrent Requests?](https://www.baeldung.com/spring-singleton-concurrent-requests) -- More articles: [[<-- prev]](../spring-core-4) diff --git a/spring-core-5/pom.xml b/spring-core-5/pom.xml deleted file mode 100644 index 1c2e80be44..0000000000 --- a/spring-core-5/pom.xml +++ /dev/null @@ -1,45 +0,0 @@ - - - 4.0.0 - spring-core-5 - spring-core-5 - - - com.baeldung - parent-spring-5 - 0.0.1-SNAPSHOT - ../parent-spring-5 - - - - - org.springframework.boot - spring-boot-starter - ${spring-boot-starter.version} - - - org.springframework.boot - spring-boot-starter-web - ${spring-boot-starter.version} - - - org.springframework.boot - spring-boot-starter-test - ${spring-boot-starter.version} - test - - - org.projectlombok - lombok - ${lombok.version} - - - - - 5.3.3 - 2.4.2 - - - \ No newline at end of file diff --git a/spring-core-5/src/main/resources/application.yml b/spring-core-5/src/main/resources/application.yml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/spring-core-5/src/test/resources/application.yml b/spring-core-5/src/test/resources/application.yml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/spring-core-5/src/test/resources/logback-test.xml b/spring-core-5/src/test/resources/logback-test.xml deleted file mode 100644 index 8d4771e308..0000000000 --- a/spring-core-5/src/test/resources/logback-test.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - [%d{ISO8601}]-[%thread] %-5level %logger - %msg%n - - - - - - - \ No newline at end of file diff --git a/spring-core-6/README.md b/spring-core-6/README.md deleted file mode 100644 index 1879ff9a68..0000000000 --- a/spring-core-6/README.md +++ /dev/null @@ -1,5 +0,0 @@ - -### Relevant Articles: -- [Reinitialize Singleton Bean in Spring Context](https://www.baeldung.com/spring-reinitialize-singleton-bean) -- [Getting the Current ApplicationContext in Spring](https://www.baeldung.com/spring-get-current-applicationcontext) -- More articles: [[<-- prev]](../spring-core-5) \ No newline at end of file diff --git a/spring-core-6/pom.xml b/spring-core-6/pom.xml deleted file mode 100644 index 736fa283e7..0000000000 --- a/spring-core-6/pom.xml +++ /dev/null @@ -1,95 +0,0 @@ - - - 4.0.0 - com.baeldung - spring-core-6 - 0.0.1-SNAPSHOT - spring-core-6 - http://www.baeldung.com - - - com.baeldung - parent-boot-3 - 0.0.1-SNAPSHOT - ../parent-boot-3 - - - - - org.springframework.boot - spring-boot-starter-web - - - org.springframework.boot - spring-boot-starter-test - test - - - io.projectreactor - reactor-test - test - - - - - - - - maven-clean-plugin - 3.1.0 - - - maven-resources-plugin - 3.0.2 - - - maven-compiler-plugin - 3.8.0 - - - maven-surefire-plugin - 2.22.1 - - - maven-jar-plugin - 3.0.2 - - - maven-install-plugin - 2.5.2 - - - maven-deploy-plugin - 2.8.2 - - - maven-site-plugin - 3.7.1 - - - maven-project-info-reports-plugin - 3.0.0 - - - - - - org.apache.maven.plugins - maven-compiler-plugin - - 17 - 17 - - - - - - - UTF-8 - 17 - 17 - - - \ No newline at end of file diff --git a/spring-core-6/src/main/resources/application.properties b/spring-core-6/src/main/resources/application.properties deleted file mode 100644 index 6545cd1097..0000000000 --- a/spring-core-6/src/main/resources/application.properties +++ /dev/null @@ -1 +0,0 @@ -config.file.path=./spring-core-6/src/main/resources/config.properties \ No newline at end of file