HEX
Server: Apache
System: Linux infong-uk86 4.4.400-icpu-106 #2 SMP Mon Sep 15 08:23:40 UTC 2025 x86_64
User: u44115835 (4976590)
PHP: 8.4.17
Disabled: NONE
Upload Files
File: //kunden/lib/python3/dist-packages/breezy/__pycache__/mergeable.cpython-39.pyc
a

�*�^��@spddlmZddlmZee�d�ddlmZddlmZddlm	Z	Gdd	�d	e
�Zddd
�Zddd�Z
dS)�)�absolute_import�)�lazy_importz�
from breezy import (
    transport as _mod_transport,
    urlutils,
    )
from breezy.bzr.bundle import serializer as _serializer
from breezy.merge_directive import MergeDirective
from breezy.i18n import gettext
)�errors)�BytesIO)�notec@s eZdZdZdd�Zdd�ZdS)�	MergeablezA mergeable object.cCst|j��dS)zsInstall the data from this mergeable into the specified repository.

        :param repository: Repository
        N)�NotImplementedError�install_revisions��selfZ
repository�r
�2/usr/lib/python3/dist-packages/breezy/mergeable.pyr
*szMergeable.install_revisionscCst|j��dS)zrExtract merge request data.

        :return: tuple with (base_revision_id, target_revision_id, verified)
        N)r	�get_merge_requestrr
r
rr1szMergeable.get_merge_requestN)�__name__�
__module__�__qualname__�__doc__r
rr
r
r
rr'srTNcCs8tj||d�}|�d�}|�|j�}t|||�\}}|S)z�Read mergable object from a given URL.

    :return: An object supporting get_target_revision.  Raises NotABundle if
        the target is not a mergeable type.
    )�possible_transportsz..)�_mod_transportZ
get_transport�clone�relpath�base�read_mergeable_from_transport)�url�
_do_directiverZchild_transport�	transport�filenameZ	mergeabler
r
r�read_mergeable_from_url9s�
�rc
s.�fdd�}dd�}zt�|||�\}}Wn�tjyPt�|���j��Yn�tjtjfy|}z�WYd}~ntd}~0tj	tj
fy�}zt�t|���WYd}~n<d}~0tfy�}zt�t|���WYd}~n
d}~00|�r zt
�|�|fWStj�y|�d�Yn0t�|�|fS)Ncst|����|fS)N)rZ	get_bytes)r�rr
r�
get_bundleIsz1read_mergeable_from_transport.<locals>.get_bundlecSs8t|�tj|jdd�\}}|s.t�td���t�|�S)NF)Zexclude_trailing_slashzA directory cannot be a bundle)	rZurlutils�split�targetr�
NotABundle�gettextrZget_transport_from_url)rZ	exceptionZredirection_noticerrr
r
r�redirected_transportLs�
z;read_mergeable_from_transport.<locals>.redirected_transportr)rZdo_catching_redirectionsrZTooManyRedirectionsr#rrZConnectionReset�ConnectionErrorZTransportErrorZ	PathError�str�IOErrorZMergeDirectiveZ
from_linesZNotAMergeDirective�seekZ_serializerZread_bundle)rrrr r%Zbytef�er
rrrHs(�"$r)TN)T)Z
__future__rr�globals�rZsixishrZtracer�objectrrrr
r
r
r�<module>s