Skip to content

Commit b0d022b

Browse files
manuelesimidependabot[bot]github-advanced-security[bot]Copilot
authored
Release 1.4.9. (#60)
* Address some security vulnerabilities. (#41) * Configure dependabot to target develop. (#42) * Bump org.apache.maven.plugins:maven-javadoc-plugin from 3.6.3 to 3.11.3 (#46) Bumps [org.apache.maven.plugins:maven-javadoc-plugin](https://github.com/apache/maven-javadoc-plugin) from 3.6.3 to 3.11.3. - [Release notes](https://github.com/apache/maven-javadoc-plugin/releases) - [Commits](apache/maven-javadoc-plugin@maven-javadoc-plugin-3.6.3...maven-javadoc-plugin-3.11.3) --- updated-dependencies: - dependency-name: org.apache.maven.plugins:maven-javadoc-plugin dependency-version: 3.11.3 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump com.google.code.gson:gson from 2.10.1 to 2.13.1 (#45) Bumps [com.google.code.gson:gson](https://github.com/google/gson) from 2.10.1 to 2.13.1. - [Release notes](https://github.com/google/gson/releases) - [Changelog](https://github.com/google/gson/blob/main/CHANGELOG.md) - [Commits](google/gson@gson-parent-2.10.1...gson-parent-2.13.1) --- updated-dependencies: - dependency-name: com.google.code.gson:gson dependency-version: 2.13.1 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump org.springframework.boot:spring-boot-starter-parent (#44) Bumps [org.springframework.boot:spring-boot-starter-parent](https://github.com/spring-projects/spring-boot) from 3.5.4 to 3.5.5. - [Release notes](https://github.com/spring-projects/spring-boot/releases) - [Commits](spring-projects/spring-boot@v3.5.4...v3.5.5) --- updated-dependencies: - dependency-name: org.springframework.boot:spring-boot-starter-parent dependency-version: 3.5.5 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Switch to Java 21. (#47) * Potential fix for code scanning alert no. 10: Log Injection (#48) Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> * Bump org.springframework.boot:spring-boot-starter-parent (#50) Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Advance parent pom to 1.4.4. (#51) * Bump com.diffplug.spotless:spotless-maven-plugin from 2.46.1 to 3.0.0 (#53) Bumps [com.diffplug.spotless:spotless-maven-plugin](https://github.com/diffplug/spotless) from 2.46.1 to 3.0.0. - [Release notes](https://github.com/diffplug/spotless/releases) - [Changelog](https://github.com/diffplug/spotless/blob/main/CHANGES.md) - [Commits](diffplug/spotless@maven/2.46.1...lib/3.0.0) --- updated-dependencies: - dependency-name: com.diffplug.spotless:spotless-maven-plugin dependency-version: 3.0.0 dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump org.apache.maven.plugins:maven-javadoc-plugin from 3.11.3 to 3.12.0 (#52) Bumps [org.apache.maven.plugins:maven-javadoc-plugin](https://github.com/apache/maven-javadoc-plugin) from 3.11.3 to 3.12.0. - [Release notes](https://github.com/apache/maven-javadoc-plugin/releases) - [Commits](apache/maven-javadoc-plugin@maven-javadoc-plugin-3.11.3...maven-javadoc-plugin-3.12.0) --- updated-dependencies: - dependency-name: org.apache.maven.plugins:maven-javadoc-plugin dependency-version: 3.12.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump com.google.code.gson:gson from 2.13.1 to 2.13.2 (#49) Bumps [com.google.code.gson:gson](https://github.com/google/gson) from 2.13.1 to 2.13.2. - [Release notes](https://github.com/google/gson/releases) - [Changelog](https://github.com/google/gson/blob/main/CHANGELOG.md) - [Commits](google/gson@gson-parent-2.13.1...gson-parent-2.13.2) --- updated-dependencies: - dependency-name: com.google.code.gson:gson dependency-version: 2.13.2 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * DW-33 Build with GitHub Actions (#55) * Bump org.springframework.boot:spring-boot-starter-parent (#56) Bumps [org.springframework.boot:spring-boot-starter-parent](https://github.com/spring-projects/spring-boot) from 3.5.6 to 3.5.7. - [Release notes](https://github.com/spring-projects/spring-boot/releases) - [Commits](spring-projects/spring-boot@v3.5.6...v3.5.7) --- updated-dependencies: - dependency-name: org.springframework.boot:spring-boot-starter-parent dependency-version: 3.5.7 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump com.diffplug.spotless:spotless-maven-plugin from 3.0.0 to 3.1.0 (#57) Bumps [com.diffplug.spotless:spotless-maven-plugin](https://github.com/diffplug/spotless) from 3.0.0 to 3.1.0. - [Release notes](https://github.com/diffplug/spotless/releases) - [Changelog](https://github.com/diffplug/spotless/blob/main/CHANGES.md) - [Commits](diffplug/spotless@lib/3.0.0...lib/3.1.0) --- updated-dependencies: - dependency-name: com.diffplug.spotless:spotless-maven-plugin dependency-version: 3.1.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Update parent POM version from 1.4.4-SNAPSHOT to 1.4.4. (#59) * Update .github/GHA.rmd Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update kafka-service/src/main/java/edu/cornell/eipm/messaging/microservices/kafka/dispatcher/broker/producer/Sender.java Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update GHA doc. Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Address copilot review. --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
1 parent 47b6f36 commit b0d022b

9 files changed

Lines changed: 118 additions & 21 deletions

File tree

.github/GHA.rmd

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
## GitHub Actions Workflow: Build DispatcherSuite
2+
3+
This workflow automates building and testing the project using Maven and JDK 17 on every push and pull request.
4+
5+
### Workflow Location
6+
7+
- File: `.github/workflows/build.yml`
8+
9+
### Triggers
10+
11+
- Runs on every push to any branch.
12+
13+
### Steps
14+
15+
1. **Checkout Code**
16+
Clones the repository using the official GitHub action.
17+
18+
2. **Set Up JDK 21**
19+
Installs the Temurin 21 distribution for building the project.
20+
21+
3. **Cache Maven Dependencies**
22+
Caches the local Maven repository (`~/.m2/repository`) to speed up builds.
23+
24+
4. **Build and Test**
25+
Executes `mvn clean package --batch-mode` to build the project and run all tests.
26+
27+
## Build status
28+
29+
[![Build DispatcherSuite](https://github.com/eipm/DispatcherSuite/actions/workflows/build.yml/badge.svg)](https://github.com/eipm/DispatcherSuite/actions/workflows/build.yml)
30+
31+
---
32+
33+
The build workflow ensures the code is built and tested automatically, helping maintain code quality.

.github/workflows/build.yml

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
name: Build DispatcherSuite
2+
3+
on:
4+
push:
5+
branches: [ "**" ]
6+
7+
jobs:
8+
build:
9+
runs-on: ubuntu-latest
10+
11+
steps:
12+
- name: Checkout code
13+
uses: actions/checkout@v4
14+
15+
- name: Set up JDK 21
16+
uses: actions/setup-java@v4
17+
with:
18+
distribution: 'temurin'
19+
java-version: '21'
20+
21+
- name: Cache Maven packages
22+
uses: actions/cache@v4
23+
with:
24+
path: ~/.m2/repository
25+
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
26+
restore-keys: |
27+
${{ runner.os }}-maven-
28+
29+
- name: Build with Maven
30+
run: mvn clean package --batch-mode
31+
32+
- name: Upload build artifact
33+
uses: actions/upload-artifact@v4
34+
with:
35+
name: kafka-service-war
36+
path: kafka-service/target/*.war

.idea/misc.xml

Lines changed: 14 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/workspace.xml

Lines changed: 16 additions & 5 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

README.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,17 @@
22

33
![logo](doc/dispatcher-services-logo.png)
44

5+
A set of microservices to interface with different messaging systems.
6+
57
[![Github](https://img.shields.io/badge/github-1.4.9-green?style=flat&logo=github)](https://github.com/eipm/DispatcherSuite) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.14975839.svg)](https://zenodo.org/doi/10.5281/zenodo.14975839)
68

7-
A set of microservices to interface with different messaging systems.
9+
[![Build DispatcherSuite](https://github.com/eipm/DispatcherSuite/actions/workflows/build.yml/badge.svg)](https://github.com/eipm/DispatcherSuite/actions/workflows/build.yml)
810

911
## 🤝 License
1012
See [LICENSE](./LICENSE)
1113

1214
## 📚 How to Cite
13-
> Manuele Simi, Alexandros Sigaras, Jeff Tang, & Pantelis Zisimopoulos. (2025). eipm/DispatcherSuite: v1.4.9 (v1.4.9). Zenodo. [https://zenodo.org/records/14975856](https://zenodo.org/records/14975856)
15+
> Manuele Simi, Alexandros Sigaras, Jeff Tang, & Pantelis Zisimopoulos. (2025). eipm/DispatcherSuite: v1.4.8 (v1.4.8). Zenodo. [https://zenodo.org/records/14975856](https://zenodo.org/records/14975856)
1416
1517
## Modules
1618
* [Kafka-Dispatcher Service](kafka-service/README.md) - to interface with Apache Kafka brokers (on-prem or on the cloud, like Microsoft EventHubs or AWS MSK)

executors/pom.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<parent>
66
<artifactId>dispatcher-suite</artifactId>
77
<groupId>edu.cornell.eipm.messaging.microservices</groupId>
8-
<version>1.4.2-SNAPSHOT</version>
8+
<version>1.4.4</version>
99
</parent>
1010
<modelVersion>4.0.0</modelVersion>
1111
<artifactId>executors</artifactId>
@@ -34,7 +34,7 @@
3434
<dependency>
3535
<groupId>com.google.code.gson</groupId>
3636
<artifactId>gson</artifactId>
37-
<version>2.10.1</version>
37+
<version>2.13.2</version>
3838
</dependency>
3939

4040
<dependency>

kafka-service/pom.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<parent>
66
<artifactId>dispatcher-suite</artifactId>
77
<groupId>edu.cornell.eipm.messaging.microservices</groupId>
8-
<version>1.4.2-SNAPSHOT</version>
8+
<version>1.4.4</version>
99
</parent>
1010
<modelVersion>4.0.0</modelVersion>
1111

@@ -79,7 +79,7 @@
7979
<dependency>
8080
<groupId>com.google.code.gson</groupId>
8181
<artifactId>gson</artifactId>
82-
<version>2.10.1</version>
82+
<version>2.13.2</version>
8383
</dependency>
8484

8585
<dependency>

kafka-service/src/main/java/edu/cornell/eipm/messaging/microservices/kafka/dispatcher/broker/producer/Sender.java

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -50,19 +50,21 @@ public class Sender {
5050
* @param values the values to send as message's payload
5151
*/
5252
public void send(String topic, Map<String, String> values) {
53+
// Sanitize the topic parameter to prevent log injection
54+
String sanitizedTopic = topic.replaceAll("[^a-zA-Z0-9._-]", "");
5355
String json = new JSONPayloadSerializer(values).toJSON();
54-
LOGGER.info("sending payload='{}' to topic {}", json, topic);
55-
CompletableFuture<SendResult<String, String>> future = kafkaTemplate.send(topic, topic, json);
56+
LOGGER.info("sending payload='{}' to topic {}", json, sanitizedTopic);
57+
CompletableFuture<SendResult<String, String>> future = kafkaTemplate.send(sanitizedTopic, sanitizedTopic, json);
5658
future.whenCompleteAsync(
5759
(result, throwable) -> {
5860
if (throwable != null) {
5961
LOGGER.error(
60-
"Unable to send message to =[" + topic + "] due to : " + throwable.getMessage());
62+
"Unable to send message to =[" + sanitizedTopic + "] due to : " + throwable.getMessage());
6163
future.completeExceptionally(throwable);
6264
} else {
6365
LOGGER.info(
6466
"Sent message to topic=["
65-
+ topic
67+
+ sanitizedTopic
6668
+ "] with offset=["
6769
+ result.getRecordMetadata().offset()
6870
+ "]");

pom.xml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,19 +10,19 @@
1010
<parent>
1111
<groupId>org.springframework.boot</groupId>
1212
<artifactId>spring-boot-starter-parent</artifactId>
13-
<version>3.5.4</version>
13+
<version>3.5.7</version>
1414
<relativePath/> <!-- lookup parent from repository -->
1515
</parent>
1616
<groupId>edu.cornell.eipm.messaging.microservices</groupId>
1717
<artifactId>dispatcher-suite</artifactId>
1818
<name>Dispatcher Suite</name>
19-
<version>1.4.2-SNAPSHOT</version>
19+
<version>1.4.4</version>
2020
<packaging>pom</packaging>
2121
<description>Dispatcher Services Suite</description>
2222

2323
<properties>
24-
<java.version>18</java.version>
25-
<spotless.version>2.46.1</spotless.version>
24+
<java.version>21</java.version>
25+
<spotless.version>3.1.0</spotless.version>
2626
</properties>
2727

2828
<build>
@@ -62,7 +62,7 @@
6262
<plugin>
6363
<groupId>org.apache.maven.plugins</groupId>
6464
<artifactId>maven-javadoc-plugin</artifactId>
65-
<version>3.6.3</version>
65+
<version>3.12.0</version>
6666
<executions>
6767
<execution>
6868
<id>main-javadoc</id>

0 commit comments

Comments
 (0)