+
    }i                        ^ RI Ht ^ RIHtHt ^ RIHtHt ^ RIHtH	t	H
t
HtHtHtHt ^RIHt ^RIHt  ! R R]4      t ! R	 R
]4      tR# )    )annotations)datetime	timedelta)	AnnotatedAny)	BaseModelBeforeValidator
ConfigDictFieldGetPydanticSchemaPlainSerializercomputed_field)CookieParam)Sessionc                      ] tR t^t$ Rt]! RRR7      tR]R&   R]R&   R]R	&   R
]R&   R]R&   R]R&   R]R&   R]R&   R]R&   R]R&   R]R&   RtR# )SessionModelzModel for a Session object.Tvalidate_by_namevalidate_by_aliasz!Annotated[str, Field(alias='id')]idz+Annotated[timedelta, Field(alias='maxAge')]max_agez(Annotated[dict, Field(alias='userData')]	user_dataz.Annotated[float, Field(alias='maxErrorScore')]max_error_scorez4Annotated[float, Field(alias='errorScoreDecrement')]error_score_decrementz-Annotated[datetime, Field(alias='createdAt')]
created_atz)Annotated[int, Field(alias='usageCount')]usage_countz,Annotated[int, Field(alias='maxUsageCount')]max_usage_countz+Annotated[float, Field(alias='errorScore')]error_scorez4Annotated[list[CookieParam], Field(alias='cookies')]cookiesz7Annotated[list[int], Field(alias='blockedStatusCodes')]blocked_status_codes N)	__name__
__module____qualname____firstlineno____doc__r
   model_config__annotations____static_attributes__r!       j/Users/ahmad/.openclaw/workspace/my-crawler/.venv/lib/python3.14/site-packages/crawlee/sessions/_models.pyr   r      sS    %ttLL))8877CCOO==::AA<<AAQQr*   r   c                      ] tR t^&t$ Rt]! RRR7      tR]R&   R]R&   ]! RR	7      ]	R
 R l4       4       t
]! RR	7      ]	R R l4       4       t]! RR	7      ]	R R l4       4       tRtR# )SessionPoolModelzModel for a SessionPool object.Tr   z*Annotated[int, Field(alias='maxPoolSize')]max_pool_sizea  Annotated[dict[str, Annotated[Session, GetPydanticSchema(lambda _, handler: handler(Any))]], Field(alias='sessions'), PlainSerializer(lambda value: [session.get_state().model_dump(by_alias=True) for session in value.values()], return_type=list), BeforeValidator(lambda value: {session.id: session for item in value if (session := Session.from_model(SessionModel.model_validate(item, by_alias=True)))})]sessionssessionCount)aliasc                   V ^8  d   QhRR/#    returnintr!   )formats   "r+   __annotate__SessionPoolModel.__annotate__D   s     " "s "r*   c                ,    \        V P                  4      # )zBGet the total number of sessions currently maintained in the pool.)lenr/   selfs   &r+   session_countSessionPoolModel.session_countB   s     4==!!r*   usableSessionCountc                   V ^8  d   QhRR/# r3   r!   )r7   s   "r+   r8   r9   J   s     [ [c [r*   c                    \        V P                  P                  4        UUu. uF  w  rVP                  '       g   K  VNK  	  upp4      # u uppi )z5Get the number of sessions that are currently usable.)r;   r/   items	is_usable)r=   _sessions   &  r+   usable_session_count%SessionPoolModel.usable_session_countH   s<     dmm.A.A.CY.C
wGXGXGG.CYZZYs
   A
A
retiredSessionCountc                   V ^8  d   QhRR/# r3   r!   )r7   s   "r+   r8   r9   P   s     > >s >r*   c                <    V P                   V P                  ,
          # )z5Get the number of sessions that are no longer usable.)r>   rG   r<   s   &r+   retired_session_count&SessionPoolModel.retired_session_countN   s     !!D$=$===r*   r!   N)r"   r#   r$   r%   r&   r
   r'   r(   r   propertyr>   rG   rL   r)   r!   r*   r+   r-   r-   &   s    )ttLL== * .)"  *" ./[  0[ /0>  1>r*   r-   N)
__future__r   r   r   typingr   r   pydanticr   r	   r
   r   r   r   r   _cookiesr   _sessionr   r   r-   r!   r*   r+   <module>rT      s?    " ( !   " R9 R$,>y ,>r*   