From 9501ebebd06b5090a5b3246666d8dbe3daaf4c75 Mon Sep 17 00:00:00 2001 From: maverickstuder Date: Fri, 18 Oct 2024 12:25:28 +0200 Subject: [PATCH] RED-10196: Backend adaptions for RM/DM unification --- .../tenantcommons/TenantApplicationType.java | 7 ++++++ .../tenantcommons/TenantProvider.java | 2 ++ .../tenantcommons/TenantsClient.java | 5 +++++ .../tenantcommons/model/TenantResponse.java | 3 +++ .../utils/TestTenantProvider.java | 22 ++++++++++++++----- 5 files changed, 34 insertions(+), 5 deletions(-) create mode 100644 src/main/java/com/knecon/fforesight/tenantcommons/TenantApplicationType.java diff --git a/src/main/java/com/knecon/fforesight/tenantcommons/TenantApplicationType.java b/src/main/java/com/knecon/fforesight/tenantcommons/TenantApplicationType.java new file mode 100644 index 0000000..eee1fd3 --- /dev/null +++ b/src/main/java/com/knecon/fforesight/tenantcommons/TenantApplicationType.java @@ -0,0 +1,7 @@ +package com.knecon.fforesight.tenantcommons; + +public enum TenantApplicationType { + RedactManager, + DocuMine, + Clarifynd +} diff --git a/src/main/java/com/knecon/fforesight/tenantcommons/TenantProvider.java b/src/main/java/com/knecon/fforesight/tenantcommons/TenantProvider.java index 4c269f7..4012efa 100644 --- a/src/main/java/com/knecon/fforesight/tenantcommons/TenantProvider.java +++ b/src/main/java/com/knecon/fforesight/tenantcommons/TenantProvider.java @@ -15,4 +15,6 @@ public interface TenantProvider { List getTenants(); + TenantApplicationType getTenantApplicationType(String tenantId); + } diff --git a/src/main/java/com/knecon/fforesight/tenantcommons/TenantsClient.java b/src/main/java/com/knecon/fforesight/tenantcommons/TenantsClient.java index 017c925..0a70bf3 100644 --- a/src/main/java/com/knecon/fforesight/tenantcommons/TenantsClient.java +++ b/src/main/java/com/knecon/fforesight/tenantcommons/TenantsClient.java @@ -24,6 +24,7 @@ public interface TenantsClient extends TenantProvider { String TENANT_ID_PARAM = "tenantId"; String DETAILS_PATH = "/details"; String TENANT_ID_PATH_PARAM = "/{" + TENANT_ID_PARAM + "}"; + String APPLICATION_TYPE_PATH = "/application-type"; @PostMapping(value = TENANT_PATH + TENANT_ID_PATH_PARAM + DETAILS_PATH, consumes = MediaType.APPLICATION_JSON_VALUE) @@ -37,4 +38,8 @@ public interface TenantsClient extends TenantProvider { @GetMapping(value = TENANT_PATH, produces = MediaType.APPLICATION_JSON_VALUE) List getTenants(); + + @GetMapping(value = TENANT_PATH + TENANT_ID_PATH_PARAM + APPLICATION_TYPE_PATH, produces = MediaType.APPLICATION_JSON_VALUE) + TenantApplicationType getTenantApplicationType(@PathVariable(TENANT_ID_PARAM) String tenantId); + } diff --git a/src/main/java/com/knecon/fforesight/tenantcommons/model/TenantResponse.java b/src/main/java/com/knecon/fforesight/tenantcommons/model/TenantResponse.java index c91db3b..088459f 100644 --- a/src/main/java/com/knecon/fforesight/tenantcommons/model/TenantResponse.java +++ b/src/main/java/com/knecon/fforesight/tenantcommons/model/TenantResponse.java @@ -3,6 +3,8 @@ package com.knecon.fforesight.tenantcommons.model; import java.util.HashMap; import java.util.Map; +import com.knecon.fforesight.tenantcommons.TenantApplicationType; + import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; @@ -26,5 +28,6 @@ public class TenantResponse implements ITenantEvent { private AuthDetails authDetails; private Map details = new HashMap<>(); + private TenantApplicationType applicationType; } diff --git a/src/test/java/com/knecon/fforesight/tenantcommons/utils/TestTenantProvider.java b/src/test/java/com/knecon/fforesight/tenantcommons/utils/TestTenantProvider.java index 3baa687..b168a2b 100644 --- a/src/test/java/com/knecon/fforesight/tenantcommons/utils/TestTenantProvider.java +++ b/src/test/java/com/knecon/fforesight/tenantcommons/utils/TestTenantProvider.java @@ -2,10 +2,10 @@ package com.knecon.fforesight.tenantcommons.utils; import java.util.ArrayList; import java.util.List; -import java.util.Map; import org.springframework.stereotype.Service; +import com.knecon.fforesight.tenantcommons.TenantApplicationType; import com.knecon.fforesight.tenantcommons.TenantProvider; import com.knecon.fforesight.tenantcommons.listener.ITenantEventHandler; import com.knecon.fforesight.tenantcommons.model.TenantCreatedEvent; @@ -27,7 +27,10 @@ public class TestTenantProvider implements TenantProvider, ITenantEventHandler t.getTenantId().equals(s)).findFirst().orElse(null); + return tenants.stream() + .filter(t -> t.getTenantId().equals(s)) + .findFirst() + .orElse(null); } @@ -38,12 +41,21 @@ public class TestTenantProvider implements TenantProvider, ITenantEventHandler t.getTenantId().equals(s)) + .findFirst() + .map(TenantResponse::getApplicationType) + .orElse(TenantApplicationType.RedactManager); + } + + @Override public void handle(TenantCreatedEvent event) { - tenants.add(TenantResponse.builder() - .tenantId(event.getTenantId()) - .build()); + tenants.add(TenantResponse.builder().tenantId(event.getTenantId()).build()); }