void ListCommand::execute(const QVariantMap options) { DbFilter queryFilter = options.value(OPTION_DB_FILTER).value<DbFilter>(); CommandFileList cmd(getSession()); cmd.setAutoDelete(true); cmd.setFields("items(fileSize,id,title,modifiedDate,createdDate,downloadUrl, headRevisionId)"); QString query = QueryEntry::getEntries(queryFilter); // Keepass db folder is set to root in Google drive if user did not customize it if (config()->get("cloud/GdriveKeepassFolder").toString().length() > 0) cmd.execForFolder(config()->get( "cloud/GdriveKeepassFolder").toString(), query); else cmd.exec(query); cmd.waitForFinish(false); if (cmd.error() == Errors::NO_ERROR) { qRegisterMetaType<GoogleDrive::FileInfoList>("GoogleDrive::FileInfoList"); qRegisterMetaType<GoogleDrive::FileInfo>("GoogleDrive::FileInfo"); GoogleDrive::FileInfoList dbList = cmd.files(); RemoteFileList remoteFileList = RemoteFileImpl::fromGDriveFileInfoList(dbList); setResult(KeePassxDriveSync::ResultBuilder().addValue(remoteFileList).build()); emitSuccess(); } else { emitError(Errors::FileError::LIST_FILES_PROBLEM, QString("Failed to list files for keepass directory")); } }
void play() { for (int i = 0, s = m_inputs[0].count() ; i < s ; ++i ) { Photo& photo = m_inputs[0][i]; QDir targetDir(m_targetDirectory); QString magick; QString baseFilename = targetDir.filePath(photo.getTag(TAG_NAME)); QString ext; switch (m_fileType) { case OpSave::SaveFITS: ext = ".fits"; magick = "FITS"; break; case OpSave::SaveTIFF: ext = ".tif"; magick = "TIFF"; break; case OpSave::SaveJPEG: ext = ".jpg"; magick = "JPG"; break; } QFileInfo finfo(baseFilename + ext); if ( m_backup && finfo.exists() ) { QDateTime lastModified = finfo.lastModified(); QString ts = lastModified.toString("yyyy'-'dd'-'MM'T'hh':'mm':'ss'.'zzz'Z'"); QFile orig(baseFilename + ext); orig.rename(baseFilename + "-" + ts + ext); } QString filename = finfo.filePath(); photo.save(filename, magick); emitProgress(i, s, 0, 1); } emitSuccess(); }
void play() { int n_outputs = outputsCount(); Q_ASSERT( n_outputs == m_ways ); int i = 0, s = m_inputs[0].count(); foreach(Photo photo, m_inputs[0]) { if (aborted()) continue; outputPush(i%n_outputs, photo); emitProgress(i, s, 0, 1); ++i; } if (aborted() ) emitFailure(); else emitSuccess(); }
void CommandDownloadFile::requestFinished() { QNetworkReply* reply = qobject_cast<QNetworkReply*>(sender()); Q_ASSERT(reply); if (!reply) return; if (reply->error() == QNetworkReply::AuthenticationRequiredError) { refreshToken(); return; } if (checkInvalidReplyAndRefreshToken(reply)) return; emitSuccess(); }