def list_descendent(self, idstr, desc_cls, **kwargs): url = r'/%s/%s/%s' % (self.keyword_plural_url(), idstr, desc_cls.keyword_plural_url()) kwargs = clean_kwargs(kwargs) if len(kwargs) > 0: url += '?' + utils.urlencode(kwargs) return self._list(url, desc_cls.keyword_plural)
def list_descendent(self, mid, **kwargs): url = r'/%s/%s/%s' % (self.master_class().keyword_plural_url(), mid, self.slave_class().keyword_plural_url()) kwargs = clean_kwargs(kwargs) if len(kwargs) > 0: url += '?%s' % utils.urlencode(kwargs) return self._list(url, self.keyword_plural)
def get_guest_usage(self, idstr, typestr, **kwargs): url = r'/usages/%s' % (idstr, ) if typestr is not None: query_str = utils.urlencode(kwargs) url += r'/%s?%s' % (typestr, query_str) resp, body = self.json_request('GET', url) return body
def get_descendent(self, idstr, desc_cls, desc_idstr, **kwargs): if desc_idstr is None: desc_idstr = '_' url = r'/%s/%s/%s/%s' % (self.keyword_plural_url(), idstr, desc_cls.keyword_plural_url(), desc_idstr) kwargs = clean_kwargs(kwargs) if len(kwargs) > 0: url += '?' + utils.urlencode(kwargs) return self._get(url, desc_cls.keyword)
def list_descendent(self, idstr, *args, **kwargs): url = r'/%s/%s' % (self.keyword_plural_url(), idstr) if len(args) > 1: for i in range(0, len(args) - 1, 2): url += r'/%s/%s' % (args[i].keyword_plural_url(), args[i + 1]) desc_cls = args[-1] url += '/' + desc_cls.keyword_plural_url() kwargs = clean_kwargs(kwargs) if len(kwargs) > 0: url += '?' + utils.urlencode(kwargs) return self._list(url, desc_cls.keyword_plural)
def delete_descendent(self, idstr, desc_cls, desc_idstr, *args, **kwargs): if desc_idstr is None: desc_idstr = '_' url = r'/%s/%s/%s/%s' % (self.keyword_plural_url(), idstr, desc_cls.keyword_plural_url(), desc_idstr) if len(args) > 0: for i in range(0, len(args), 2): url += r'/%s/%s' % (args[i].keyword_plural_url(), args[i + 1]) kwargs = clean_kwargs(kwargs) if len(kwargs) > 0: url += '?' + utils.urlencode(kwargs) return self._delete(url, desc_cls.keyword)
def delete(self, idstr, **kwargs): url = r'/%s/%s' % (self.keyword_plural_url(), idstr) kwargs = clean_kwargs(kwargs) if len(kwargs) > 0: url += '?' + utils.urlencode(kwargs) return self._delete(url, self.keyword)
def list(self, **kwargs): url = r'/%s' % (self.keyword_plural_url()) kwargs = clean_kwargs(kwargs) if len(kwargs) > 0: url += '?' + utils.urlencode(kwargs) return self._list(url, self.keyword_plural)
def get_specific(self, idstr, spec, **kwargs): url = r'/%s/%s/%s' % (self.keyword_plural_url(), idstr, spec) newkw = clean_kwargs(kwargs) if len(newkw) > 0: url += '?' + utils.urlencode(newkw) return self._get(url, self.keyword)
def list(self, **kwargs): url = r'/images' if len(kwargs) > 0: url += '?' + utils.urlencode(kwargs) return self._list(url, self.keyword_plural)
def get_price(self, specs): keys = [] for spec in specs: keys.append(spec.price_keys()) url = r'/price_infos/total?' + utils.urlencode({'price_keys': keys}) return self._get(url, self.keyword)