diff --git a/providers/flagd/src/main/java/dev/openfeature/contrib/providers/flagd/resolver/grpc/Constants.java b/providers/flagd/src/main/java/dev/openfeature/contrib/providers/flagd/resolver/grpc/Constants.java new file mode 100644 index 000000000..030a1ef26 --- /dev/null +++ b/providers/flagd/src/main/java/dev/openfeature/contrib/providers/flagd/resolver/grpc/Constants.java @@ -0,0 +1,7 @@ +package dev.openfeature.contrib.providers.flagd.resolver.grpc; + +public class Constants { + public static final String CONFIGURATION_CHANGE = "configuration_change"; + public static final String PROVIDER_READY = "provider_ready"; + public static final String FLAGS_KEY = "flags"; +} diff --git a/providers/flagd/src/main/java/dev/openfeature/contrib/providers/flagd/resolver/grpc/EventStreamObserver.java b/providers/flagd/src/main/java/dev/openfeature/contrib/providers/flagd/resolver/grpc/EventStreamObserver.java index 4eb9ce462..927fcebdc 100644 --- a/providers/flagd/src/main/java/dev/openfeature/contrib/providers/flagd/resolver/grpc/EventStreamObserver.java +++ b/providers/flagd/src/main/java/dev/openfeature/contrib/providers/flagd/resolver/grpc/EventStreamObserver.java @@ -24,10 +24,6 @@ class EventStreamObserver implements StreamObserver { private final Object sync; private final Cache cache; - public static final String CONFIGURATION_CHANGE = "configuration_change"; - public static final String PROVIDER_READY = "provider_ready"; - static final String FLAGS_KEY = "flags"; - /** * Create a gRPC stream that get notified about flag changes. * @@ -44,10 +40,10 @@ class EventStreamObserver implements StreamObserver { @Override public void onNext(EventStreamResponse value) { switch (value.getType()) { - case CONFIGURATION_CHANGE: + case Constants.CONFIGURATION_CHANGE: this.handleConfigurationChangeEvent(value); break; - case PROVIDER_READY: + case Constants.PROVIDER_READY: this.handleProviderReadyEvent(); break; default: @@ -83,7 +79,7 @@ private void handleConfigurationChangeEvent(EventStreamResponse value) { boolean cachingEnabled = this.cache.getEnabled(); Map data = value.getData().getFieldsMap(); - Value flagsValue = data.get(FLAGS_KEY); + Value flagsValue = data.get(Constants.FLAGS_KEY); if (flagsValue == null) { if (cachingEnabled) { this.cache.clear(); diff --git a/providers/flagd/src/test/java/dev/openfeature/contrib/providers/flagd/resolver/grpc/EventStreamObserverTest.java b/providers/flagd/src/test/java/dev/openfeature/contrib/providers/flagd/resolver/grpc/EventStreamObserverTest.java index d07c03259..525ee23f1 100644 --- a/providers/flagd/src/test/java/dev/openfeature/contrib/providers/flagd/resolver/grpc/EventStreamObserverTest.java +++ b/providers/flagd/src/test/java/dev/openfeature/contrib/providers/flagd/resolver/grpc/EventStreamObserverTest.java @@ -93,7 +93,7 @@ public void cacheBustingForKnownKeys() { Value flagsValue = mock(Value.class); Struct flagsStruct = mock(Struct.class); HashMap fields = new HashMap<>(); - fields.put(EventStreamObserver.FLAGS_KEY, flagsValue); + fields.put(Constants.FLAGS_KEY, flagsValue); HashMap flags = new HashMap<>(); flags.put(key1, null); flags.put(key2, null); diff --git a/providers/flagd/src/test/java/dev/openfeature/contrib/providers/flagd/resolver/grpc/GrpcConnectorTest.java b/providers/flagd/src/test/java/dev/openfeature/contrib/providers/flagd/resolver/grpc/GrpcConnectorTest.java index aeeb0246d..9e2fb4f40 100644 --- a/providers/flagd/src/test/java/dev/openfeature/contrib/providers/flagd/resolver/grpc/GrpcConnectorTest.java +++ b/providers/flagd/src/test/java/dev/openfeature/contrib/providers/flagd/resolver/grpc/GrpcConnectorTest.java @@ -3,7 +3,6 @@ import static org.junit.jupiter.api.Assertions.assertDoesNotThrow; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertThrows; -import static org.junit.jupiter.api.Assertions.fail; import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.anyInt; import static org.mockito.ArgumentMatchers.anyLong; @@ -19,9 +18,6 @@ import static org.mockito.Mockito.when; import java.lang.reflect.Field; -import java.util.List; -import java.util.Map; -import java.util.concurrent.atomic.AtomicBoolean; import java.util.function.Consumer; import org.junit.jupiter.api.Test; @@ -40,7 +36,6 @@ import dev.openfeature.flagd.grpc.evaluation.ServiceGrpc; import dev.openfeature.flagd.grpc.evaluation.ServiceGrpc.ServiceBlockingStub; import dev.openfeature.flagd.grpc.evaluation.ServiceGrpc.ServiceStub; -import dev.openfeature.sdk.internal.TriConsumer; import io.grpc.Channel; import io.grpc.netty.NettyChannelBuilder; import io.netty.channel.EventLoopGroup; @@ -104,7 +99,7 @@ void initialization_succeed_with_connected_status() throws NoSuchFieldException, doAnswer((InvocationOnMock invocation) -> { EventStreamObserver eventStreamObserver = (EventStreamObserver) invocation.getArgument(1); eventStreamObserver - .onNext(EventStreamResponse.newBuilder().setType(EventStreamObserver.PROVIDER_READY).build()); + .onNext(EventStreamResponse.newBuilder().setType(Constants.PROVIDER_READY).build()); return null; }).when(mockStub).eventStream(any(), any());