def check_metadata()

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 != ''