Skip to content

parse_security

faststream.nats.security.parse_security #

parse_security(
    security: BaseSecurity | None,
) -> dict[str, Any]
Source code in faststream/nats/security.py
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
def parse_security(security: BaseSecurity | None) -> dict[str, Any]:
    if security is None:
        return {}
    if isinstance(security, NatsToken):
        return _parse_nats_token(security)
    if isinstance(security, NatsUserPassword):
        return _parse_nats_user_password(security)
    if isinstance(security, NatsCredentials):
        return _parse_nats_credentials(security)
    if isinstance(security, NatsNKey):
        return _parse_nats_nkey(security)
    if isinstance(security, NatsJWT):
        return _parse_nats_jwt(security)
    if type(security) is NatsSecurity:
        return _parse_nats_security(security)
    if isinstance(security, SASLPlaintext):
        return _parse_sasl_plaintext(security)
    if type(security) is BaseSecurity:
        return _parse_base_security(security)
    msg = f"NatsBroker does not support {type(security)}"
    raise NotImplementedError(msg)