RED-6686 tenant details

This commit is contained in:
Timo Bejan 2023-06-21 15:01:16 +03:00
parent f9d508e95b
commit 40a66a640b
3 changed files with 30 additions and 0 deletions

View File

@ -3,11 +3,16 @@ package com.knecon.fforesight.tenantcommons;
import java.util.List;
import com.knecon.fforesight.tenantcommons.model.TenantResponse;
import com.knecon.fforesight.tenantcommons.model.UpdateDetailsRequest;
public interface TenantProvider {
void updateDetails(String tenantId, UpdateDetailsRequest request);
TenantResponse getTenant(String tenantId);
List<TenantResponse> getTenants();
}

View File

@ -9,9 +9,12 @@ import org.springframework.http.HttpStatus;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.ResponseStatus;
import com.knecon.fforesight.tenantcommons.model.TenantResponse;
import com.knecon.fforesight.tenantcommons.model.UpdateDetailsRequest;
@FeignClient(name = "TenantsResource", url = "${tenant-user-management-service.url}")
@ResponseStatus(value = HttpStatus.OK)
@ -20,9 +23,14 @@ public interface TenantsClient extends TenantProvider {
String TENANT_PATH = "/tenants";
String TENANT_ID_PARAM = "tenantId";
String DETAILS_PATH = "/details";
String TENANT_ID_PATH_PARAM = "/{" + TENANT_ID_PARAM + "}";
@PostMapping(value = TENANT_PATH + TENANT_ID_PATH_PARAM + DETAILS_PATH, consumes = MediaType.APPLICATION_JSON_VALUE)
void updateDetails(@PathVariable("tenantId") String tenantId, @RequestBody UpdateDetailsRequest request);
@GetMapping(value = TENANT_PATH + TENANT_ID_PATH_PARAM, produces = MediaType.APPLICATION_JSON_VALUE)
TenantResponse getTenant(@PathVariable(TENANT_ID_PARAM) String tenantId);

View File

@ -0,0 +1,17 @@
package com.knecon.fforesight.tenantcommons.model;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class UpdateDetailsRequest {
private String key;
private Object value;
}