ormthread.cpp 929 Bytes
#include "ormthread.h"
#include "ormhandler.h"
#include "log.h"

using namespace osdev::components;

ORMThread::ORMThread()
{
}

ORMThread::~ORMThread()
{
}

void ORMThread::run()
{
    OrmHandler *p_OrmHandler = new OrmHandler();

    // Connect incoming data
    connect( this, &ORMThread::signalSendData, p_OrmHandler, &OrmHandler::receiveData );
    // Cascade connect the rejectedData
    connect( p_OrmHandler, &OrmHandler::signalRejectedData, this, &ORMThread::signalRejectedData );

    p_OrmHandler->start();

    this->exec();
}

void ORMThread::dataToThread( const QSharedPointer<ORMRelData>& data )
{
    QCoreApplication::processEvents();
    LogDebug( "[ORMThread::dataToThread]", QString( "Data received for container : %1" )
              .arg( data->getMainTableName() ) );
    LogDebug( "[ORMThread::dataToThread]", data->asString() );

    emit signalSendData( data );
    QCoreApplication::processEvents();
}