def uptake(request): """ping mirror uptake""" product = request.GET.get("product", None) os = request.GET.get("os", None) fuzzy = request.GET.get("fuzzy", False) xml = XMLRenderer() if not product and not os: return xml.error("product and/or os are required GET parameters.", errno=101) if product: if fuzzy: products = Product.objects.filter(name__icontains=product) else: products = Product.objects.filter(name__exact=product) pids = [p.id for p in products] if not pids: return xml.error("No products found", errno=102) else: pids = None if os: if fuzzy: oses = OS.objects.filter(name__icontains=os) else: oses = OS.objects.filter(name__exact=os) osids = [o.id for o in oses] if not osids: return xml.error("No OSes found", errno=102) else: osids = None uptake = Location.get_mirror_uptake(products=pids, oses=osids) xml.prepare_uptake(uptake) return xml.render()
def uptake(request): """ping mirror uptake""" product = request.GET.get('product', None) os = request.GET.get('os', None) fuzzy = request.GET.get('fuzzy', False) xml = XMLRenderer() if not product and not os: return xml.error('product and/or os are required GET parameters.', errno=101) if product: if fuzzy: products = Product.objects.filter(name__icontains=product) else: products = Product.objects.filter(name__exact=product) pids = [p.id for p in products] if not pids: return xml.error('No products found', errno=102) else: pids = None if os: if fuzzy: oses = OS.objects.filter(name__icontains=os) else: oses = OS.objects.filter(name__exact=os) osids = [o.id for o in oses] if not osids: return xml.error('No OSes found', errno=102) else: osids = None uptake = Location.get_mirror_uptake(products=pids, oses=osids) xml.prepare_uptake(uptake) return xml.render()