Skip to content

RabbitBrokerConfig

faststream.rabbit.configs.RabbitBrokerConfig dataclass #

RabbitBrokerConfig(
    *,
    prefix: str = "",
    include_in_schema: bool | None = True,
    broker_middlewares: Sequence[
        BrokerMiddleware[Any]
    ] = (),
    broker_parser: Optional[CustomCallable] = None,
    broker_decoder: Optional[CustomCallable] = None,
    producer: AioPikaFastProducer = FakeAioPikaFastProducer(),
    logger: LoggerState = LoggerState(),
    fd_config: FastDependsConfig = FastDependsConfig(),
    broker_dependencies: Iterable[Dependant] = (),
    graceful_timeout: float | None = None,
    extra_context: dict[str, Any] = dict(),
    channel_manager: ChannelManager = FakeChannelManager(),
    declarer: RabbitDeclarer = FakeRabbitDeclarer(),
    virtual_host: str = "",
    app_id: str | None = None,
)

Bases: BrokerConfig

prefix class-attribute instance-attribute #

prefix: str = ''

include_in_schema class-attribute instance-attribute #

include_in_schema: bool | None = True

broker_middlewares class-attribute instance-attribute #

broker_middlewares: Sequence[BrokerMiddleware[Any]] = ()

broker_parser class-attribute instance-attribute #

broker_parser: Optional[CustomCallable] = None

broker_decoder class-attribute instance-attribute #

broker_decoder: Optional[CustomCallable] = None

logger class-attribute instance-attribute #

logger: LoggerState = field(default_factory=LoggerState)

fd_config class-attribute instance-attribute #

fd_config: FastDependsConfig = field(
    default_factory=FastDependsConfig
)

broker_dependencies class-attribute instance-attribute #

broker_dependencies: Iterable[Dependant] = ()

graceful_timeout class-attribute instance-attribute #

graceful_timeout: float | None = None

extra_context class-attribute instance-attribute #

extra_context: dict[str, Any] = field(default_factory=dict)

channel_manager class-attribute instance-attribute #

channel_manager: ChannelManager = field(
    default_factory=FakeChannelManager
)

declarer class-attribute instance-attribute #

declarer: RabbitDeclarer = field(
    default_factory=FakeRabbitDeclarer
)

producer class-attribute instance-attribute #

producer: AioPikaFastProducer = field(
    default_factory=FakeAioPikaFastProducer
)

virtual_host class-attribute instance-attribute #

virtual_host: str = ''

app_id class-attribute instance-attribute #

app_id: str | None = None

add_middleware #

add_middleware(middleware: BrokerMiddleware[Any]) -> None
Source code in faststream/_internal/configs/broker.py
def add_middleware(self, middleware: "BrokerMiddleware[Any]") -> None:
    self.broker_middlewares = (*self.broker_middlewares, middleware)

insert_middleware #

insert_middleware(
    middleware: BrokerMiddleware[Any],
) -> None
Source code in faststream/_internal/configs/broker.py
def insert_middleware(self, middleware: "BrokerMiddleware[Any]") -> None:
    self.broker_middlewares = (middleware, *self.broker_middlewares)

connect #

connect(connection: RobustConnection) -> None
Source code in faststream/rabbit/configs/broker.py
def connect(self, connection: "RobustConnection") -> None:
    self.channel_manager.connect(connection)
    self.producer.connect(serializer=self.fd_config._serializer)

disconnect #

disconnect() -> None
Source code in faststream/rabbit/configs/broker.py
def disconnect(self) -> None:
    self.channel_manager.disconnect()
    self.declarer.disconnect()
    self.producer.disconnect()