Ë
    €ÏÒ  ã                   ód   — d dl mZ d dlmZmZ d dlmZ d dlmZm	Z	m
Z
  G d„ dee	e
f   e¬«      Zy)	é    )ÚGeneric)ÚABCMetaÚabstractmethod)ÚGoogleAPICallError)Ú
ConnectionÚRequestÚResponsec                   óF   — e Zd ZdZedefd„«       Zedeee	f   fd„«       Z
y)ÚConnectionReinitializerzPA class capable of reinitializing a connection after a new one has been created.Úerrorc              ƒ   ó   K  — t        «       ‚­w)z¶Tear down internal state processing the current connection in
        response to a stream error.

        Args:
            error: The error that caused the stream to break
        ©ÚNotImplementedError)Úselfr   s     úQlib/third_party/google/cloud/pubsublite/internal/wire/connection_reinitializer.pyÚstop_processingz'ConnectionReinitializer.stop_processing   s   è ø€ ô "Ó#Ð#ùó   ‚Ú
connectionc              ƒ   ó   K  — t        «       ‚­w)a  Reinitialize a connection. Must ensure no calls to the associated RetryingConnection
        occur until this completes.

        Args:
            connection: The connection to reinitialize

        Raises:
            GoogleAPICallError: If it fails to reinitialize.
        r   )r   r   s     r   Úreinitializez$ConnectionReinitializer.reinitialize&   s   è ø€ ô "Ó#Ð#ùr   N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   r   r   r	   r   © ó    r   r   r      sE   „ ÙZàð$Ð+=ò $ó ð$ð ð$à˜w¨Ð0Ñ1ò$ó ñ$r   r   )Ú	metaclassN)Útypingr   Úabcr   r   Úgoogle.api_core.exceptionsr   Ú0google.cloud.pubsublite.internal.wire.connectionr   r   r	   r   r   r   r   Ú<module>r"      s2   ðõ ß 'Ý 9÷ñ ô$˜g g¨xÐ&7Ñ8ÀGö $r   