Skip to content

PullSub

faststream.nats.schemas.pull_sub.PullSub #

PullSub(batch_size=1, timeout=5.0, batch=False)

A class to represent a NATS pull subscription.

PARAMETER DESCRIPTION
batch_size

Consuming messages batch size. (default is 1).

TYPE: int DEFAULT: 1

timeout (

obj:float, optional): Wait this time for required batch size will be accumulated in stream in seconds (default is 5.0).

batch

Whether to propagate consuming batch as iterable object to your handler (default is False).

TYPE: bool DEFAULT: False

Source code in faststream/nats/schemas/pull_sub.py
def __init__(
    self,
    batch_size: int = 1,
    timeout: float | None = 5.0,
    batch: bool = False,
) -> None:
    self.batch_size = batch_size
    self.batch = batch
    self.timeout = timeout

batch_size instance-attribute #

batch_size = batch_size

batch instance-attribute #

batch = batch

timeout instance-attribute #

timeout = timeout

validate classmethod #

validate(value: Literal[True]) -> PullSub
validate(value: Literal[False]) -> None
validate(value: PullSub) -> PullSub
validate(value: Union[bool, PullSub]) -> Optional[PullSub]
validate(value)
Source code in faststream/nats/schemas/pull_sub.py
@classmethod
def validate(cls, value: Union[bool, "PullSub"]) -> Optional["PullSub"]:
    if value is True:
        return PullSub()
    if value is False:
        return None
    return value