Search in sources :

Example 1 with QueueStatus

use of com.github.mob41.osumer.queue.QueueStatus in project osumer by mob41.

the class Daemon method getQueues.

@Override
public QueueStatus[] getQueues() throws RemoteException {
    List<Queue> queues = queueManager.getList();
    QueueStatus[] status = new QueueStatus[queues.size()];
    Downloader dwn;
    Queue q;
    QueueStatus s;
    for (int i = 0; i < status.length; i++) {
        q = queues.get(i);
        dwn = q.getDownloader();
        long elapsedTime = System.nanoTime() - q.getStartTime();
        long allTimeForDownloading = dwn.getDownloaded() != 0 ? (elapsedTime * dwn.getSize() / dwn.getDownloaded()) : -1;
        long eta = allTimeForDownloading - elapsedTime;
        s = new QueueStatus(q.getName(), dwn.getFileName(), q.getThumbUrl(), (int) dwn.getProgress(), eta, elapsedTime, dwn.getStatus());
        status[i] = s;
    }
    return status;
}
Also used : Downloader(com.github.mob41.osumer.io.Downloader) OsuDownloader(com.github.mob41.osumer.io.OsuDownloader) Queue(com.github.mob41.osumer.queue.Queue) QueueStatus(com.github.mob41.osumer.queue.QueueStatus)

Aggregations

Downloader (com.github.mob41.osumer.io.Downloader)1 OsuDownloader (com.github.mob41.osumer.io.OsuDownloader)1 Queue (com.github.mob41.osumer.queue.Queue)1 QueueStatus (com.github.mob41.osumer.queue.QueueStatus)1