void DBHTMLFileLetterDAO::create(Letter::Ptr item)
{
    qCDebug(lcPersistence) << "Entering DBHTMLFileLetterDAO::create with param " + item->toString();

    try {
        m_validator->validateForCreate(item);
    } catch (ValidationException *e) {
        throw new PersistenceException(e);
    }

    QString filePath = createHtmlFile(item);

    QSqlQuery insertQuery(m_database);
    insertQuery.prepare("INSERT INTO LETTER VALUES(NULL, ?, ?, ?);");

    insertQuery.addBindValue(item->date());
    insertQuery.addBindValue(item->customer()->id());
    insertQuery.addBindValue(filePath);

    if (!insertQuery.exec()) {
        QFile::remove(filePath);
        qCCritical(lcPersistence) << "DBHTMLFileLetterDAO::create failed: " + insertQuery.lastError().text();
        throw new PersistenceException("DBHTMLFileLetterDAO::create failed: " + insertQuery.lastError().text());
    }

    item->setId(insertQuery.lastInsertId().toInt());
}
Ejemplo n.º 2
0
int extractDocumentation(TDA_Doc *docu, char *inputDir, char *outputFile) {
    htmlFile *html;

    logInfo(docu->logFile,"Aloco para el archivo de salida html.");
    createHtmlFile(html, outputFile);
    logInfo(docu->logFile,"Entro en la parte de extraer la documentación.");
    extractDocumentationFromFile(docu, html, inputDir);
    logInfo(docu->logFile,"Cierro el archivo de salida html.");
    closeHtmlFile(html);
    return RES_OK;
}
Ejemplo n.º 3
0
/**
 * @brief Main function of the test program.
 * 
 * Creates output.txt, and html files for each socialite that has been
 * imported using @p importSocialites()
 */
int main()
{
    ofstream outputFile("output.txt");
    ifstream inputFile("data.txt");

    vector<Socialite> socialites = importSocialites(inputFile);

    for (unsigned int i = 0; i < socialites.size(); i++)
    {
        testSocialite(socialites[i], outputFile);
        createHtmlFile(socialites[i]);
    }

	return 0;

}