def parse_security(security: Optional[BaseSecurity]) -> "AnyDict":
if security is None:
return {}
elif isinstance(security, SASLPlaintext):
return _parse_sasl_plaintext(security)
elif isinstance(security, SASLScram256):
return _parse_sasl_scram256(security)
elif isinstance(security, SASLScram512):
return _parse_sasl_scram512(security)
elif isinstance(security, SASLOAuthBearer):
return _parse_sasl_oauthbearer(security)
elif isinstance(security, SASLGSSAPI):
return _parse_sasl_gssapi(security)
elif isinstance(security, BaseSecurity):
return _parse_base_security(security)
else:
raise NotImplementedError(f"KafkaBroker does not support `{type(security)}`.")