status_t POP3Protocol::SyncMessages() { bool leaveOnServer; if (fSettings.FindBool("leave_mail_on_server", &leaveOnServer) != B_OK) leaveOnServer = true; // create directory if not exist create_directory(fDestinationDir, 0777); printf("POP3Protocol::SyncMessages()\n"); _ReadManifest(); SetTotalItems(2); ReportProgress(0, 1, "Connect to server..."); status_t error = Connect(); if (error < B_OK) { ResetProgress(); return error; } ReportProgress(0, 1, MDR_DIALECT_CHOICE("Getting UniqueIDs...", "固有のIDを取得中...")); error = _UniqueIDs(); if (error < B_OK) { ResetProgress(); return error; } BStringList toDownload; fManifest.NotHere(fUniqueIDs, &toDownload); int32 numMessages = toDownload.CountItems(); if (numMessages == 0) { CheckForDeletedMessages(); ResetProgress(); return B_OK; } ResetProgress(); SetTotalItems(toDownload.CountItems()); printf("POP3: Messages to download: %i\n", (int)toDownload.CountItems()); for (int32 i = 0; i < toDownload.CountItems(); i++) { const char* uid = toDownload.ItemAt(i); int32 toRetrieve = fUniqueIDs.IndexOf(uid); if (toRetrieve < 0) { // should not happen! error = B_NAME_NOT_FOUND; printf("POP3: uid %s index %i not found in fUniqueIDs!\n", uid, (int)toRetrieve); continue; } BPath path(fDestinationDir); BString fileName = "Downloading file... uid: "; fileName += uid; fileName.ReplaceAll("/", "_SLASH_"); path.Append(fileName); BEntry entry(path.Path()); BFile file(&entry, B_READ_WRITE | B_CREATE_FILE | B_ERASE_FILE); error = file.InitCheck(); if (error != B_OK) { printf("POP3: Can't create file %s\n ", path.Path()); break; } BMailMessageIO mailIO(this, &file, toRetrieve); entry_ref ref; entry.GetRef(&ref); // the ref becomes invalid after renaming the file thus we already // write the status here MarkMessageAsRead(ref, B_UNREAD); int32 size = MessageSize(toRetrieve); if (fFetchBodyLimit < 0 || size <= fFetchBodyLimit) { error = mailIO.Seek(0, SEEK_END); if (error < 0) { printf("POP3: Failed to download body %s\n ", uid); break; } NotifyHeaderFetched(ref, &file); NotifyBodyFetched(ref, &file); if (!leaveOnServer) Delete(toRetrieve); } else { int32 dummy; error = mailIO.ReadAt(0, &dummy, 1); if (error < 0) { printf("POP3: Failed to download header %s\n ", uid); break; } NotifyHeaderFetched(ref, &file); } ReportProgress(0, 1); if (file.WriteAttr("MAIL:unique_id", B_STRING_TYPE, 0, uid, strlen(uid)) < 0) { error = B_ERROR; } file.WriteAttr("MAIL:size", B_INT32_TYPE, 0, &size, sizeof(int32)); // save manifest in case we get disturbed fManifest += uid; _WriteManifest(); } ResetProgress(); CheckForDeletedMessages(); Disconnect(); return error; }
status_t POP3Protocol::FetchBody(const entry_ref& ref) { ResetProgress("Fetch body"); SetTotalItems(1); status_t error = Connect(); if (error < B_OK) return error; error = _UniqueIDs(); if (error < B_OK) { Disconnect(); return error; } BFile file(&ref, B_READ_WRITE); status_t status = file.InitCheck(); if (status != B_OK) { Disconnect(); return status; } char uidString[256]; BNode node(&ref); if (node.ReadAttr("MAIL:unique_id", B_STRING_TYPE, 0, uidString, 256) < 0) { Disconnect(); return B_ERROR; } int32 toRetrieve = fUniqueIDs.IndexOf(uidString); if (toRetrieve < 0) { Disconnect(); return B_NAME_NOT_FOUND; } bool leaveOnServer; if (fSettings.FindBool("leave_mail_on_server", &leaveOnServer) != B_OK) leaveOnServer = true; // TODO: get rid of this BMailMessageIO! BMailMessageIO io(this, &file, toRetrieve); // read body status = io.Seek(0, SEEK_END); if (status < 0) { Disconnect(); return status; } NotifyBodyFetched(ref, &file); if (!leaveOnServer) Delete(toRetrieve); ReportProgress(0, 1); ResetProgress(); Disconnect(); return B_OK; }
void CShareBox::OnProgress(int progress) { m_progress = qMin(progress, 100); /* If the transfer completed or an error occured, then set a timer after which progress will be reset to ProgressNone. */ if(m_progress < 0) QTimer::singleShot(3000, this, SLOT(ResetProgress())); update(); }
bool BSPBuilder::CompileAreas() { ResetProgress(); m_numOutsideTris = 0; m_numOutsideModels = 0; m_numInsideTris = 0; m_numInsideModels = 0; m_work = 0; Log("\n------------\n"); Log("Compiling Objects...\n"); if (m_ui) { m_ui->title = "Compiling Models..."; m_ui->total = (int)m_map->worldspawn->models.size(); m_ui->totalProgress = 0; m_ui->Refresh(); } for (SceneFile::TriModel::Vec::const_iterator it = m_map->worldspawn->models.begin(); it != m_map->worldspawn->models.end(); ++it) { const SceneFile::TriModel::Ref &m = *it; if (m->ignore || m->cinematic) continue; if (m->contents&kContentsFlag_Floor) continue; if (m->contents&kContentsFlag_Areaportal) continue; if (m->contents&kContentsFlag_Clip) continue; DecomposeAreaModel(*m); if (m_ui) { m_ui->Step(); m_ui->Refresh(); } } Log("\n------------\n"); Log("Inside : %d model(s), %d tri(s)\n", m_numInsideModels, m_numInsideTris); Log("Outside: %d model(s), %d tri(s)\n", m_numOutsideModels, m_numOutsideTris); Log("Total : %d model(s), %d tri(s)\n", m_numInsideModels+m_numOutsideModels, m_numInsideTris+m_numOutsideTris); Log("\n------------\n"); for (AreaVec::iterator it = m_areas.begin(); it != m_areas.end(); ++it) { AreaRef area = *it; Log("Area %d: %d model(s)\n", area->area, area->numModels); } Log("------------\n"); return true; }
void ErrorCallback(ProvStatus status) { ProvisioningInfo *provInfo = GetCallbackObjectOnError(status); cbData(provInfo); ResetProgress(); }
void SuccessCallback(OCClientResponse * clientResponse) { ProvisioningInfo *provInfo = GetCallbackObjectOnSuccess(clientResponse, DEVICE_PROVISIONED); cbData(provInfo); ResetProgress(); }
void StopProvisioningProcess() { //Only basis test is done for below API ResetProgress(); }
void CProgressDlg::RestartTask(LPCTSTR pszTask, size_t nTotal /* = -1 */) { SetTaskName(pszTask); ResetProgress(static_cast<int>(nTotal)); ShowWindow(SW_SHOWDEFAULT); }
status_t POP3Protocol::SyncMessages() { bool leaveOnServer; if (fSettings.FindBool("leave_mail_on_server", &leaveOnServer) != B_OK) leaveOnServer = true; // create directory if not exist create_directory(fDestinationDir, 0777); printf("POP3Protocol::SyncMessages()\n"); _ReadManifest(); SetTotalItems(2); ReportProgress(1, 0, B_TRANSLATE("Connect to server" B_UTF8_ELLIPSIS)); status_t error = Connect(); if (error != B_OK) { printf("POP3 could not connect: %s\n", strerror(error)); ResetProgress(); return error; } ReportProgress(1, 0, B_TRANSLATE("Getting UniqueIDs" B_UTF8_ELLIPSIS)); error = _RetrieveUniqueIDs(); if (error < B_OK) { ResetProgress(); Disconnect(); return error; } BStringList toDownload; NotHere(fManifest, fUniqueIDs, &toDownload); int32 numMessages = toDownload.CountStrings(); if (numMessages == 0) { CheckForDeletedMessages(); ResetProgress(); Disconnect(); return B_OK; } ResetProgress(); SetTotalItems(toDownload.CountStrings()); SetTotalItemsSize(fTotalSize); printf("POP3: Messages to download: %i\n", (int)toDownload.CountStrings()); for (int32 i = 0; i < toDownload.CountStrings(); i++) { const char* uid = toDownload.StringAt(i); int32 toRetrieve = fUniqueIDs.IndexOf(uid); if (toRetrieve < 0) { // should not happen! error = B_NAME_NOT_FOUND; printf("POP3: uid %s index %i not found in fUniqueIDs!\n", uid, (int)toRetrieve); continue; } BPath path(fDestinationDir); BString fileName = "Downloading file... uid: "; fileName += uid; fileName.ReplaceAll("/", "_SLASH_"); path.Append(fileName); BEntry entry(path.Path()); BFile file(&entry, B_READ_WRITE | B_CREATE_FILE | B_ERASE_FILE); error = file.InitCheck(); if (error != B_OK) { printf("POP3: Can't create file %s\n ", path.Path()); break; } BMailMessageIO mailIO(this, &file, toRetrieve); BMessage attributes; entry_ref ref; entry.GetRef(&ref); int32 size = MessageSize(toRetrieve); if (fFetchBodyLimit < 0 || size <= fFetchBodyLimit) { error = mailIO.Seek(0, SEEK_END); if (error < 0) { printf("POP3: Failed to download body %s\n ", uid); break; } ProcessMessageFetched(ref, file, attributes); if (!leaveOnServer) Delete(toRetrieve); } else { int32 dummy; error = mailIO.ReadAt(0, &dummy, 1); if (error < 0) { printf("POP3: Failed to download header %s\n ", uid); break; } ProcessHeaderFetched(ref, file, attributes); } ReportProgress(1, 0); if (file.WriteAttr("MAIL:unique_id", B_STRING_TYPE, 0, uid, strlen(uid)) < 0) error = B_ERROR; file.WriteAttr("MAIL:size", B_INT32_TYPE, 0, &size, sizeof(int32)); write_read_attr(file, B_UNREAD); // save manifest in case we get disturbed fManifest.Add(uid); _WriteManifest(); } ResetProgress(); CheckForDeletedMessages(); Disconnect(); return error; }