ÿØÿà JFIF      ÿÛ „ 	 ( %!1!%)+//.383,7(-.+



-%%-////---/-.+/--+------/------/--0+--/-/-----.-----ÿÀ  ¥2" ÿÄ               ÿÄ J  	     ! 1AQ"aq2‘#BR‚¡ÁÑ3br’¢±Âð$CSƒ²á4c“%DsÓñÿÄ              ÿÄ *        !1AQa‘"2q3±ð#b¡ÿÚ   ? ¼QxJQaÍuò¸Zö Úü8,ÐÚú
"SSn<rçù–´âE—^ªBÖ9À\†¸ÔÁT­ÃÛ5
ëd´³Í#Ý;Þ38œî ¶H£M:wÎ3…³…âpÔF&‚FK¸9„â4àGEõªfÿ ‘ñ(ßw­pŽF|È¥ù®häðÍÑ¶¹‘[ÒinÙW¶ùñY˜Q{›K"išÒ[Ú8žë\F¹@-?v"ÔU”,ìöžkÿ {I‡£šÍ?e
ríV
..............................................................................................................................................................................
.............................................................................                                                  
                                                                                                                                                                                     ÿØÿà JFIF      ÿÛ „ 	 ( %!1!%)+//.383,7(-.+



-%%-////---/-.+/--+------/------/--0+--/-/-----.-----ÿÀ  ¥2" ÿÄ               ÿÄ J  	     ! 1AQ"aq2‘#BR‚¡ÁÑ3br’¢±Âð$CSƒ²á4c“%DsÓñÿÄ              ÿÄ *        !1AQa‘"2q3±ð#b¡ÿÚ   ? ¼QxJQaÍuò¸Zö Úü8,ÐÚú
"SSn<rçù–´âE—^ªBÖ9À\†¸ÔÁT­ÃÛ5
ëd´³Í#Ý;Þ38œî ¶H£M:wÎ3…³…âpÔF&‚FK¸9„â4àGEõªfÿ ‘ñ(ßw­pŽF|È¥ù®häðÍÑ¶¹‘[ÒinÙW¶ùñY˜Q{›K"išÒ[Ú8žë\F¹@-?v"ÔU”,ìöžkÿ {I‡£šÍ?e
ríV
..............................................................................................................................................................................
.............................................................................                                                  
                                                                                                                                                                                     
Yc           @@  s   d  d l  m Z d  d l Z d  d l Z d  d l Z d  d l m Z m Z d  d l m	 Z	 d  d l
 m Z d  d l m Z m Z d Z e j d  Z d	   Z e   Z d
 e f d     YZ d S(   i    (   t   absolute_importN(   t   PY2t	   text_type(   t
   InvalidDsn(   t	   to_string(   t	   parse_qslt   urlparses(   Unsupported Sentry DSN scheme: {0} ({1})t   ravenc          C@  ss   d d l  m }  d d l m } d t j k rO d t j k rO t j d  | Sd t j k ro t j d  | S|  S(	   Ni    (   t   ThreadedHTTPTransport(   t   HTTPTransportt   CURRENT_VERSION_IDt   INSTANCE_IDsO   Detected environment to be Google App Engine. Using synchronous HTTP transport.t   LAMBDA_TASK_ROOTsH   Detected environment to be AWS Lambda. Using synchronous HTTP transport.(   t   raven.transport.threadedR   t   raven.transport.httpR	   t   ost   environt   loggert   info(   R   R	   (    (    sB   /opt/alt/python27/lib/python2.7/site-packages/raven/conf/remote.pyt   discover_default_transport   s    t   RemoteConfigc           B@  s\   e  Z d d d d d d d   Z d   Z d   Z d   Z d   Z e d d d   Z	 RS(   c         C@  s}   | r( | j  d  } d | | f } n d  } | |  _ | |  _ | |  _ | |  _ | p[ i  |  _ | |  _ | ps t |  _	 d  S(   Nt   /s   %s/api/%s/store/(
   t   rstript   Nonet   base_urlt   projectt
   public_keyt
   secret_keyt   optionst   store_endpointt   DEFAULT_TRANSPORTt   _transport_cls(   t   selfR   R   R   R   t	   transportR   R   (    (    sB   /opt/alt/python27/lib/python2.7/site-packages/raven/conf/remote.pyt   __init__(   s    					c         C@  s   t  |  j  S(   N(   R   R   (   R    (    (    sB   /opt/alt/python27/lib/python2.7/site-packages/raven/conf/remote.pyt   __unicode__9   s    c         C@  s"   t  |  j |  j |  j |  j g  S(   N(   t   allR   R   R   R   (   R    (    (    sB   /opt/alt/python27/lib/python2.7/site-packages/raven/conf/remote.pyt	   is_active<   s    c         C@  s;   |  j  s d  St |  d  s4 |  j |  j   |  _ n  |  j S(   Nt
   _transport(   R   t   hasattrR   R   R&   (   R    (    (    sB   /opt/alt/python27/lib/python2.7/site-packages/raven/conf/remote.pyt   get_transport?   s
    	c         C@  sR   t  |  j  } | j } | j r5 | d | j 7} n  d |  j | | j |  j f S(   Ns   :%ss   //%s@%s%s/%s(   R   R   t   hostnamet   portR   t   pathR   (   R    t   urlt   netloc(    (    sB   /opt/alt/python27/lib/python2.7/site-packages/raven/conf/remote.pyt   get_public_dsnG   s
    		c         C@  s  t  r t |  } n  t | j    } | j d k rF t j d  n  | d  k r | s} d d l m	 } m
 } | |  } n  | j | j  s t t j | j |    n  | j | j  } n  | j } | j r | d | j 7} n  | j j d d  } t |  d k r| d }	 n d	 }	 | d
 }
 t | |
 | j | j g  sct d | j     n  d | j j d d  d
 | |	 f } |  d | d |
 d | j d | j d t t | j   d |  S(   Nt   httpt   httpssn   Transport selection via DSN is deprecated. You should explicitly pass the transport class to Client() instead.i    (   t   TransportRegistryt   default_transportss   :%sR   i   t    is   Invalid Sentry DSN: %rs	   %s://%s%st   +R   R   R   R   R   R!   (   R/   R0   (   R   R   R   t   stript   schemet   warningst   warnR   t   raven.transportR1   R2   t   supported_schemeR   t   ERR_UNKNOWN_SCHEMEt   formatt   get_transport_clsR)   R*   R+   t   rsplitt   lenR$   t   usernamet   passwordt   geturlt   dictR   t   query(   t   clst   valueR!   t   transport_registryR,   R1   R2   R-   t	   path_bitsR+   R   R   (    (    sB   /opt/alt/python27/lib/python2.7/site-packages/raven/conf/remote.pyt   from_stringN   s<    		
&		N(
   t   __name__t
   __module__R   R"   R#   R%   R(   R.   t   classmethodRI   (    (    (    sB   /opt/alt/python27/lib/python2.7/site-packages/raven/conf/remote.pyR   '   s   					(   t
   __future__R    t   loggingR   R7   t   raven.utils.compatR   R   t   raven.exceptionsR   t   raven.utils.encodingR   t   raven.utils.urlparseR   R   R;   t	   getLoggerR   R   R   t   objectR   (    (    (    sB   /opt/alt/python27/lib/python2.7/site-packages/raven/conf/remote.pyt   <module>   s   		