def delete_message(self, req):
        if req.method != "POST":
            return HTTP_405, "Expected a POST request."

        queue = req.post_data["queue"]
        message_id = req.post_data["id"]
        self.iface.delete_message(queue, message_id)

        return redirect(self.make_uri("queues", q_name(queue), tab_from_q_name(queue)))
    def job(self, req, *, name, current_tab, message_id):
        qft = queue_for_tab(name, current_tab)
        queue = self.iface.get_queue(q_name(name))
        job = self.iface.get_job(qft, message_id)
        if not job:
            return redirect(self.make_uri("queues", name, current_tab))

        return {
            "queue": queue,
            "job": job,
            "queue_for_tab": qft,
        }
    def queue(self, req, *, name, current_tab="standard"):
        cursor = int(req.params.get("cursor", 0))
        qft = queue_for_tab(name, current_tab)

        queue = self.iface.get_queue(q_name(name))
        next_cursor, jobs = self.iface.get_jobs(qft, cursor)
        return {
            "queue": queue,
            "jobs": jobs,
            "cursor": next_cursor,
            "current_tab": current_tab,
            "queue_for_tab": qft,
        }
    def requeue_message(self, req):
        if req.method != "POST":
            return HTTP_405, "Expected a POST request."

        queue = req.post_data["queue"]
        message_id = req.post_data["id"]
        job = self.iface.get_job(queue, message_id)
        if not job:
            return HTTP_410, "The requested message no longer exists."

        self.iface.delete_message(queue, message_id)
        job_copy = Job.from_message(self.broker.enqueue(job.message.copy(
            queue_name=q_name(queue),
            options={
                "eta": job.message_timestamp,
                "retries": 0
            },
        )))
        return redirect(self.make_uri(
            "queues",
            q_name(queue),
            tab_from_q_name(queue),
            job_copy.message_id,
        ))
Example #5
0
def test_q_name_returns_canonical_names(given, expected):
    assert q_name(given) == expected