void DownloadQueueSet::retryOrBlacklistJob( HttpJob * job, const int errorCode )
{
    Q_ASSERT( errorCode != 0 );
    Q_ASSERT( !m_retryQueue.contains( job ));

    deactivateJob( job );
    emit jobRemoved();

    if ( job->tryAgain() ) {
        mDebug() << QString( "Download of %1 to %2 failed, but trying again soon" )
            .arg( job->sourceUrl().toString() ).arg( job->destinationFileName() );
        m_retryQueue.enqueue( job );
        emit jobRetry();
    }
    else {
        mDebug() << "JOB-address: " << job
                 << "Blacklist-size:" << m_jobBlackList.size()
                 << "err:" << errorCode;
        m_jobBlackList.insert( job->sourceUrl().toString() );
        mDebug() << QString( "Download of %1 Blacklisted. "
                             "Number of blacklist items: %2" )
            .arg( job->destinationFileName() )
            .arg( m_jobBlackList.size() );

        job->deleteLater();
    }
    activateJobs();
}
Exemple #2
0
void JobManager::cleanup()
{
	Q_ASSERT(!m_finishedJobs.isEmpty());

	Job *const job = m_jobs.take(m_finishedJobs.dequeue());

	emit jobRemoved(job);

	delete job;
}
void DownloadQueueSet::redirectJob( HttpJob * job, const QUrl& newSourceUrl )
{
    mDebug() << "jobRedirected:" << job->sourceUrl() << " -> " << newSourceUrl;

    deactivateJob( job );
    emit jobRemoved();
    emit jobRedirected( newSourceUrl, job->destinationFileName(), job->initiatorId(),
                        job->downloadUsage() );
    job->deleteLater();
}
void DownloadQueueSet::finishJob( HttpJob * job, const QByteArray& data )
{
    mDebug() << "finishJob: " << job->sourceUrl() << job->destinationFileName();

    deactivateJob( job );
    emit jobRemoved();
    emit jobFinished( data, job->destinationFileName(), job->initiatorId() );
    job->deleteLater();
    activateJobs();
}
void ProgressFloatItem::initialize()
{
    const HttpDownloadManager* manager = marbleModel()->downloadManager();
    Q_ASSERT( manager );
    connect( manager, SIGNAL(progressChanged(int,int)), this, SLOT(handleProgress(int,int)) , Qt::UniqueConnection );
    connect( manager, SIGNAL(jobRemoved()), this, SLOT(removeProgressItem()), Qt::UniqueConnection );

    // Calculate font size
    QFont myFont = font();
    const QString text = "100%";
    int fontSize = myFont.pointSize();
    while( QFontMetrics( myFont ).boundingRect( text ).width() < contentRect().width() - 2 ) {
        ++fontSize;
        myFont.setPointSize( fontSize );
    }
    m_fontSize = fontSize - 1;

    m_isInitialized = true;
}
Exemple #6
0
 void
 Conveyor::emitJobRemoved (Job * const j)
 {
     emit jobRemoved(j);
 }