-=[ Mr. Bumblebee ]=-
_Indonesia_
σ
ξ:οNc @@ sώ d Z d d l m Z d d l m Z d d l Z d d l m Z m Z m Z m
Z
d d l m Z d d l
m Z m Z d d l m Z e
j d e
j d
i d d 6d
d 6d d 6d d 6d d 6d d 6d d 6Z d e f d YZ d Z d S( s% Directory lookup that uses Launchpad.i ( t absolute_import( t urlsplitN( t debugt errorst tracet transport( t gettext( t LaunchpadServicet ResolveLaunchpadPathRequest( t get_lp_logins bzr+ssht lpt nattyt nt maverickt mt lucidt lt karmict kt jauntyt jt hardyt ht dappert dt LaunchpadDirectoryc B@ sM e Z d Z d Z d Z d Z d Z d Z e d d Z
RS( c C@ s( | d k o' | j d p' | j d S( s’ Does the URL require a Launchpad login in order to be reached?
The URL is specified by its parsed components, as returned from
urlsplit.
s bzr+ssht sftps
launchpad.nets
launchpad.dev( s bzr+sshR ( t endswith( t selft schemet netloct patht queryt fragment( ( sI /usr/lib/python2.7/dist-packages/bzrlib/plugins/launchpad/lp_directory.pyt _requires_launchpad_login7 s c C@ s
| j | S( s See DirectoryService.look_up( t _resolve( R t namet url( ( sI /usr/lib/python2.7/dist-packages/bzrlib/plugins/launchpad/lp_directory.pyt look_upB s c
C@ sζ t | \ } } } } } | d k r3 t j } n t j | } d | f } t } | j d r± | j d } t | d k s₯ | d d k r» t | d k r» t } q» n
| d
7} | rΤ | j | | | Si | | g d 6S(
Nt s bzr+ssh://bazaar.%s/t ~t /i i t ubuntut debiani s +branch/t urls( R* R+ (
R R t DEFAULT_INSTANCEt LAUNCHPAD_DOMAINSt Falset
startswitht splitt lent Truet _resolve_via_xmlrpc(
R R R% t _request_factoryt _R t base_urlt baset
maybe_invalidt parts( ( sI /usr/lib/python2.7/dist-packages/bzrlib/plugins/launchpad/lp_directory.pyt _resolve_locallyF s
"
c C@ sf t j | } | | } y | j | } Wn1 t j k
ra } t j d | d | j n X| S( NR t extra( R t for_urlt submitt xmlrpclibt FaultR t
InvalidURLt faultString( R R R% R5 t servicet resolvet resultt fault( ( sI /usr/lib/python2.7/dist-packages/bzrlib/plugins/launchpad/lp_directory.pyR4 ` s c
C@ s6 t | \ } } } } } | d k r,| d k rB d } t } n' | d k r] d } i } n t d | j d } t | d k r£ d }
| d } d } n: t | d k rΚ d
}
| \ } } n t j d | | j | | } |
t d | d
| d | } t | \ } } } } } n | | f S( NR* t debianlpR+ s% scheme should be ubuntu: or debianlp:R) i s lp:%(distro)s/%(project)si i s$ lp:%(distro)s/%(series)s/%(project)ss Bad path: %st distrot seriest project( s ubuntuRG (
R t _ubuntu_series_shortcutst AssertionErrorR1 R2 t NoneR RA t gett dict(
R R% R R R R R! RH t
distro_seriest
path_partst lp_url_templateRJ RI ( ( sI /usr/lib/python2.7/dist-packages/bzrlib/plugins/launchpad/lp_directory.pyt _update_url_schemej s2
c C@ sO | j d rK | d k r6 t j d | d d n d | | d } n | S( Ns ~/R R<