Retrieves tasks from a queue without leasing them.

    This is good for a read only snapshot of the tasks.

    Args:
       queue: The task queue that this task belongs to, usually client.Queue()
         where client is the ClientURN object you want to schedule msgs on.
       limit: Number of values to fetch.

    Returns:
        A list of Task() objects.

def Query(self, queue, limit=1):
    """Retrieves tasks from a queue without leasing them.

    This is good for a read only snapshot of the tasks.

    Args:
       queue: The task queue that this task belongs to, usually client.Queue()
         where client is the ClientURN object you want to schedule msgs on.
       limit: Number of values to fetch.

    Returns:
        A list of Task() objects.
    """
    # This function is usually used for manual testing so we also accept client
    # ids and get the queue from it.
    if isinstance(queue, rdf_client.ClientURN):
      queue = queue.Queue()

    return self.data_store.QueueQueryTasks(queue, limit=limit)