void ChangeRouterWanSettingsOp::onSoapFinished() { AsyncOp *op = m_op; m_op->deleteLater(); m_op = NULL; if (isAborted()) { return; } int result = op->result(); if (result != NoError) { return notifyFinished(result); } QVariant varResponseCode = op->value("responseCode"); if (!varResponseCode.isValid()) { return notifyFinished(UnknownError); } bool ok; int responseCode = varResponseCode.toInt(&ok); if (!ok) { return notifyFinished(UnknownError); } notifyFinished(NoError); }
void ReconnectRouterOp::onConnectProfileFinished() { AsyncOp *op = m_op; m_op->deleteLater(); m_op = NULL; if (isAborted()) { LOG_DEBUG(QString::fromUtf8("connectProfile self aborted!")); return; } if (op->isAborted()) { LOG_DEBUG(QString::fromUtf8("connectProfile op aborted!")); return notifyFinished(AbortedError); } int result = op->result(); LOG_DEBUG(QString::fromUtf8("connectWlanProfile %1 result: %1").arg(m_wifiName).arg(result)); if (result == WlanProfileNotFound ) { LOG_DEBUG(QString::fromUtf8("recreate profile?")); notifyFinished(WlanProfileNotFound); } if (result != NoError) { return retry(); } discoverRouter(); }
void ReconnectRouterOp::onDiscoverRouterFinished() { AsyncOp *op = m_op; m_op->deleteLater(); m_op = NULL; if (isAborted()) { LOG_DEBUG(QString::fromUtf8("discoverRouter self aborted!")); return; } if (op->isAborted()) { LOG_DEBUG(QString::fromUtf8("discoverRouter op aborted!")); return notifyFinished(AbortedError); } int result = op->result(); LOG_DEBUG(QString::fromUtf8("discoverRouterSoap result: %1").arg(result)); if (result != NoError) { return retry(); } int matchIndex = op->value("matchIndex").toInt(); LOG_DEBUG(QString::fromUtf8("matchIndex %1").arg(matchIndex)); if (matchIndex < 0) { return retry(); } copyValues(op); notifyFinished(NoError); }
void MasterDiscoverRouterSoapOp::onOpFinished() { AsyncOp *op = m_op; m_op->deleteLater(); m_op = NULL; if (op->isAborted()) { LOG_DEBUG(QString::fromUtf8("MasterDiscoverRouterSoapOp::onOpFinished() aborted")); return; } int result = op->result(); LOG_DEBUG(QString::fromUtf8("MasterDiscoverRouterSoapOp::onOpFinished() %1").arg(result)); if (result != NoError) { if (m_retryCount < m_maxRetryCount) { LOG_DEBUG(QString::fromUtf8("MasterDiscoverRouterSoapOp Failed, but will retry later")); ++m_retryCount; m_timer1.setSingleShot(true); m_timer1.setInterval(m_retryDelay); connect(&m_timer1, SIGNAL(timeout()), SLOT(onRetryTimeout())); m_timer1.start(); return; } LOG_DEBUG(QString::fromUtf8("MasterDiscoverRouterSoapOp Failed, no more retry chance!")); return notifyFinished(UnknownError); } copyValues(op); notifyFinished(NoError); }
void ChangeRouterPasswordOp::onCreateProfileFinished() { AsyncOp *op = m_op; m_op->deleteLater(); m_op = NULL; if (op->isAborted()) { return; } int result = op->result(); LOG_DEBUG(QString::fromUtf8("createWlanProfile result: %1").arg(result)); if (result == WlanRadioOffError || result == WlanServiceDownError || result == WlanNoDeviceError) { return notifyFinished(NoError); } if (result != AsyncOp::NoError) { return notifyFinished(result); } m_op = m_bean->reconnectRouter(3000, 10, m_infoResp.value(QLatin1String("NewWLANMACAddress")).toString(), m_infoResp.value(QLatin1String("NewSSID")).toString(), true); connect(m_op, SIGNAL(finished()), SLOT(onReconnectFinished())); }
void CheckRouterSoapOp::onGetInfo3Finished() { AsyncOp *op = m_op; m_op->deleteLater(); m_op = NULL; if (op->isAborted()) { LOG_DEBUG(QString::fromUtf8("CheckRouterSoapOp::onGetInfo3Finished() aborted")); return; } int result = op->result(); LOG_DEBUG(QString::fromUtf8("CheckRouterSoapOp::onGetInfo3Finished() %1").arg(result)); if (result != NoError) { return notifyFinished(UnknownError); } bool ok; int responseCode = op->value("responseCode").toInt(&ok); if (!ok || responseCode != 0) { LOG_DEBUG(QString::fromUtf8("CheckRouterSoapOp::onGetInfo3Finished() response error: %1 %2").arg(responseCode).arg(ok)); return notifyFinished(result); } m_values.unite(qvariant_cast<QVariantMap>(op->value("response"))); setValues(m_values); notifyFinished(result); }
void CheckInternetOp::onConnectHostFinished() { AsyncOp *op = m_op; m_op->deleteLater(); m_op = NULL; if (isAborted()) { LOG_DEBUG(QString::fromUtf8("connectHost self aborted!")); return; } if (op->isAborted()) { LOG_DEBUG(QString::fromUtf8("connectHost op aborted!")); return notifyFinished(AbortedError); } int result = op->result(); LOG_DEBUG(QString::fromUtf8("connectHost result: %1").arg(result)); if (result != NoError) { return retry(); } notifyFinished(NoError); }
void ChangeRouterWifiPasswordOp::onSetWLANFinished() { AsyncOp *op = m_op; m_op->deleteLater(); m_op = NULL; if (isAborted()) { return; } int result = op->result(); LOG_DEBUG(QString::fromUtf8("onSetWLANFinished %1").arg(result)); if (result != NoError) { return notifyFinished(result); } QVariant varResponseCode = op->value("responseCode"); if (!varResponseCode.isValid()) { return notifyFinished(UnknownError); } bool ok; int responseCode = varResponseCode.toInt(&ok); if (!ok) { return notifyFinished(UnknownError); } if (responseCode != 0) { return notifyFinished(UnknownError); } if (m_configFinish) { m_op = m_bean->m_soapCore->invoke(QLatin1String("DeviceConfig"), QLatin1String("ConfigurationFinished"), QLatin1String("NewStatus"), QLatin1String("ChangesApplied")); connect(m_op, SIGNAL(finished()), SLOT(onCommitFinished())); connect(&m_timer1, SIGNAL(timeout()), SLOT(onTimeout1())); m_timer1.setSingleShot(true); m_timer1.start(8000); } else { notifyFinished(NoError); } }
void ChangeRouterPasswordOp::onGetKeysFinished() { AsyncOp *op = m_op; m_op->deleteLater(); m_op = NULL; if (isAborted()) { return; } int result = op->result(); if (result != NoError) { return notifyFinished(result); } QVariant varResponseCode = op->value("responseCode"); if (!varResponseCode.isValid()) { return notifyFinished(UnknownError); } bool ok; int responseCode = varResponseCode.toInt(&ok); if (!ok) { return notifyFinished(UnknownError); } if (responseCode != 0) { return notifyFinished(UnknownError); } QVariant varResponse = op->value("response"); if (!varResponse.isValid()) { return notifyFinished(UnknownError); } QVariantMap resp = qvariant_cast<QVariantMap>(varResponse); m_currentWifiKey = resp.value(QLatin1String("NewWPAPassphrase")).toString(); m_bean->m_soapCore->setWrappedMode(false); m_op = m_bean->m_soapCore->invoke(QLatin1String("LANConfigSecurity"), QLatin1String("GetInfo")); connect(m_op, SIGNAL(finished()), SLOT(onGetLanInfoFinished())); }
void TimerMonotonicityBenchmark::start() { mForceStop = false; Time start_time = Timer::now(); uint32 num_inversions = 0; Duration inversion_sum = Duration::zero(); Time tlast = Timer::now(); for(uint32 ii = 0; ii < ITERATIONS && !mForceStop; ii++) { Time tnow = Timer::now(); if (tnow < tlast) { num_inversions++; inversion_sum += tlast - tnow; } tlast = tnow; } if (mForceStop) return; Time end_time = Timer::now(); Duration dur = end_time - start_time; SILOG(benchmark,info, ITERATIONS << " timer invokations, " << dur << ": " << num_inversions << " timer inversions, " << float(num_inversions)/float(ITERATIONS)*100.f << "%" ); notifyFinished(); }
void WorkerScriptLoader::loadAsynchronously( ExecutionContext& executionContext, const KURL& url, CrossOriginRequestPolicy crossOriginRequestPolicy, WebAddressSpace creationAddressSpace, std::unique_ptr<WTF::Closure> responseCallback, std::unique_ptr<WTF::Closure> finishedCallback) { DCHECK(responseCallback || finishedCallback); m_responseCallback = std::move(responseCallback); m_finishedCallback = std::move(finishedCallback); m_url = url; ResourceRequest request(createResourceRequest(creationAddressSpace)); ThreadableLoaderOptions options; options.crossOriginRequestPolicy = crossOriginRequestPolicy; ResourceLoaderOptions resourceLoaderOptions; resourceLoaderOptions.allowCredentials = AllowStoredCredentials; // During create, callbacks may happen which could remove the last reference // to this object, while some of the callchain assumes that the client and // loader wouldn't be deleted within callbacks. // (E.g. see crbug.com/524694 for why we can't easily remove this protect) RefPtr<WorkerScriptLoader> protect(this); m_needToCancel = true; m_threadableLoader = ThreadableLoader::create(executionContext, this, options, resourceLoaderOptions); m_threadableLoader->start(request); if (m_failed) notifyFinished(); }
void FetchManager::Loader::didFinishLoading(unsigned long, double) { if (!m_resolver->executionContext() || m_resolver->executionContext()->activeDOMObjectsAreStopped()) return; OwnPtr<BlobData> blobData = BlobData::create(); String filePath = m_response.downloadedFilePath(); if (!filePath.isEmpty() && m_downloadedBlobLength) { blobData->appendFile(filePath); blobData->setContentType(m_response.mimeType()); } FetchResponseData* response = FetchResponseData::create(); response->setStatus(m_response.httpStatusCode()); response->setStatusMessage(m_response.httpStatusText()); HTTPHeaderMap::const_iterator end = m_response.httpHeaderFields().end(); for (HTTPHeaderMap::const_iterator it = m_response.httpHeaderFields().begin(); it != end; ++it) { response->headerList()->append(it->key, it->value); } response->setBlobDataHandle(BlobDataHandle::create(blobData.release(), m_downloadedBlobLength)); response->setURL(m_request->url()); switch (m_request->tainting()) { case FetchRequestData::BasicTainting: response = response->createBasicFilteredResponse(); break; case FetchRequestData::CORSTainting: response = response->createCORSFilteredResponse(); break; case FetchRequestData::OpaqueTainting: response = response->createOpaqueFilteredResponse(); break; } m_resolver->resolve(Response::create(m_resolver->executionContext(), response)); notifyFinished(); }
void WorkerScriptLoader::didFinishLoading(unsigned long identifier, double) { m_needToCancel = false; if (!m_failed && m_decoder) m_script.append(m_decoder->flush()); notifyFinished(); }
void ChangeRouterPasswordOp::onConfigOutFinished() { m_timer1.stop(); AsyncOp *op = m_op; m_op->deleteLater(); m_op = NULL; if (op->isAborted()) { return; } if (isAborted()) { return; } int result = op->result(); if (result != NoError) { return notifyFinished(result); } QVariant varResponseCode = op->value("responseCode"); if (!varResponseCode.isValid()) { return notifyFinished(UnknownError); } bool ok; int responseCode = varResponseCode.toInt(&ok); if (!ok) { return notifyFinished(UnknownError); } // if (responseCode != 0) { // return notifyFinished(UnknownError); // } // notifyFinished(NoError); updateProfile(); }
void ChangeRouterWifiPasswordOp::onTimeout1() { LOG_DEBUG(QString::fromUtf8("ChangeRouterWifiPasswordOp::onTimeout1")); if (m_op) { m_op->abort(); } notifyFinished(NoError); }
void ChangeRouterPasswordOp::onWifiConfigFinished() { AsyncOp *op = m_op; m_op->deleteLater(); m_op = NULL; if (isAborted()) { return; } int result = op->result(); if (result != NoError) { return notifyFinished(result); } QVariant varResponseCode = op->value("responseCode"); if (!varResponseCode.isValid()) { return notifyFinished(UnknownError); } bool ok; int responseCode = varResponseCode.toInt(&ok); if (!ok) { return notifyFinished(UnknownError); } if (responseCode != 0) { return notifyFinished(UnknownError); } if (!m_adminPassword.isNull()) { startAdminConfig(); } else { startConfigOut(); } }
void WorkerScriptLoader::notifyError() { m_failed = true; // notifyError() could be called before ThreadableLoader::create() returns // e.g. from didFail(), and in that case m_threadableLoader is not yet set // (i.e. still null). // Since the callback invocation in notifyFinished() potentially delete // |this| object, the callback invocation should be postponed until the // create() call returns. See loadAsynchronously() for the postponed call. if (m_threadableLoader) notifyFinished(); }
void WorkerScriptLoader::didFinishLoading(unsigned long identifier) { if (m_failed) return; if (m_decoder) m_script += m_decoder->flush(); m_identifier = identifier; notifyFinished(); }
void FetchManager::Loader::didFinishLoading(unsigned long, double) { ASSERT(!m_failed); m_finished = true; if (document() && document()->frame() && document()->frame()->page() && m_responseHttpStatusCode >= 200 && m_responseHttpStatusCode < 300) { document()->frame()->page()->chromeClient().ajaxSucceeded(document()->frame()); } notifyFinished(); }
void FetchManager::Loader::failed() { if (m_failed) return; if (!m_resolver->executionContext() || m_resolver->executionContext()->activeDOMObjectsAreStopped()) return; m_failed = true; ScriptState* state = m_resolver->scriptState(); ScriptState::Scope scope(state); m_resolver->reject(V8ThrowException::createTypeError("Failed to fetch", state->isolate())); notifyFinished(); }
void ChangeRouterPasswordOp::onReconnectFinished() { AsyncOp *op = m_op; m_op->deleteLater(); m_op = NULL; if (op->isAborted()) { return; } int result = op->result(); LOG_DEBUG(QString::fromUtf8("reconnectRouter result: %1").arg(result)); if (result != NoError) { notifyFinished(result); } notifyFinished(NoError); }
void ChangeRouterWifiPasswordOp::onConfigStarted() { AsyncOp *op = m_op; m_op->deleteLater(); m_op = NULL; if (isAborted()) { return; } int result = op->result(); LOG_DEBUG(QString::fromUtf8("onConfigStarted %1").arg(result)); if (result != NoError) { return notifyFinished(result); } QVariant varResponseCode = op->value("responseCode"); if (!varResponseCode.isValid()) { return notifyFinished(UnknownError); } bool ok; int responseCode = varResponseCode.toInt(&ok); if (!ok) { return notifyFinished(UnknownError); } if (responseCode != 0) { return notifyFinished(UnknownError); } m_op = m_bean->m_soapCore->invoke(NS_WLANConfiguration, QLatin1String("GetInfo")); connect(m_op, SIGNAL(finished()), SLOT(onGetInfoFinished())); }
void RestartRouterOp::onConfigStarted() { AsyncOp *op = m_op; m_op->deleteLater(); m_op = NULL; if (isAborted()) { return; } int result = op->result(); LOG_DEBUG(QString::fromUtf8("onConfigStarted %1").arg(result)); if (result != NoError) { return notifyFinished(result); } QVariant varResponseCode = op->value("responseCode"); if (!varResponseCode.isValid()) { return notifyFinished(UnknownError); } bool ok; int responseCode = varResponseCode.toInt(&ok); if (!ok) { return notifyFinished(UnknownError); } if (responseCode != 0) { return notifyFinished(UnknownError); } m_op = m_bean->m_soapCore->invoke(QLatin1String("DeviceConfig"), QLatin1String("ConfigurationFinished"), QLatin1String("NewStatus"), QLatin1String("RebootRequired")); connect(m_op, SIGNAL(finished()), SLOT(onConfigFinished())); }
void WorkerScriptLoader::didFinishLoading(unsigned long identifier, double) { if (m_failed) { notifyError(); return; } if (m_decoder) m_script.append(m_decoder->flush()); m_identifier = identifier; notifyFinished(); }
void EnsureSoapOp::onSoapFinished() { AsyncOp *op = m_op; m_op->deleteLater(); m_op = NULL; int result = op->result(); if (result != NoError) { if (++m_currentCount <= m_retryCount) { LOG_DEBUG(QString::fromUtf8("EnsureSoap: failed, retry %1").arg(m_currentCount)); m_timer1.start(m_delay); return; } LOG_DEBUG(QString::fromUtf8("EnsureSoap: no more chance!")); return notifyFinished(result); } LOG_DEBUG(QString::fromUtf8("EnsureSoap: OK!")); notifyFinished(NoError); }
void CheckInternetOp::retry() { if (++m_retryCount <= m_maxRetryCount) { LOG_DEBUG(QString::fromUtf8("retry %1/%2 after delay %3").arg(m_retryCount).arg(m_maxRetryCount).arg(m_delay)); m_timer1.start(); } else { LOG_DEBUG(QString::fromUtf8("no more retry chance!")); notifyFinished(UnknownError); } }
void RestartRouterOp::onConfigFinished() { AsyncOp *op = m_op; m_op->deleteLater(); m_op = NULL; if (isAborted()) { return; } int result = op->result(); LOG_DEBUG(QString::fromUtf8("onConfigFinished %1").arg(result)); if (result != NoError) { return notifyFinished(result); } QVariant varResponseCode = op->value("responseCode"); if (!varResponseCode.isValid()) { return notifyFinished(UnknownError); } bool ok; int responseCode = varResponseCode.toInt(&ok); if (!ok) { return notifyFinished(UnknownError); } if (responseCode != 0) { return notifyFinished(UnknownError); } notifyFinished(NoError); }
void ChangeRouterPasswordOp::updateProfile() { if (!m_wifiPassword.isNull()) { QString profileName(m_infoResp.value(QLatin1String("NewSSID")).toString()); LOG_DEBUG(QString::fromUtf8("Now trying to update profile %1").arg(profileName)); m_op = m_bean->m_system->createWlanProfile(profileName, m_wifiPassword); connect(m_op, SIGNAL(finished()), SLOT(onCreateProfileFinished())); } else { notifyFinished(NoError); } }
void CheckRouterSoapOp::onGetInfo2Finished() { AsyncOp *op = m_op; m_op->deleteLater(); m_op = NULL; if (op->isAborted()) { LOG_DEBUG(QString::fromUtf8("CheckRouterSoapOp::onGetInfo2Finished() aborted")); return; } int result = op->result(); LOG_DEBUG(QString::fromUtf8("CheckRouterSoapOp::onGetInfo2Finished() %1").arg(result)); if (result != NoError) { return notifyFinished(result); } bool ok; int responseCode = op->value("responseCode").toInt(&ok); if (!ok || responseCode != 0) { LOG_DEBUG(QString::fromUtf8("CheckRouterSoapOp::onGetInfo2Finished() response error: %1 %2").arg(responseCode).arg(ok)); return notifyFinished(UnknownError); } m_values.unite(qvariant_cast<QVariantMap>(op->value("response"))); SoapCore *soapCore = m_bean->m_soapCore; QString host = soapCore->host(); soapCore->setHost(m_host); m_op = soapCore->invoke(QLatin1String("DeviceInfo"), QLatin1String("GetSysUpTime")); soapCore->setHost(host); connect(m_op, SIGNAL(finished()), SLOT(onGetInfo3Finished())); }
void ChangeRouterWifiPasswordOp::onCommitFinished() { AsyncOp *op = m_op; m_op->deleteLater(); m_op = NULL; if (isAborted()) { return; } LOG_DEBUG(QString::fromUtf8("onCommitFinished %1").arg(op->result())); notifyFinished(NoError); }