From b8943d0c2c2346826fa4d97a7e254e860293f44a Mon Sep 17 00:00:00 2001 From: Vaibhav Date: Wed, 15 Jan 2025 17:52:54 +0530 Subject: [PATCH 1/4] Allow user to update label rules --- .../service/LabelsConfigServiceImpl.java | 37 ++++++++++--------- .../service/LabelsConfigServiceImplTest.java | 11 ++---- 2 files changed, 23 insertions(+), 25 deletions(-) diff --git a/labels-config-service-impl/src/main/java/org/hypertrace/label/config/service/LabelsConfigServiceImpl.java b/labels-config-service-impl/src/main/java/org/hypertrace/label/config/service/LabelsConfigServiceImpl.java index 0a51b4b8..0459c036 100644 --- a/labels-config-service-impl/src/main/java/org/hypertrace/label/config/service/LabelsConfigServiceImpl.java +++ b/labels-config-service-impl/src/main/java/org/hypertrace/label/config/service/LabelsConfigServiceImpl.java @@ -21,6 +21,7 @@ import java.util.Optional; import java.util.UUID; import java.util.concurrent.TimeUnit; +import java.util.function.Function; import java.util.stream.Collectors; import lombok.SneakyThrows; import lombok.extern.slf4j.Slf4j; @@ -194,15 +195,13 @@ public void getLabel(GetLabelRequest request, StreamObserver r RequestContext requestContext = RequestContext.CURRENT.get(); String labelId = request.getId(); try { - Label label; - if (systemLabelsIdLabelMap.containsKey(labelId)) { - label = systemLabelsIdLabelMap.get(labelId); - } else { - label = - labelStore - .getData(requestContext, labelId) - .orElseThrow(Status.NOT_FOUND::asRuntimeException); - } + Label label = + labelStore + .getData(requestContext, labelId) + .orElseGet( + () -> + Optional.ofNullable(systemLabelsIdLabelMap.get(labelId)) + .orElseThrow(Status.NOT_FOUND::asRuntimeException)); responseObserver.onNext(GetLabelResponse.newBuilder().setLabel(label).build()); responseObserver.onCompleted(); } catch (Exception e) { @@ -214,12 +213,17 @@ public void getLabel(GetLabelRequest request, StreamObserver r public void getLabels( GetLabelsRequest request, StreamObserver responseObserver) { RequestContext requestContext = RequestContext.CURRENT.get(); - List