From 50f572ca9bed42e77839d69031431dbee8e21674 Mon Sep 17 00:00:00 2001 From: vahid torkaman Date: Sun, 12 Oct 2025 23:31:04 +0200 Subject: [PATCH] make flag wasm logger wait --- .../java/com/spotify/confidence/GrpcWasmFlagLogger.java | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/openfeature-provider-local/src/main/java/com/spotify/confidence/GrpcWasmFlagLogger.java b/openfeature-provider-local/src/main/java/com/spotify/confidence/GrpcWasmFlagLogger.java index b0315710..a2508fc8 100644 --- a/openfeature-provider-local/src/main/java/com/spotify/confidence/GrpcWasmFlagLogger.java +++ b/openfeature-provider-local/src/main/java/com/spotify/confidence/GrpcWasmFlagLogger.java @@ -15,7 +15,7 @@ public class GrpcWasmFlagLogger implements WasmFlagLogger { private static final String CONFIDENCE_DOMAIN = "edge-grpc.spotify.com"; private static final Logger logger = LoggerFactory.getLogger(GrpcWasmFlagLogger.class); - private final InternalFlagLoggerServiceGrpc.InternalFlagLoggerServiceFutureStub stub; + private final InternalFlagLoggerServiceGrpc.InternalFlagLoggerServiceBlockingStub stub; public GrpcWasmFlagLogger(ApiSecret apiSecret) { final var channel = createConfidenceChannel(); @@ -23,14 +23,17 @@ public GrpcWasmFlagLogger(ApiSecret apiSecret) { AuthServiceGrpc.newBlockingStub(channel); final TokenHolder tokenHolder = new TokenHolder(apiSecret.clientId(), apiSecret.clientSecret(), authService); - final TokenHolder.Token token = tokenHolder.getToken(); final Channel authenticatedChannel = ClientInterceptors.intercept(channel, new JwtAuthClientInterceptor(tokenHolder)); - this.stub = InternalFlagLoggerServiceGrpc.newFutureStub(authenticatedChannel); + this.stub = InternalFlagLoggerServiceGrpc.newBlockingStub(authenticatedChannel); } @Override public void write(WriteFlagLogsRequest request) { + if (request.getClientResolveInfoList().isEmpty() && request.getFlagAssignedList().isEmpty()) { + logger.debug("Skipping empty flag log request"); + return; + } final var ignore = stub.writeFlagLogs(request); }