ó
è?F[c           @   s™  d  d l  Z d  d l Z d  d l Z d  d l Z d  d l m Z d  d l m Z d  d l	 Z
 d  d l Z
 d  d l m Z d  d l m Z m Z m Z m Z d g Z i d> d
 6d? d 6d@ d 6dA d 6dB d 6dC d 6dD d 6dE d 6dF d 6dG d" 6dH d$ 6dI d' 6dJ d* 6Z d+ „  Z dK Z i  Z d2 „  Z d3 „  Z d4 „  Z e d5 „ Z d6 „  Z d7 „  Z d8 „  Z d9 „  Z  d: „  Z! d; „  Z" d< „  Z# d e f d= „  ƒ  YZ$ d S(L   iÿÿÿÿN(   t   AWSQueryConnection(   t   BotoServerError(   t
   XmlHandler(   t   filtert   mapt   sixt   encodebytest   MWSConnections
   2009-01-01t   Merchantt   /t   Feedst   Reportss
   2013-09-01t   SellerIds   /Orders/2013-09-01t   Orderss
   2011-10-01s   /Products/2011-10-01t   Productss
   2011-07-01s   /Sellers/2011-07-01t   Sellerss
   2010-10-01s&   /FulfillmentInboundShipment/2010-10-01t   Inbounds'   /FulfillmentOutboundShipment/2010-10-01t   Outbounds    /FulfillmentInventory/2010-10-01t	   Inventorys
   2013-04-01s   /Recommendations/2013-04-01t   Recommendationss
   2014-03-01s   /CustomerInformation/2014-03-01t   CustomerInfos   /CartInformation/2014-03-01t   CartInfos
   2013-07-01s   /Subscriptions/2013-07-01t   Subscriptionss
   2013-01-01s   /OffAmazonPayments/2013-01-01t   OffAmazonPaymentsc         C   s   t  t j |  ƒ j ƒ  ƒ j ƒ  S(   N(   R   t   hashlibt   md5t   digestt   strip(   t   c(    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   <lambda>9   s    t   actiont   responset   sectiont   quotat   restoret   versionc         C   s:   x* t  D]" } t | | t |  | d  ƒ ƒ q W|  | _ | S(   N(   t   decorated_attrst   setattrt   getattrt   Nonet   __wrapped__(   t   funct   tot   attr(    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   add_attrs_from?   s     	c             s   ‡  f d †  } | S(   Nc            sC   ‡ ‡  f d †  } d j  ˆ  j d j ˆ ƒ ƒ | _ t ˆ  d | ƒS(   Nc            s¾   x« g  ˆ  D] } | j  d ƒ ^ q
 D]‡ \ } } | | k r# | d | | rR d pU d } x> t t | | ƒ ƒ D]& } | | | | | t | d ƒ <qp W| j | ƒ q# q# Wˆ |  | | Ž S(   Nt   .t    i   (   t   splitt   ranget   lent   strt   pop(   t   selft   argst   kwt   ft   keyt   acct   newkeyt   i(   t   fieldsR)   (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   wrapperJ   s    /$s   {0}
Lists: {1}s   , R*   (   t   formatt   __doc__t   joinR,   (   R)   R=   (   R<   (   R)   s2   lib/python2.7/site-packages/boto/mws/connection.pyt	   decoratorH   s    (    (   R<   RA   (    (   R<   s2   lib/python2.7/site-packages/boto/mws/connection.pyt   structured_listsF   s    c            s   ‡  f d †  } | S(   Nc            s:   ‡ ‡  f d †  } d j  ˆ  j ˆ ƒ | _ t ˆ  d | ƒS(   Nc             sš   t  g  ˆ  d f D] } | | k ^ q ƒ rO d j ˆ j ˆ  ƒ } t | ƒ ‚ n  | j ˆ  ƒ | d <i | j d ƒ d 6t | d ƒ d 6| d <ˆ |  | Ž  S(   Nt   content_typesB   {0} requires {1} and content_type arguments for building HTTP bodyt   bodys   Content-Types   Content-MD5t   headers(   t   anyR>   R   t   KeyErrorR3   t   content_md5(   R5   R6   R7   t   message(   t   fieldR)   (    s2   lib/python2.7/site-packages/boto/mws/connection.pyR=   \   s    +s   {0}
Required HTTP Body: {1}R*   (   R>   R?   R,   (   R)   R=   (   RJ   (   R)   s2   lib/python2.7/site-packages/boto/mws/connection.pyRA   Z   s    (    (   RJ   RA   (    (   RJ   s2   lib/python2.7/site-packages/boto/mws/connection.pyt	   http_bodyX   s    c         C   sR  t  |  t j j j ƒ r4 t |  j | | d | ƒnt  |  t j ƒ r‘ x|  D]= } | j	 d ƒ rh qM n  t |  | | | d | d | ƒqM Wn½ t  |  t
 j ƒ r° |  | | <nž t  |  t j ƒ rx‰ t |  ƒ D]F \ } } | rç d pê d t | d ƒ } t | | | | d | ƒqÏ Wn2 t  |  t ƒ rDt |  ƒ j ƒ  | | <n
 |  | | <d  S(   Nt   memberst   _R-   s   .member.i   (   t
   isinstancet   botot   mwsR   t   ResponseElementt   destructure_objectt   __dict__t   collectionst   Mappingt
   startswithR   t   string_typest   Iterablet	   enumerateR2   t   boolt   lower(   t   valuet   intot   prefixRL   t   namet   indext   elementt   suffix(    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyRR   m   s$     c             s   ‡  ‡ f d †  } | S(   Nc            sF   ‡ ‡  ‡ f d †  } d j  ˆ  j d j ˆ ƒ ƒ | _ t ˆ  d | ƒS(   Nc             sa   ˆ j  d t ƒ } x? t ‡  f d †  ˆ ƒ D]% } t ˆ  j | ƒ ˆ  | d | ƒq+ Wˆ |  ˆ  Ž  S(   NRL   c            s
   |  ˆ  k S(   N(    (   R;   (   R6   (    s2   lib/python2.7/site-packages/boto/mws/connection.pyR   ‰   s    (   t   gett   FalseR   RR   R3   (   R5   R6   RL   RJ   (   R<   R)   t   kwargs(   R6   s2   lib/python2.7/site-packages/boto/mws/connection.pyR=   ‡   s    #sJ   {0}
Element|Iter|Map: {1}
(ResponseElement or anything iterable/dict-like)s   , R*   (   R>   R?   R@   R,   (   R)   R=   (   R<   Re   (   R)   s2   lib/python2.7/site-packages/boto/mws/connection.pyRA   …   s    (    (   R<   Re   RA   (    (   R<   Re   s2   lib/python2.7/site-packages/boto/mws/connection.pyt   structured_objectsƒ   s    c             s   ‡  f d †  } | S(   Nc            se   ‡  ‡ f d †  } d j  g  ˆ D] } d j  | ƒ ^ q ƒ } d j ˆ  j | ƒ | _ t ˆ  d | ƒS(   Nc             sŒ   ‡  f d †  } d t  t t | ˆ ƒ ƒ ƒ k r d j g  ˆ D] } d j | ƒ ^ q= ƒ } d j ˆ j | ƒ } t | ƒ ‚ n  ˆ |  ˆ  Ž  S(   Nc            s   t  ‡  f d †  |  Dƒ ƒ S(   Nc         3   s   |  ] } | ˆ  k Vq d  S(   N(    (   t   .0R8   (   R6   (    s2   lib/python2.7/site-packages/boto/mws/connection.pys	   <genexpr>˜   s    (   t   all(   t   group(   R6   (    s2   lib/python2.7/site-packages/boto/mws/connection.pyR   ˜   s    i   s    OR t   +s   {0} requires {1} argument(s)(   R1   t   listR   R@   R>   R   RG   (   R5   R6   t   hasgroupt   gRI   (   R)   t   groups(   R6   s2   lib/python2.7/site-packages/boto/mws/connection.pyt   requires—   s    !+s    OR Rj   s   {0}
Required: {1}R*   (   R@   R>   R?   R,   (   R)   Ro   Rm   RI   (   Rn   (   R)   s2   lib/python2.7/site-packages/boto/mws/connection.pyRA   •   s
    +(    (   Rn   RA   (    (   Rn   s2   lib/python2.7/site-packages/boto/mws/connection.pyRo   “   s    c             s   ‡  f d †  } | S(   Nc            se   ‡  ‡ f d †  } d j  g  ˆ D] } d j  | ƒ ^ q ƒ } d j ˆ  j | ƒ | _ t ˆ  d | ƒS(   Nc             sŒ   ‡  f d †  } t  t t | ˆ ƒ ƒ ƒ d k r d j g  ˆ D] } d j | ƒ ^ q= ƒ } d j ˆ j | ƒ } t | ƒ ‚ n  ˆ |  ˆ  Ž  S(   Nc            s   t  ‡  f d †  |  Dƒ ƒ S(   Nc         3   s   |  ] } | ˆ  k Vq d  S(   N(    (   Rg   R8   (   R6   (    s2   lib/python2.7/site-packages/boto/mws/connection.pys	   <genexpr>«   s    (   Rh   (   Ri   (   R6   (    s2   lib/python2.7/site-packages/boto/mws/connection.pyR   «   s    i    i   s    OR Rj   s   {0} requires either {1}(   i    i   (   R1   Rk   R   R@   R>   R   RG   (   R5   R6   Rl   Rm   RI   (   R)   Rn   (   R6   s2   lib/python2.7/site-packages/boto/mws/connection.pyR=   ª   s    !+s    OR Rj   s   {0}
Either: {1}R*   (   R@   R>   R?   R,   (   R)   R=   Rm   RI   (   Rn   (   R)   s2   lib/python2.7/site-packages/boto/mws/connection.pyRA   ¨   s
    +(    (   Rn   RA   (    (   Rn   s2   lib/python2.7/site-packages/boto/mws/connection.pyt	   exclusive¦   s    c            s   ‡  ‡ f d †  } | S(   Nc            sk   ‡ ‡  ‡ f d †  } d j  g  ˆ D] } d j  | ƒ ^ q" ƒ } d j ˆ  j ˆ | ƒ | _ t ˆ  d | ƒS(   Nc             s—   ‡ f d †  ‰  ˆ ˆ k rŠ t  ‡  f d †  ˆ Dƒ ƒ rŠ d j g  ˆ D] } d j | ƒ ^ qE ƒ } d j ˆ j ˆ | ƒ } t | ƒ ‚ n  ˆ |  ˆ Ž  S(   Nc            s   t  ‡  f d †  |  Dƒ ƒ S(   Nc         3   s   |  ] } | ˆ  k Vq d  S(   N(    (   Rg   R8   (   R6   (    s2   lib/python2.7/site-packages/boto/mws/connection.pys	   <genexpr>¾   s    (   Rh   (   Ri   (   R6   (    s2   lib/python2.7/site-packages/boto/mws/connection.pyR   ¾   s    c         3   s   |  ] } ˆ  | ƒ Vq d  S(   N(    (   Rg   Rm   (   Rl   (    s2   lib/python2.7/site-packages/boto/mws/connection.pys	   <genexpr>¿   s    s    OR Rj   s   {0} argument {1} requires {2}(   RF   R@   R>   R   RG   (   R5   R6   Rm   RI   (   RJ   R)   Rn   (   Rl   R6   s2   lib/python2.7/site-packages/boto/mws/connection.pyR=   ½   s    )+s    OR Rj   s   {0}
{1} requires: {2}R*   (   R@   R>   R?   R,   (   R)   R=   Rm   RI   (   RJ   Rn   (   R)   s2   lib/python2.7/site-packages/boto/mws/connection.pyRA   »   s    +(    (   RJ   Rn   RA   (    (   RJ   Rn   s2   lib/python2.7/site-packages/boto/mws/connection.pyt	   dependent¹   s    c             s   ‡  f d †  } | S(   Nc            sC   ‡ ‡  f d †  } d j  ˆ  j d j ˆ ƒ ƒ | _ t ˆ  d | ƒS(   Nc             sV   t  ‡  f d †  ˆ Dƒ ƒ sI d j ˆ j d j ˆ ƒ ƒ } t | ƒ ‚ n  ˆ |  ˆ  Ž  S(   Nc         3   s   |  ] } | ˆ  k Vq d  S(   N(    (   Rg   R;   (   R6   (    s2   lib/python2.7/site-packages/boto/mws/connection.pys	   <genexpr>Ò   s    s,   {0} requires at least one of {1} argument(s)s   , (   RF   R>   R   R@   RG   (   R5   R6   RI   (   R<   R)   (   R6   s2   lib/python2.7/site-packages/boto/mws/connection.pyRo   Ñ   s
    s   {0}
Some Required: {1}s   , R*   (   R>   R?   R@   R,   (   R)   Ro   (   R<   (   R)   s2   lib/python2.7/site-packages/boto/mws/connection.pyRA   Ï   s    (    (   R<   RA   (    (   R<   s2   lib/python2.7/site-packages/boto/mws/connection.pyt   requires_some_ofÍ   s    c             s   ‡  f d †  } | S(   Nc            sC   ‡ ‡  f d †  } d j  ˆ  j d j ˆ ƒ ƒ | _ t ˆ  d | ƒS(   Nc             sc   xS g  ˆ  D]$ } t  | j | ƒ t ƒ r
 | ^ q
 D]  } t | | ƒ j ƒ  | | <q2 Wˆ |  | Ž  S(   N(   RN   Rc   RZ   R2   R[   (   R5   R6   R7   RJ   (   R<   R)   (    s2   lib/python2.7/site-packages/boto/mws/connection.pyR=   á   s    8s   {0}
Booleans: {1}s   , R*   (   R>   R?   R@   R,   (   R)   R=   (   R<   (   R)   s2   lib/python2.7/site-packages/boto/mws/connection.pyRA   ß   s    (    (   R<   RA   (    (   R<   s2   lib/python2.7/site-packages/boto/mws/connection.pyt   boolean_argumentsÝ   s    	c            s(   t  | ƒ t | ƒ ‡  ‡ f d † } | S(   Nc            sÀ   t  ˆ \ ‰ ‰  ‰ d j ˆ p: t t j ˆ j j d ƒ ƒ ƒ ‰ ‡  ‡ ‡ ‡ ‡ ‡ ‡ f d †  } x* t D]" } t | | t	 ƒ  j
 | ƒ ƒ qh Wd j ˆ ˆ ˆ ˆ ˆ j ƒ | _ ˆ j t ˆ <| S(   NR.   RM   c            sª   | j  ˆ  t |  ˆ  d  ƒ ƒ | ˆ  d  k rP d j ˆ ˆ  ˆ  ƒ } t | ƒ ‚ n  ˆ | d <ˆ | d <|  j ˆ d |  ƒ} t d ˆ d ˆ d ˆ ƒ } ˆ |  | | | | Ž S(   Ns?   {0} requires {1} argument. Set the MWSConnection.{2} attribute?t   Actiont   Versiont
   connectiont   pathR!   R"   (   t
   setdefaultR&   R'   R>   RG   t   _response_factoryt   dict(   R4   R5   R6   RI   R   t   request(   t	   accesskeyR   R)   Rw   R!   R"   R#   (    s2   lib/python2.7/site-packages/boto/mws/connection.pyR=   ñ   s    

s3   MWS {0}/{1} API call; quota={2} restore={3:.2f}
{4}(   t   api_version_pathR@   R   R2   t
   capitalizet   __name__R/   R$   R%   t   localsRc   R>   R?   t   api_call_map(   R)   R!   R"   R=   R+   (   t   apiR    (   R|   R   R)   Rw   R!   R"   R#   s2   lib/python2.7/site-packages/boto/mws/connection.pyRA   í   s    -! (   t   intt   float(   R    R!   R"   R‚   RA   (    (   R‚   R    s2   lib/python2.7/site-packages/boto/mws/connection.pyt
   api_actionë   s    $c           B   s’  e  Z e j j j Z e j j j Z d  „  Z d „  Z	 d „  Z
 d „  Z d dè d „ Z d „  Z d „  Z d „  Z d	 „  Z e d
 g ƒ e d ƒ e d ƒ e d ƒ e d d d ƒ dè d d „ ƒ ƒ ƒ ƒ ƒ Z e d d d ƒ e d d d ƒ d „  ƒ ƒ Z e d g ƒ e d d d ƒ d „  ƒ ƒ Z e d d ƒ e d d d ƒ d „  ƒ ƒ Z e d d ƒ e d d d ƒ d „  ƒ ƒ Z e d g ƒ e d d d ƒ d „  ƒ ƒ Z d  „  Z e d! g ƒ e d ƒ e d" ƒ e d# d d ƒ d$ „  ƒ ƒ ƒ ƒ Z e d% d& d' ƒ e d# d d ƒ d( „  ƒ ƒ Z e d g ƒ e d# d d ƒ d) „  ƒ ƒ Z  e d& d' ƒ e d# d d ƒ d* „  ƒ ƒ Z! e d# d d ƒ d+ „  ƒ Z" e d, ƒ e d% d& ƒ e d# d d ƒ d- „  ƒ ƒ ƒ Z# e d g ƒ e d# d d ƒ d. „  ƒ ƒ Z$ e d, ƒ e d& ƒ e d# d d ƒ d/ „  ƒ ƒ ƒ Z% e d0 g ƒ e d# d d ƒ d1 „  ƒ ƒ Z& e d! d2 g ƒ e d# d d ƒ d3 „  ƒ ƒ Z' e d& ƒ e d# d d ƒ d4 „  ƒ ƒ Z( e d g ƒ e d# d d ƒ d5 „  ƒ ƒ Z) e d& ƒ e d# d d ƒ d6 „  ƒ ƒ Z* e d7 g ƒ e d, ƒ e d8 ƒ e d# d d ƒ d9 „  ƒ ƒ ƒ ƒ Z+ e d: d; g ƒ e, d: d; ƒ e d< d= d> ƒ d? „  ƒ ƒ ƒ Z- e d@ dA dB g ƒ e, dA dB ƒ e d< d= d> ƒ dC „  ƒ ƒ ƒ Z. e d@ g ƒ e, dA dB ƒ e d< d= d> ƒ dD „  ƒ ƒ ƒ Z/ e0 dE dF ƒ e dG dH ƒ e d< d= d> ƒ dI „  ƒ ƒ ƒ Z1 e d g ƒ e d< d= d> ƒ dJ „  ƒ ƒ Z2 e d@ g dK dL g ƒ e d< d= d> ƒ dM „  ƒ ƒ Z3 e d g ƒ e d< d= d> ƒ dN „  ƒ ƒ Z4 e d< dO dP dQ ƒ dR „  ƒ Z5 e dS g dT g ƒ e dU ƒ e dV d= d> ƒ dW „  ƒ ƒ ƒ Z6 e d g ƒ e dV d= d> ƒ dX „  ƒ ƒ Z7 e dV dO dP dQ ƒ dY „  ƒ Z8 e dZ g ƒ e d[ d= d> ƒ d\ „  ƒ ƒ Z9 e d] d^ g ƒ e, d] d^ ƒ e d[ d= d> ƒ d_ „  ƒ ƒ ƒ Z: e d` da db dc dd de d^ g ƒ e, dd d^ ƒ e d[ d= d> ƒ df „  ƒ ƒ ƒ Z; e d` g ƒ e d[ d= d> ƒ dg „  ƒ ƒ Z< e d[ d= d> ƒ dh „  ƒ Z= e d g ƒ e d[ d= d> ƒ di „  ƒ ƒ Z> e d` g ƒ e d[ d= d> ƒ dj „  ƒ ƒ Z? e d[ dO dP dQ ƒ dk „  ƒ Z@ e dl g dK g ƒ e dm g ƒ eA dl g dK g ƒ eB dn dl g ƒ eA dK g do g dp g ƒ eB dL dK g ƒ eA dl g dL g ƒ e, dq dr ds ƒ e dt du dv dw ƒ e dx dy d ƒ dz „  ƒ ƒ ƒ ƒ ƒ ƒ ƒ ƒ ƒ ƒ ZC e d g ƒ e dx dy d ƒ d{ „  ƒ ƒ ZD e d| g ƒ e d} ƒ e dx dy d ƒ d~ „  ƒ ƒ ƒ ZE e d| g ƒ e dx d= dO ƒ d „  ƒ ƒ ZF e d g ƒ e dx d= dO ƒ d€ „  ƒ ƒ ZG e dx dO dP dQ ƒ d „  ƒ ZH e dm d‚ g ƒ e dƒ d„ d„ ƒ d… „  ƒ ƒ ZI e dm d† g ƒ e d‡ ƒ e dƒ d„ d„ ƒ dˆ „  ƒ ƒ ƒ ZJ e dm d‰ dŠ g ƒ e d‹ ƒ e dƒ d„ d„ ƒ dŒ „  ƒ ƒ ƒ ZK e dm d g ƒ e dŽ ƒ e dƒ d„ d d ƒ d „  ƒ ƒ ƒ ZL e dm d† g ƒ e d‡ ƒ e dƒ d„ d d‘ ƒ d’ „  ƒ ƒ ƒ ZM e dm d g ƒ e dŽ ƒ e dƒ d„ d“ d” ƒ d• „  ƒ ƒ ƒ ZN e dm d† g ƒ e d‡ ƒ e dƒ d„ d“ d– ƒ d— „  ƒ ƒ ƒ ZO e dm d˜ g ƒ e dƒ d„ d„ d™ ƒ dš „  ƒ ƒ ZP e dm d› g ƒ e dƒ d„ d„ dœ ƒ d „  ƒ ƒ ZQ e dƒ dO dP dQ ƒ dž „  ƒ ZR e dm d g ƒ e dŽ ƒ e dƒ d„ d dŸ ƒ d  „  ƒ ƒ ƒ ZS e dm d† g ƒ e d‡ ƒ e dƒ d„ d d¡ ƒ d¢ „  ƒ ƒ ƒ ZT e d£ d d ƒ d¤ „  ƒ ZU e d g ƒ e d£ d d ƒ d¥ „  ƒ ƒ ZV e dm g ƒ e d¦ d“ dO ƒ d§ „  ƒ ƒ ZW e dm g ƒ e d¨ ƒ e d¦ d“ dO ƒ d© „  ƒ ƒ ƒ ZX e d g ƒ e d¦ d“ dO ƒ dª „  ƒ ƒ ZY e d¦ dO dP dQ ƒ d« „  ƒ ZZ e d¬ d d­ ƒ d® „  ƒ Z[ e d g ƒ e d¬ d¯ d° ƒ d± „  ƒ ƒ Z\ e d² g ƒ e d³ ƒ e d¬ d d­ ƒ d´ „  ƒ ƒ ƒ Z] e d¬ dO dP dQ ƒ dµ „  ƒ Z^ e d¶ g ƒ e d· d d­ ƒ d¸ „  ƒ ƒ Z_ e d g ƒ e d· d¯ d° ƒ d¹ „  ƒ ƒ Z` e dº g ƒ e d» ƒ e d· d d­ ƒ d¼ „  ƒ ƒ ƒ Za e d· dO dP dQ ƒ d½ „  ƒ Zb e dm d¾ g ƒ e, d¾ d¿ ec ƒe dÀ dÁ d> ƒ dÂ „  ƒ ƒ ƒ Zd e dm d¾ g ƒ e, d¾ d¿ ec ƒe dÀ dÁ d> ƒ dÃ „  ƒ ƒ ƒ Ze e dm g ƒ e dÀ dÁ d> ƒ dÄ „  ƒ ƒ Zf e dm d¾ g ƒ e, d¾ d¿ ec ƒe dÀ dÁ d> ƒ dÅ „  ƒ ƒ ƒ Zg e dm dÆ g ƒ e, dÆ d¿ ec ƒe dÀ dÁ d> ƒ dÇ „  ƒ ƒ ƒ Zh e dm dÈ d¾ g ƒ e, d¾ d¿ ec ƒe dÀ dÁ d> ƒ dÉ „  ƒ ƒ ƒ Zi e dm dÈ d¾ g ƒ e, d¾ d¿ ec ƒe dÀ dÁ d> ƒ dÊ „  ƒ ƒ ƒ Zj e dm g ƒ e dÀ dÁ d> ƒ dË „  ƒ ƒ Zk e dm dÆ g ƒ e, dÆ d¿ ec ƒe dÀ dÁ d> ƒ dÌ „  ƒ ƒ ƒ Zl e dÀ dO dP dQ ƒ dÍ „  ƒ Zm e dÎ dÏ g ƒ e, dÏ ƒ e dÐ d dÑ ƒ dÒ „  ƒ ƒ ƒ Zn e dÎ g ƒ e dÐ d„ dO ƒ dÓ „  ƒ ƒ Zo e dÎ g ƒ e dÐ d dÑ ƒ dÔ „  ƒ ƒ Zp e dÎ g ƒ e dÐ d dÑ ƒ dÕ „  ƒ ƒ Zq e dÎ g ƒ e dÐ d dÑ ƒ dÖ „  ƒ ƒ Zr e dÎ d× dØ g ƒ e, dØ ƒ e dÐ d dÑ ƒ dÙ „  ƒ ƒ ƒ Zs e dÚ g ƒ e dÐ d„ dO ƒ dÛ „  ƒ ƒ Zt e dÚ dÜ dÝ g ƒ e, dÝ ƒ e dÐ d dÑ ƒ dÞ „  ƒ ƒ ƒ Zu e dß g ƒ e dÐ d„ dO ƒ dà „  ƒ ƒ Zv e dÚ g ƒ e dÐ d dÑ ƒ dá „  ƒ ƒ Zw e dß dâ dã g ƒ e, dã ƒ e dÐ d dÑ ƒ dä „  ƒ ƒ ƒ Zx e då g ƒ e dÐ d„ dO ƒ dæ „  ƒ ƒ Zy e dÐ dO dP dQ ƒ dç „  ƒ Zz RS(é   c         O   s¢   | j  d d ƒ | j d t ƒ |  _ | j d d  ƒ pC | j d ƒ |  _ | j d d  ƒ pa |  j |  _ |  j | j d g  ƒ |  } t	 t
 |  ƒ j | | Ž  d  S(   Nt   hosts   mws.amazonservices.comt   sandboxR   R   t   factory_scopes(   Rx   R3   Rd   t
   _sandboxedR'   Rc   R   R   t   _setup_factoriest   superR   t   __init__(   R4   R5   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyRŒ     s    $c         K   s©   x¢ i t  j j |  j f d 6t  j j |  j f d 6j ƒ  D]h \ } \ } } | | k rw t |  d | | j | ƒ ƒ q9 | | g } t |  d | | d | ƒ ƒ q9 W| S(   Nt   response_factoryt   response_error_factoryRM   t   scopes(	   RO   RP   R   t   ResponseFactoryt	   exceptiont   ResponseErrorFactoryt   itemsR%   R3   (   R4   t   extrascopesR6   t   factoryt   scopet   DefaultR   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyRŠ     s    / !c         C   s9   |  j  s | S| j d ƒ } | d c d 7<d j | ƒ S(   NR	   iþÿÿÿt   _Sandbox(   R‰   R/   R@   (   R4   Rw   t   splat(    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   _sandboxify"  s
    	c         C   s   d g S(   NRP   (    (   R4   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   _required_auth_capability)  s    R.   c         C   s©  | p	 i  } |  j  | d ƒ } |  j d | d d | d | d | d |  j ƒ} y |  j | d d ƒ} Wn1 t k
 r› } |  j | j | j | j	 ƒ ‚ n X| j
 ƒ  } t j j | ƒ | sð t j j d | ƒ |  j | j | j | ƒ ‚ n  | j d	 k rQt j j d
 | j | j f ƒ t j j d | ƒ |  j | j | j | ƒ ‚ n  | j d ƒ }	 |	 d k	 r‡t | ƒ |	 k s‡t ‚ n  | j d ƒ }
 |  j | |
 | ƒ S(   sy   Make a POST request, optionally with a content body,
           and return the response, optionally as raw text.
        Rw   t   POSTt   datat   paramsRE   R†   t   override_num_retriess   Null body %siÈ   s   %s %ss   %ss   Content-MD5s   Content-TypeN(   Rš   t   build_base_http_requestR'   R†   t   _mexeR   t   _response_error_factoryt   statust   reasonRD   t   readRO   t   logt   debugt   errort	   getheaderRH   t   AssertionErrort   _parse_response(   R4   R{   Rž   t   parserRD   RE   Rw   R   t   bsR   t   contenttype(    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   _post_request,  s2    " c         C   s9   | j  d ƒ s | St | |  ƒ } t j j | | ƒ | S(   Ns   text/xml(   RV   R   t   xmlt   saxt   parseString(   R4   R¬   R®   RD   t   handler(    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyR«   J  s
    c         C   sE   d | k r t  j | d ƒ p! | } | t k rA t |  t | ƒ Sd S(   sÌ   Return the MWS API method referred to in the argument.
           The named method can be in CamelCase or underlined_lower_case.
           This is the complement to MWSConnection.any_call.action
        RM   N(   t   stringt   capwordsR   R&   R'   (   R4   R_   R   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt
   method_forQ  s    $c         O   s@   |  j  | ƒ } | s* t d j | ƒ ƒ ‚ |  j | | | Ž  ƒ S(   s¸   Pass a call name as the first argument and a generator
           is returned for the initial response and any continuation
           call responses made using the NextToken.
        s   No call named "{0}"(   R¶   Rª   R>   t   iter_response(   R4   t   callR5   R6   t   method(    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt	   iter_call[  s    c         c   sX   | V|  j  | j d ƒ } x6 | rS | j j d k rS | d | j j ƒ } | Vq Wd S(   sÀ   Pass a call's response as the initial argument and a
           generator is returned for the initial response and any
           continuation call responses made using the NextToken.
        t   ByNextTokent   truet	   NextTokenN(   R¶   t   _actiont   _resultt   HasNextR½   (   R4   R   t   more(    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyR·   d  s
    t   FeedTypet   PurgeAndReplacet   FeedContents   MarketplaceIdList.IdR
   i   ix   c         K   s+   | p	 i  } |  j  | | | d | d | ƒS(   s5   Uploads a feed for processing by Amazon MWS.
        RD   RE   (   R¯   (   R4   R{   R   RE   RD   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   submit_feedo  s    s   FeedSubmissionIdList.Ids   FeedTypeList.Types   FeedProcessingStatusList.Statusi
   i-   c         K   s   |  j  | | | ƒ S(   s]   Returns a list of all feed submissions submitted in the
           previous 90 days.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   get_feed_submission_list{  s    R½   i    c         K   s   |  j  | | | ƒ S(   sJ   Returns a list of feed submissions using the NextToken parameter.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt&   get_feed_submission_list_by_next_token„  s    c         K   s   |  j  | | | ƒ S(   sH   Returns a count of the feeds submitted in the previous 90 days.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   get_feed_submission_count‹  s    c         K   s   |  j  | | | ƒ S(   sx   Cancels one or more feed submissions and returns a
           count of the feed submissions that were canceled.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   cancel_feed_submissions’  s    t   FeedSubmissionIdi<   c         K   s   |  j  | | | ƒ S(   s,   Returns the feed processing report.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   get_feed_submission_resultš  s    c         K   sI   d j  t t j t j ƒ  ƒ ƒ } d j |  j j | ƒ } t	 | ƒ ‚ d S(   s8   Instruct the user on how to get service status.
        s   , sT   Use {0}.get_(section)_service_status(), where (section) is one of the following: {1}N(
   R@   R   R2   R[   R}   t   keysR>   t	   __class__R   t   AttributeError(   R4   R6   t   sectionsRI   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   get_service_status¡  s    !t
   ReportTypes   ReportOptions=ShowSalesChannelR   c         K   s   |  j  | | | ƒ S(   sH   Creates a report request and submits the request to Amazon MWS.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   request_reportª  s    s   ReportRequestIdList.Ids   ReportTypeList.Types!   ReportProcessingStatusList.Statusc         K   s   |  j  | | | ƒ S(   so   Returns a list of report requests that you can use to get the
           ReportRequestId for a report.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   get_report_request_list³  s    c         K   s   |  j  | | | ƒ S(   s
  Returns a list of report requests using the NextToken,
           which was supplied by a previous request to either
           GetReportRequestListByNextToken or GetReportRequestList, where
           the value of HasNext was true in that previous request.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt%   get_report_request_list_by_next_token¼  s    c         K   s   |  j  | | | ƒ S(   sm   Returns a count of report requests that have been submitted
           to Amazon MWS for processing.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   get_report_request_countÆ  s    c         K   s   |  j  | | | ƒ S(   s   Cancel one or more report requests, returning the count of the
           canceled report requests and the report request information.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   cancel_report_requestsÏ  s    t   Acknowledgedc         K   s   |  j  | | | ƒ S(   sx   Returns a list of reports that were created in the previous
           90 days that match the query parameters.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   get_report_listÖ  s    c         K   s   |  j  | | | ƒ S(   sð   Returns a list of reports using the NextToken, which
           was supplied by a previous request to either
           GetReportListByNextToken or GetReportList, where the
           value of HasNext was true in the previous call.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   get_report_list_by_next_tokenß  s    c         K   s   |  j  | | | ƒ S(   s‘   Returns a count of the reports, created in the previous 90 days,
           with a status of _DONE_ and that are available for download.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   get_report_counté  s    t   ReportIdc         K   s   |  j  | | | ƒ S(   s*   Returns the contents of a report.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt
   get_reportò  s    t   Schedulec         K   s   |  j  | | | ƒ S(   sg   Creates, updates, or deletes a report request schedule for
           a specified report type.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   manage_report_scheduleù  s    c         K   s   |  j  | | | ƒ S(   s|   Returns a list of order report requests that are scheduled
           to be submitted to Amazon MWS for processing.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   get_report_schedule_list  s    c         K   s   |  j  | | | ƒ S(   s  Returns a list of report requests using the NextToken,
           which was supplied by a previous request to either
           GetReportScheduleListByNextToken or GetReportScheduleList,
           where the value of HasNext was true in that previous request.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt&   get_report_schedule_list_by_next_token	  s    c         K   s   |  j  | | | ƒ S(   sn   Returns a count of order report requests that are scheduled
           to be submitted to Amazon MWS.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   get_report_schedule_count  s    t   ReportIdLists   ReportIdList.Idc         K   s   |  j  | | | ƒ S(   s@   Updates the acknowledged status of one or more reports.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   update_report_acknowledgements  s    t   ShipFromAddresst   InboundShipmentPlanRequestItemsR   i   g      à?c         K   s   |  j  | | | ƒ S(   sH   Returns the information required to create an inbound shipment.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   create_inbound_shipment_plan$  s    t
   ShipmentIdt   InboundShipmentHeadert   InboundShipmentItemsc         K   s   |  j  | | | ƒ S(   s%   Creates an inbound shipment.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   create_inbound_shipment,  s    c         K   s   |  j  | | | ƒ S(   sÀ   Updates an existing inbound shipment.  Amazon documentation
           is ambiguous as to whether the InboundShipmentHeader and
           InboundShipmentItems arguments are required.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   update_inbound_shipment4  s    t   ShipmentIdListt   ShipmentStatusLists   ShipmentIdList.Ids   ShipmentStatusList.Statusc         K   s   |  j  | | | ƒ S(   s[   Returns a list of inbound shipments based on criteria that
           you specify.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   list_inbound_shipments>  s    c         K   s   |  j  | | | ƒ S(   s]   Returns the next page of inbound shipments using the NextToken
           parameter.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt$   list_inbound_shipments_by_next_tokenG  s    t   LastUpdatedAftert   LastUpdatedBeforec         K   s   |  j  | | | ƒ S(   s   Returns a list of items in a specified inbound shipment, or a
           list of items that were updated within a specified time frame.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   list_inbound_shipment_itemsO  s    c         K   s   |  j  | | | ƒ S(   sb   Returns the next page of inbound shipment items using the
           NextToken parameter.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt)   list_inbound_shipment_items_by_next_tokenW  s    i   i,  t   GetServiceStatusc         K   s   |  j  | | | ƒ S(   sc   Returns the operational status of the Fulfillment Inbound
           Shipment API section.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   get_inbound_service_status_  s    t
   SellerSkust   QueryStartDateTimes   SellerSkus.memberR   c         K   s   |  j  | | | ƒ S(   sW   Returns information about the availability of a seller's
           inventory.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   list_inventory_supplyf  s    c         K   s   |  j  | | | ƒ S(   s†   Returns the next page of information about the availability
           of a seller's inventory using the NextToken parameter.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt#   list_inventory_supply_by_next_tokeno  s    c         K   s   |  j  | | | ƒ S(   s\   Returns the operational status of the Fulfillment Inventory
           API section.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   get_inventory_service_statusw  s    t   PackageNumberR   c         K   s   |  j  | | | ƒ S(   s†   Returns delivery tracking information for a package in
           an outbound shipment for a Multi-Channel Fulfillment order.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   get_package_tracking_details~  s    t   Addresst   Itemsc         K   s   |  j  | | | ƒ S(   s   Returns a list of fulfillment order previews based on items
           and shipping speed categories that you specify.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   get_fulfillment_preview†  s    t   SellerFulfillmentOrderIdt   DisplayableOrderIdt   ShippingSpeedCategoryt   DisplayableOrderDateTimet   DestinationAddresst   DisplayableOrderCommentc         K   s   |  j  | | | ƒ S(   si   Requests that Amazon ship items from the seller's inventory
           to a destination address.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   create_fulfillment_order  s    
c         K   s   |  j  | | | ƒ S(   s^   Returns a fulfillment order based on a specified
           SellerFulfillmentOrderId.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   get_fulfillment_order›  s    c         K   s   |  j  | | | ƒ S(   s{   Returns a list of fulfillment orders fulfilled after (or
           at) a specified date or by fulfillment method.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   list_all_fulfillment_orders£  s    c         K   s   |  j  | | | ƒ S(   sb   Returns the next page of inbound shipment items using the
           NextToken parameter.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt)   list_all_fulfillment_orders_by_next_tokenª  s    c         K   s   |  j  | | | ƒ S(   sb   Requests that Amazon stop attempting to fulfill an existing
           fulfillment order.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   cancel_fulfillment_order²  s    c         K   s   |  j  | | | ƒ S(   s[   Returns the operational status of the Fulfillment Outbound
           API section.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   get_outbound_service_statusº  s    t   CreatedAftert   MarketplaceIdt   CreatedBeforet
   BuyerEmailt   SellerOrderIdt
   OrderTotalt   ShippingAddresst   PaymentExecutionDetails   MarketplaceId.Ids   OrderStatus.Statuss   FulfillmentChannel.Channels   PaymentMethod.R   i   c            s´   t  d ƒ } x’ i | j d g ƒ d 6| j d g ƒ d 6j ƒ  D]^ \ } ‰  | | k r? t ‡  f d †  | Dƒ ƒ r? d	 j d
 j ˆ  ƒ | ƒ } t | ƒ ‚ q? q? W|  j | | | ƒ S(   se   Returns a list of orders created or updated during a time
           frame that you specify.
        s   FulfillmentChannel.Channel.1s   OrderStatus.Status.1s   PaymentMethod.1Rð   Rñ   R  R  c         3   s   |  ] } | ˆ  k Vq d  S(   N(    (   Rg   R;   (   t   dont(    s2   lib/python2.7/site-packages/boto/mws/connection.pys	   <genexpr>Ø  s    s%   Don't include {0} when specifying {1}s    or (   s   FulfillmentChannel.Channel.1s   OrderStatus.Status.1s   PaymentMethod.1Rð   Rñ   (   t   sett   unionR“   RF   R>   R@   Rª   R¯   (   R4   R{   R   R6   t   togglet   doRI   (    (   R  s2   lib/python2.7/site-packages/boto/mws/connection.pyt   list_ordersÁ  s     	&(c         K   s   |  j  | | | ƒ S(   s²   Returns the next page of orders using the NextToken value
           that was returned by your previous request to either
           ListOrders or ListOrdersByNextToken.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   list_orders_by_next_tokenÞ  s    t   AmazonOrderIds   AmazonOrderId.Idc         K   s   |  j  | | | ƒ S(   sB   Returns an order for each AmazonOrderId that you specify.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt	   get_orderç  s    c         K   s   |  j  | | | ƒ S(   sY   Returns order item information for an AmazonOrderId that
           you specify.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   list_order_itemsï  s    c         K   s   |  j  | | | ƒ S(   s¿   Returns the next page of order items using the NextToken
           value that was returned by your previous request to either
           ListOrderItems or ListOrderItemsByNextToken.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   list_order_items_by_next_token÷  s    c         K   s   |  j  | | | ƒ S(   sB   Returns the operational status of the Orders API section.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   get_orders_service_status   s    t   QueryR   i   c         K   s   |  j  | | | ƒ S(   s„   Returns a list of products and their attributes, ordered
           by relevancy, based on a search query that you specify.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   list_matching_products  s    t   ASINLists   ASINList.ASINc         K   s   |  j  | | | ƒ S(   su   Returns a list of products and their attributes, based on
           a list of ASIN values that you specify.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   get_matching_product  s    t   IdTypet   IdLists	   IdList.Idc         K   s   |  j  | | | ƒ S(   su   Returns a list of products and their attributes, based on
           a list of Product IDs that you specify.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   get_matching_product_for_id  s    t   SellerSKULists   SellerSKUList.SellerSKUt   GetCompetitivePricingForSKUc         K   s   |  j  | | | ƒ S(   s…   Returns the current competitive pricing of a product,
           based on the SellerSKUs and MarketplaceId that you specify.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   get_competitive_pricing_for_sku   s    t   GetCompetitivePricingForASINc         K   s   |  j  | | | ƒ S(   s€   Returns the current competitive pricing of a product,
           based on the ASINs and MarketplaceId that you specify.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt    get_competitive_pricing_for_asin)  s    i   t   GetLowestOfferListingsForSKUc         K   s   |  j  | | | ƒ S(   st   Returns the lowest price offer listings for a specific
           product by item condition and SellerSKUs.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt!   get_lowest_offer_listings_for_sku2  s    t   GetLowestOfferListingsForASINc         K   s   |  j  | | | ƒ S(   so   Returns the lowest price offer listings for a specific
           product by item condition and ASINs.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt"   get_lowest_offer_listings_for_asin;  s    t	   SellerSKUt   GetProductCategoriesForSKUc         K   s   |  j  | | | ƒ S(   sD   Returns the product categories that a SellerSKU belongs to.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   get_product_categories_for_skuD  s    t   ASINt   GetProductCategoriesForASINc         K   s   |  j  | | | ƒ S(   s@   Returns the product categories that an ASIN belongs to.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   get_product_categories_for_asinK  s    c         K   s   |  j  | | | ƒ S(   sD   Returns the operational status of the Products API section.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   get_products_service_statusR  s    t   GetMyPriceForSKUc         K   s   |  j  | | | ƒ S(   sU   Returns pricing information for your own offer listings, based on SellerSKU.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   get_my_price_for_skuX  s    t   GetMyPriceForASINc         K   s   |  j  | | | ƒ S(   sP   Returns pricing information for your own offer listings, based on ASIN.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   get_my_price_for_asin`  s    R   c         K   s   |  j  | | | ƒ S(   sÌ   Returns a list of marketplaces that the seller submitting
           the request can sell in, and a list of participations that
           include seller-specific information in that marketplace.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   list_marketplace_participationsh  s    c         K   s   |  j  | | | ƒ S(   sü   Returns the next page of marketplaces and participations
           using the NextToken value that was returned by your
           previous request to either ListMarketplaceParticipations
           or ListMarketplaceParticipationsByNextToken.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt-   list_marketplace_participations_by_next_tokenp  s    	R   c         K   s   |  j  | | | ƒ S(   sØ   Checks whether there are active recommendations for each category
           for the given marketplace, and if there are, returns the time when
           recommendations were last updated for each category.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt)   get_last_updated_time_for_recommendations{  s    s   CategoryQueryList.CategoryQueryc         K   s   |  j  | | | ƒ S(   s   Returns your active recommendations for a specific category or for
           all categories for a specific marketplace.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   list_recommendations…  s    c         K   s   |  j  | | | ƒ S(   s[   Returns the next page of recommendations using the NextToken
           parameter.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt"   list_recommendations_by_next_tokenŽ  s    c         K   s   |  j  | | | ƒ S(   sK   Returns the operational status of the Recommendations API section.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt"   get_recommendations_service_status–  s    R   i   c         K   s   |  j  | | | ƒ S(   sb   Returns a list of customer accounts based on search criteria that
           you specify.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   list_customersœ  s    i2   i   c         K   s   |  j  | | | ƒ S(   sJ   Returns the next page of customers using the NextToken parameter.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   list_customers_by_next_token£  s    t   CustomerIdLists   CustomerIdList.CustomerIdc         K   s   |  j  | | | ƒ S(   sb   Returns a list of customer accounts based on search criteria that
           you specify.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   get_customers_for_customer_idª  s    c         K   s   |  j  | | | ƒ S(   s[   Returns the operational status of the Customer Information API
           section.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   get_customerinfo_service_status³  s    t   DateRangeStartR   c         K   s   |  j  | | | ƒ S(   s„   Returns a list of shopping carts in your Webstore that were last
           updated during the time range that you specify.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt
   list_cartsº  s    c         K   s   |  j  | | | ƒ S(   sZ   Returns the next page of shopping carts using the NextToken
           parameter.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   list_carts_by_next_tokenÂ  s    t
   CartIdLists   CartIdList.CartIdc         K   s   |  j  | | | ƒ S(   sL   Returns shopping carts based on the CartId values that you specify.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt	   get_cartsÊ  s    c         K   s   |  j  | | | ƒ S(   sL   Returns the operational status of the Cart Information API section.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   get_cartinfo_service_statusÒ  s    t   DestinationRL   R   i   c         K   s   |  j  | | | ƒ S(   sM   Specifies a new destination where you want to receive notifications.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   register_destinationØ  s    c         K   s   |  j  | | | ƒ S(   s]   Removes an existing destination from the list of registered
           destinations.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   deregister_destinationà  s    c         K   s   |  j  | | | ƒ S(   sA   Lists all current destinations that you have registered.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   list_registered_destinationsé  s    c         K   s   |  j  | | | ƒ S(   s>   Sends a test notification to an existing destination.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt%   send_test_notification_to_destinationð  s    t   Subscriptionc         K   s   |  j  | | | ƒ S(   sc   Creates a new subscription for the specified notification type
           and destination.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   create_subscriptionø  s    t   NotificationTypec         K   s   |  j  | | | ƒ S(   s^   Gets the subscription for the specified notification type and
           destination.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   get_subscription  s    c         K   s   |  j  | | | ƒ S(   sa   Deletes the subscription for the specified notification type and
           destination.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   delete_subscription
  s    c         K   s   |  j  | | | ƒ S(   s:   Returns a list of all your current subscriptions.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   list_subscriptions  s    c         K   s   |  j  | | | ƒ S(   sa   Updates the subscription for the specified notification type and
           destination.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   update_subscription  s    c         K   s   |  j  | | | ƒ S(   sI   Returns the operational status of the Subscriptions API section.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt    get_subscriptions_service_status#  s    t   AmazonOrderReferenceIdt   OrderReferenceAttributesR   i   c         K   s   |  j  | | | ƒ S(   si   Sets order reference details such as the order total and a
           description for the order.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   set_order_reference_details)  s    c         K   s   |  j  | | | ƒ S(   s[   Returns details about the Order Reference object and its current
           state.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   get_order_reference_details2  s    c         K   s   |  j  | | | ƒ S(   sŽ   Confirms that the order reference is free of constraints and all
           required information has been set on the order reference.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   confirm_order_reference:  s    c         K   s   |  j  | | | ƒ S(   sw   Cancel an order reference; all authorizations associated with
           this order reference are also closed.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   cancel_order_referenceB  s    c         K   s   |  j  | | | ƒ S(   s¼   Confirms that an order reference has been fulfilled (fully
           or partially) and that you do not expect to create any new
           authorizations on this order reference.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   close_order_referenceJ  s    t   AuthorizationReferenceIdt   AuthorizationAmountc         K   s   |  j  | | | ƒ S(   sl   Reserves a specified amount against the payment method(s) stored in
           the order reference.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt	   authorizeS  s    t   AmazonAuthorizationIdc         K   s   |  j  | | | ƒ S(   sx   Returns the status of a particular authorization and the total
           amount captured on the authorization.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   get_authorization_details]  s    t   CaptureReferenceIdt   CaptureAmountc         K   s   |  j  | | | ƒ S(   s>   Captures funds from an authorized payment instrument.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   capturee  s    t   AmazonCaptureIdc         K   s   |  j  | | | ƒ S(   sl   Returns the status of a particular capture and the total amount
           refunded on the capture.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   get_capture_detailsm  s    c         K   s   |  j  | | | ƒ S(   s!   Closes an authorization.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   close_authorizationu  s    t   RefundReferenceIdt   RefundAmountc         K   s   |  j  | | | ƒ S(   s.   Refunds a previously captured amount.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   refund|  s    t   AmazonRefundIdc         K   s   |  j  | | | ƒ S(   s3   Returns the status of a particular refund.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   get_refund_details„  s    c         K   s   |  j  | | | ƒ S(   sZ   Returns the operational status of the Off-Amazon Payments API
           section.
        (   R¯   (   R4   R{   R   R6   (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt$   get_offamazonpayments_service_status‹  s    N({   R   t
   __module__RO   RP   R   R   R‘   R’   RŒ   RŠ   Rš   R›   R'   R¯   R«   R¶   Rº   R·   Ro   Rs   RK   RB   R…   RÅ   RÆ   RÇ   RÈ   RÉ   RË   RÐ   RÒ   RÓ   RÔ   RÕ   RÖ   RØ   RÙ   RÚ   RÜ   RÞ   Rß   Rà   Rá   Rã   Rf   Ræ   Rê   Rë   Rr   Rî   Rï   Rò   Ró   Rõ   Rø   Rù   Rú   Rü   Rÿ   R  R  R  R	  R
  R  Rp   Rq   R  R  R  R  R  R  R!  R#  R&  R)  R+  R-  R/  R2  R5  R6  R8  R:  R;  R<  R=  R>  R?  R@  RA  RB  RD  RE  RG  RH  RJ  RK  t   TrueRM  RN  RO  RP  RR  RT  RU  RV  RW  RX  R[  R\  R]  R^  R_  Rb  Rd  Rg  Ri  Rj  Rm  Ro  Rp  (    (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyR     sæ  						
											$			!			!					$!!!!	!!		!			6	!	!	!	$	$	$	$!!	$	$
		!	!	!!!!!!!!	!			!	!	!(   s
   2009-01-01R   R	   (   s
   2009-01-01R   R	   (   s
   2013-09-01R   s   /Orders/2013-09-01(   s
   2011-10-01R   s   /Products/2011-10-01(   s
   2011-07-01R   s   /Sellers/2011-07-01(   s
   2010-10-01R   s&   /FulfillmentInboundShipment/2010-10-01(   s
   2010-10-01R   s'   /FulfillmentOutboundShipment/2010-10-01(   s
   2010-10-01R   s    /FulfillmentInventory/2010-10-01(   s
   2013-04-01R   s   /Recommendations/2013-04-01(   s
   2014-03-01R   s   /CustomerInformation/2014-03-01(   s
   2014-03-01R   s   /CartInformation/2014-03-01(   s
   2013-07-01R   s   /Subscriptions/2013-07-01(   s
   2013-01-01R   s   /OffAmazonPayments/2013-01-01(   R   R   R    R!   R"   R#   (%   t   xml.saxR°   R   R´   RT   t   boto.connectionR    t   boto.exceptionR   t   boto.mws.exceptionRO   t   boto.mws.responset   boto.handlerR   t   boto.compatR   R   R   R   t   __all__R}   RH   R$   R   R,   RB   RK   Rd   RR   Rf   Ro   Rp   Rq   Rr   Rs   R…   R   (    (    (    s2   lib/python2.7/site-packages/boto/mws/connection.pyt   <module>   s`   "	        
	 										