Skip to content

Commit adee644

Browse files
committed
fix: type issues
Signed-off-by: Konvalinka <[email protected]>
1 parent c75821f commit adee644

File tree

1 file changed

+11
-6
lines changed
  • providers/openfeature-provider-flagd/src/openfeature/contrib/provider/flagd/resolvers/process/connector

1 file changed

+11
-6
lines changed

providers/openfeature-provider-flagd/src/openfeature/contrib/provider/flagd/resolvers/process/connector/grpc_watcher.py

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -210,21 +210,21 @@ def _create_request_args(self) -> dict:
210210

211211
return request_args
212212

213-
def _fetch_metadata(self) -> dict:
213+
def _fetch_metadata(self) -> typing.Optional[sync_pb2.GetMetadataResponse]:
214214
if self.config.sync_metadata_disabled:
215-
return {}
215+
return None
216216

217217
context_values_request = sync_pb2.GetMetadataRequest()
218218
context_values_response: sync_pb2.GetMetadataResponse
219219
try:
220220
context_values_response = self.stub.GetMetadata(
221221
context_values_request, wait_for_ready=True
222222
)
223-
return MessageToDict(context_values_response)["metadata"]
223+
return context_values_response
224224
except grpc.RpcError as e:
225225
if e.code() == StatusCode.UNIMPLEMENTED:
226-
logger.debug("Metadata endpoint disabled")
227-
return {}
226+
logger.debug(f"Error getting sync metadata: {e}")
227+
return None
228228
else:
229229
raise e
230230

@@ -238,7 +238,7 @@ def listen(self) -> None:
238238

239239
while self.active:
240240
try:
241-
context_values = self._fetch_metadata()
241+
context_values_response = self._fetch_metadata()
242242

243243
request = sync_pb2.SyncFlagsRequest(**request_args)
244244

@@ -252,8 +252,13 @@ def listen(self) -> None:
252252
)
253253
self.flag_store.update(json.loads(flag_str))
254254

255+
context_values = {}
255256
if flag_rsp.sync_context:
256257
context_values = MessageToDict(flag_rsp.sync_context)
258+
elif context_values_response:
259+
context_values = MessageToDict(context_values_response)[
260+
"metadata"
261+
]
257262

258263
if not self.connected:
259264
self.emit_provider_ready(

0 commit comments

Comments
 (0)