예제 #1
0
파일: rq.py 프로젝트: jettify/tulipmq
    def put(self, value):
        """Put string (serialized json, for example) value to the
        tail of the redis list.

        :param value: data to store in queue"""
        key = get_key(self.qname)
        yield from self._conn.rpush(key, [value])
예제 #2
0
파일: rq.py 프로젝트: jettify/tulipmq
    def get(self):
        """Dequeue data from head of list, if redis list is empty,
        BLPOP command waits for new data.

        :return: ``str`` serialized vdata fetched from redis list
        """
        key = get_key(self.qname)
        data = yield from self._conn.blpop([key,], 0)
        return data.value
예제 #3
0
파일: rq.py 프로젝트: jettify/tulipmq
    def size(self):
        """Coroutine to check current size of queue.

        :return: ``int`` size of the queue"""
        size = yield from self._conn.llen(get_key(self.qname))
        return size