From a85b6afd3026be508903bc6908228de99b94c38a Mon Sep 17 00:00:00 2001 From: rlreamy <34109594+rlreamy@users.noreply.github.com> Date: Thu, 17 Oct 2024 15:04:07 -0400 Subject: [PATCH 1/5] Update build.gradle --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 47191eb..ef92851 100644 --- a/build.gradle +++ b/build.gradle @@ -14,7 +14,7 @@ plugins { } group='kingstonduo' -version='4.1' +version='4.2' apply plugin: 'java' From 3228817613e7d6c1d78ea98ed7f7ac9e4f3f8116 Mon Sep 17 00:00:00 2001 From: rlreamy <34109594+rlreamy@users.noreply.github.com> Date: Thu, 17 Oct 2024 15:04:59 -0400 Subject: [PATCH 2/5] Update changelog.md --- changelog.md | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/changelog.md b/changelog.md index a52adf6..6705db5 100644 --- a/changelog.md +++ b/changelog.md @@ -1,6 +1,19 @@ # Changelog -## Release 4.1 [unreleased] +## Release 4.2 [unreleased] +Brief summary of what's in this release: + +### Breaking changes + +Breaking changes include any database updates needed, if we need to edit any files on system (like .env or certs, etc). Things that are outside of the code itself that need changed for the system to work. + +### Non-breaking changes + +Just a place to keep track of things that have changed in the code that we may want to pay special attention to when smoke testing, etc. + +--- + +## Release 4.1 [Released 10/16/2024] Brief summary of what's in this release: - Upgrade to Java 21 From 7fd2b03a006afa62748f03aa5bafcfd19ec8f4e1 Mon Sep 17 00:00:00 2001 From: rlreamy <34109594+rlreamy@users.noreply.github.com> Date: Thu, 17 Oct 2024 15:05:21 -0400 Subject: [PATCH 3/5] Update build-gradle-project.yml --- .github/workflows/build-gradle-project.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-gradle-project.yml b/.github/workflows/build-gradle-project.yml index 7b654d3..658148e 100644 --- a/.github/workflows/build-gradle-project.yml +++ b/.github/workflows/build-gradle-project.yml @@ -6,7 +6,7 @@ on: jobs: build-gradle-project: env: - IMAGE_TAG: 4.1 + IMAGE_TAG: 4.2 runs-on: ubuntu-latest steps: - name: Get branch names From fe666a7d2d8a42fa65b96c97ccd5fc245285c419 Mon Sep 17 00:00:00 2001 From: Becky Reamy Date: Tue, 8 Jul 2025 15:56:52 -0400 Subject: [PATCH 4/5] KPMP-1928: Removed notification service from app since it was only used for success emails --- .java-version | 1 + .../stateManager/NotificationHandler.java | 27 --------- .../org/kpmp/stateManager/StateService.java | 6 +- src/main/resources/application.properties | 3 - .../stateManager/NotificationHandlerTest.java | 58 ------------------- .../kpmp/stateManager/StateServiceTest.java | 5 +- 6 files changed, 3 insertions(+), 97 deletions(-) create mode 100644 .java-version delete mode 100644 src/main/java/org/kpmp/stateManager/NotificationHandler.java delete mode 100644 src/test/java/org/kpmp/stateManager/NotificationHandlerTest.java diff --git a/.java-version b/.java-version new file mode 100644 index 0000000..f222bf6 --- /dev/null +++ b/.java-version @@ -0,0 +1 @@ +21.0.4 diff --git a/src/main/java/org/kpmp/stateManager/NotificationHandler.java b/src/main/java/org/kpmp/stateManager/NotificationHandler.java deleted file mode 100644 index 848354f..0000000 --- a/src/main/java/org/kpmp/stateManager/NotificationHandler.java +++ /dev/null @@ -1,27 +0,0 @@ -package org.kpmp.stateManager; - -import org.springframework.beans.factory.annotation.Value; -import org.springframework.stereotype.Component; -import org.springframework.web.client.RestTemplate; - -@Component -class NotificationHandler { - - @Value("${notification.service.host}") - private String notificationServiceHost; - @Value("${notification.endpoint}") - private String notificationEndpoint; - private final RestTemplate restTemplate; - - public NotificationHandler(RestTemplate restTemplate) { - this.restTemplate = restTemplate; - } - - public void sendNotification(String packageId, String state, String origin, String codicil) { - - restTemplate.postForObject(notificationServiceHost + notificationEndpoint, - new StateChangeEvent(origin, packageId, state, codicil), Boolean.class); - - } - -} diff --git a/src/main/java/org/kpmp/stateManager/StateService.java b/src/main/java/org/kpmp/stateManager/StateService.java index 11b1693..2f689d8 100644 --- a/src/main/java/org/kpmp/stateManager/StateService.java +++ b/src/main/java/org/kpmp/stateManager/StateService.java @@ -18,21 +18,17 @@ public class StateService { private String uploadFailedState; @Value("${package.state.upload.succeeded}") private String uploadSucceededState; - private NotificationHandler notificationHandler; private StateDisplayRepository stateDisplayRepo; @Autowired - public StateService(CustomStateRepository stateRepository, NotificationHandler notificationHandler, - StateDisplayRepository stateDisplayRepo) { + public StateService(CustomStateRepository stateRepository, StateDisplayRepository stateDisplayRepo) { this.stateRepository = stateRepository; - this.notificationHandler = notificationHandler; this.stateDisplayRepo = stateDisplayRepo; } @CacheEvict(value = "states", allEntries = true) public String setState(State state, String origin) { State savedState = stateRepository.save(state); - notificationHandler.sendNotification(state.getPackageId(), state.getState(), origin, state.getCodicil()); return savedState.getId(); } diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties index c8ef140..2ba3b2d 100644 --- a/src/main/resources/application.properties +++ b/src/main/resources/application.properties @@ -6,9 +6,6 @@ spring.main.banner-mode=off state.service.host=http://localhost:3060 state.service.endpoint=/v1/state/host -notification.service.host=http://eridanus-spring:3040 -notification.endpoint=/v2/notifications/package - data-manager.service.host=http://data-manager-service:5000 data-manager.service.endpoint=/v1/dlu diff --git a/src/test/java/org/kpmp/stateManager/NotificationHandlerTest.java b/src/test/java/org/kpmp/stateManager/NotificationHandlerTest.java deleted file mode 100644 index 85fe550..0000000 --- a/src/test/java/org/kpmp/stateManager/NotificationHandlerTest.java +++ /dev/null @@ -1,58 +0,0 @@ -package org.kpmp.stateManager; - -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.mockito.ArgumentMatchers.any; -import static org.mockito.Mockito.verify; -import static org.mockito.Mockito.when; - -import org.junit.jupiter.api.AfterEach; -import org.junit.jupiter.api.BeforeEach; -import org.junit.jupiter.api.Test; -import org.mockito.ArgumentCaptor; -import org.mockito.Mock; -import org.mockito.MockitoAnnotations; -import org.springframework.test.util.ReflectionTestUtils; -import org.springframework.web.client.RestTemplate; - -public class NotificationHandlerTest { - - @Mock - private RestTemplate restTemplate; - private NotificationHandler handler; - - @BeforeEach - public void setUp() throws Exception { - MockitoAnnotations.openMocks(this); - handler = new NotificationHandler(restTemplate); - ReflectionTestUtils.setField(handler, "notificationServiceHost", "host"); - ReflectionTestUtils.setField(handler, "notificationEndpoint", "/endpoint"); - } - - @AfterEach - public void tearDown() throws Exception { - MockitoAnnotations.openMocks(this).close(); - handler = null; - } - - @SuppressWarnings({ "unchecked", "rawtypes" }) - @Test - public void testSendNotification() { - when(restTemplate.postForObject(any(String.class), any(StateChangeEvent.class), any(Class.class))) - .thenReturn(true); - - handler.sendNotification("packageId", "state", "origin", "codicil"); - - ArgumentCaptor urlCaptor = ArgumentCaptor.forClass(String.class); - ArgumentCaptor stateChangeCaptor = ArgumentCaptor.forClass(StateChangeEvent.class); - ArgumentCaptor returnCaptor = ArgumentCaptor.forClass(Class.class); - verify(restTemplate).postForObject(urlCaptor.capture(), stateChangeCaptor.capture(), returnCaptor.capture()); - assertEquals("host/endpoint", urlCaptor.getValue()); - StateChangeEvent stateChangeEvent = stateChangeCaptor.getValue(); - assertEquals("packageId", stateChangeEvent.getPackageId()); - assertEquals("state", stateChangeEvent.getState()); - assertEquals("origin", stateChangeEvent.getOrigin()); - assertEquals("codicil", stateChangeEvent.getCodicil()); - assertEquals(Boolean.class, returnCaptor.getValue()); - } - -} diff --git a/src/test/java/org/kpmp/stateManager/StateServiceTest.java b/src/test/java/org/kpmp/stateManager/StateServiceTest.java index ce3b906..4018222 100644 --- a/src/test/java/org/kpmp/stateManager/StateServiceTest.java +++ b/src/test/java/org/kpmp/stateManager/StateServiceTest.java @@ -24,14 +24,12 @@ public class StateServiceTest { private CustomStateRepository stateRepository; private StateService service; @Mock - private NotificationHandler notificationHandler; - @Mock private StateDisplayRepository stateDisplayRepo; @BeforeEach public void setUp() throws Exception { MockitoAnnotations.openMocks(this); - service = new StateService(stateRepository, notificationHandler, stateDisplayRepo); + service = new StateService(stateRepository, stateDisplayRepo); ReflectionTestUtils.setField(service, "uploadFailedState", "UPLOAD_FAILED"); ReflectionTestUtils.setField(service, "uploadSucceededState", "UPLOAD_SUCCEEDED"); } @@ -56,7 +54,6 @@ public void testSetState() { assertEquals("id", stateId); verify(stateRepository).save(state); - verify(notificationHandler).sendNotification("packageId", "state", "origin", "codicil"); } @Test From 69c994164fe9112c39866bbf2b5f4bde969bc0af Mon Sep 17 00:00:00 2001 From: rlreamy <34109594+rlreamy@users.noreply.github.com> Date: Wed, 9 Jul 2025 10:01:05 -0400 Subject: [PATCH 5/5] Update changelog.md --- changelog.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/changelog.md b/changelog.md index 6705db5..87375da 100644 --- a/changelog.md +++ b/changelog.md @@ -2,14 +2,12 @@ ## Release 4.2 [unreleased] Brief summary of what's in this release: +Removed the calls to Notification Service and the configuration to talk to it since we are no longer sending success emails ### Breaking changes Breaking changes include any database updates needed, if we need to edit any files on system (like .env or certs, etc). Things that are outside of the code itself that need changed for the system to work. -### Non-breaking changes - -Just a place to keep track of things that have changed in the code that we may want to pay special attention to when smoke testing, etc. ---