in callouts/python/extproc/example/e2e_tests/metadata_server.py [0:0]
def check_metadata(request: service_pb2.ProcessingRequest) -> bool:
"""Check if the request contains 'fr' metadata.
Args:
request (service_pb2.ProcessingRequest): The processing request to check.
Returns:
bool: True if the 'fr' metadata is present and has a non-empty string value, False otherwise.
"""
if not request.HasField('metadata_context'):
logging.info('No metadata context.')
return False
fr_data = None
for _, feild_data in request.metadata_context.filter_metadata.items():
if 'fr' in feild_data.fields:
fr_data = feild_data.fields['fr']
break
if fr_data is None:
logging.info('No "fr" metadata.')
return False
logging.info('Contains "fr" key: %s', fr_data)
return fr_data.HasField('string_value') and fr_data.string_value != ''