ó
O'—^c           @@  sl  d  Z  d d l m Z d d l m Z d d l m Z d d l m Z d „  Z	 d9 d „ Z i d d	 6d d
 6d d 6d d 6d d 6d d 6d d 6d d 6d d 6d d 6d d 6d d 6d d 6d d  6d! d" 6d! d# 6e d$ d d ƒ d% 6e d& d d ƒ d' 6e d( d ƒ d) 6e d* d ƒ d+ 6e d, d ƒ d- 6d. d/ 6d0 d1 6d0 d2 6d3 d4 6d5 d6 6Z i  Z d9 d7 „ Z d9 d8 „ Z d9 S(:   s8   
kombu.transport
===============

Built-in transports.

i    (   t   absolute_import(   t   string_t(   t   _detect_environment(   t   symbol_by_namec          C@  s>   t  ƒ  d k r: y d d  l }  Wn t k
 r2 q: Xt Sn  d  S(   Nt   defaulti    (   R   t   librabbitmqt   ImportErrort   True(   R   (    (    s:   /tmp/pip-unpacked-wheel-UAnTfW/kombu/transport/__init__.pyt   supports_librabbitmq   s    c         @  s   | ‰ ‡  ‡ ‡ f d †  } | S(   Nc          @  sq   d d  l  }  t ˆ ƒ r! ˆ ƒ  p$ ˆ } d j ˆ ƒ } d j | ƒ } ˆ  pN ˆ } |  j d j ˆ | | ƒ ƒ | S(   Ni    s   ghettoq.taproot.{0}s   kombu.transport.{0}.Transports—   
    Ghettoq does not work with Kombu, but there is now a built-in version
    of the {0} transport.

    You should replace {1!r} with: {2!r}
        (   t   warningst   callablet   formatt   warn(   R	   t   _newt
   gtransportt
   ktransportt   this(   t   aliast   namet   xxx(    s:   /tmp/pip-unpacked-wheel-UAnTfW/kombu/transport/__init__.pyt   __inner   s    (    (   R   t   newR   R   (    (   R   R   R   s:   /tmp/pip-unpacked-wheel-UAnTfW/kombu/transport/__init__.pyt   _ghettoq   s    s    kombu.transport.pyamqp:Transportt   amqpt   pyamqps%   kombu.transport.librabbitmq:TransportR   s    kombu.transport.memory:Transportt   memorys   kombu.transport.redis:Transportt   rediss   kombu.transport.SQS:Transportt   SQSt   sqss#   kombu.transport.beanstalk:Transportt	   beanstalks!   kombu.transport.mongodb:Transportt   mongodbs!   kombu.transport.couchdb:Transportt   couchdbs#   kombu.transport.zookeeper:Transportt	   zookeepers    kombu.transport.django:Transportt   djangos$   kombu.transport.sqlalchemy:Transportt
   sqlalchemyt   sqlas   kombu.transport.SLMQ.Transportt   SLMQt   slmqt   Rediss   ghettoq.taproot.Redist   Databases   ghettoq.taproot.Databaset   MongoDBs   ghettoq.taproot.MongoDBt	   Beanstalks   ghettoq.taproot.Beanstalkt   CouchDBs   ghettoq.taproot.CouchDBs$   kombu.transport.filesystem:Transportt
   filesystems   kombu.transport.zmq:Transportt   zeromqt   zmqs!   kombu.transport.amqplib:Transportt   amqplibs   kombu.transport.qpid:Transportt   qpidc         C@  sÇ   t  |  t ƒ rÃ y t |  }  Wn t k
 r  d |  k r¹ d |  k r¹ d d l m } | |  t ƒ } | r… t d j |  | ƒ ƒ ‚ n  t d j |  ƒ ƒ ‚ q¹ n Xt |  ƒ r¹ |  ƒ  }  n  t |  ƒ S|  S(   Nt   .t   :i    (   t   fmatch_bests*   No such transport: {0}.  Did you mean {1}?s   No such transport: {0}(	   t
   isinstanceR   t   TRANSPORT_ALIASESt   KeyErrort   kombu.utils.textR2   R   R
   R   (   t	   transportR2   t   alt(    (    s:   /tmp/pip-unpacked-wheel-UAnTfW/kombu/transport/__init__.pyt   resolve_transportM   s     
c         C@  s'   |  t  k r t |  ƒ t  |  <n  t  |  S(   sÿ   Get transport class by name.

    The transport string is the full path to a transport class, e.g.::

        "kombu.transport.pyamqp:Transport"

    If the name does not include `"."` (is not fully qualified),
    the alias table will be consulted.

    (   t   _transport_cacheR9   (   R7   (    (    s:   /tmp/pip-unpacked-wheel-UAnTfW/kombu/transport/__init__.pyt   get_transport_clsa   s    N(   t   __doc__t
   __future__R    t
   kombu.fiveR   t	   kombu.synR   t   kombu.utilsR   R   t   NoneR   R4   R:   R9   R;   (    (    (    s:   /tmp/pip-unpacked-wheel-UAnTfW/kombu/transport/__init__.pyt   <module>   sH   	

