From 9fe354f91ce7d627a4b501548d1d1a14adaba256 Mon Sep 17 00:00:00 2001 From: Simon Schrottner Date: Thu, 13 Feb 2025 14:52:10 +0100 Subject: [PATCH] fix(flagd): Add selector back into our requests Signed-off-by: Simon Schrottner --- .../connector/grpc/GrpcStreamConnector.java | 16 ++++++++++------ .../providers/flagd/e2e/steps/ProviderSteps.java | 1 - 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/providers/flagd/src/main/java/dev/openfeature/contrib/providers/flagd/resolver/process/storage/connector/grpc/GrpcStreamConnector.java b/providers/flagd/src/main/java/dev/openfeature/contrib/providers/flagd/resolver/process/storage/connector/grpc/GrpcStreamConnector.java index e76ebfb24..ada03503e 100644 --- a/providers/flagd/src/main/java/dev/openfeature/contrib/providers/flagd/resolver/process/storage/connector/grpc/GrpcStreamConnector.java +++ b/providers/flagd/src/main/java/dev/openfeature/contrib/providers/flagd/resolver/process/storage/connector/grpc/GrpcStreamConnector.java @@ -51,7 +51,16 @@ public GrpcStreamConnector(final FlagdOptions options, Consumer stub.syncFlags(SyncFlagsRequest.getDefaultInstance(), new GrpcStreamHandler(streamReceiver))); + stub -> { + String localSelector = selector; + + final SyncFlagsRequest.Builder syncRequest = SyncFlagsRequest.newBuilder(); + if (localSelector != null) { + syncRequest.setSelector(localSelector); + } + + stub.syncFlags(syncRequest.build(), new GrpcStreamHandler(streamReceiver)); + }); } /** Initialize gRPC stream connector. */ @@ -98,14 +107,9 @@ void observeEventStream(final BlockingQueue writeTo, final AtomicB Exception metadataException = null; log.debug("Initializing sync stream request"); - final SyncFlagsRequest.Builder syncRequest = SyncFlagsRequest.newBuilder(); final GetMetadataRequest.Builder metadataRequest = GetMetadataRequest.newBuilder(); GetMetadataResponse metadataResponse = GetMetadataResponse.getDefaultInstance(); - if (selector != null) { - syncRequest.setSelector(selector); - } - try (CancellableContext context = Context.current().withCancellation()) { try { diff --git a/providers/flagd/src/test/java/dev/openfeature/contrib/providers/flagd/e2e/steps/ProviderSteps.java b/providers/flagd/src/test/java/dev/openfeature/contrib/providers/flagd/e2e/steps/ProviderSteps.java index ce0fc4234..77f3ddabd 100644 --- a/providers/flagd/src/test/java/dev/openfeature/contrib/providers/flagd/e2e/steps/ProviderSteps.java +++ b/providers/flagd/src/test/java/dev/openfeature/contrib/providers/flagd/e2e/steps/ProviderSteps.java @@ -40,7 +40,6 @@ public ProviderSteps(State state) { @BeforeAll public static void beforeAll() throws IOException { - State.resolverType = Config.Resolver.RPC; sharedTempDir = Files.createDirectories( Paths.get("tmp/" + RandomStringUtils.randomAlphanumeric(8).toLowerCase() + "/")); container = new FlagdContainer()