Commit 2b338a89 authored by Marco De Marco's avatar Marco De Marco
Browse files

Timestamp exchange works

parent c41153fb
Loading
Loading
Loading
Loading
+21 −13
Original line number Diff line number Diff line
@@ -224,31 +224,39 @@ ResponseSP ProtocolManager::prepareMetadata(RequestSP request_sp)

    response_sp->set_type(Response::METADATA);

    Response::Metadata* metadata = response_sp->mutable_metadata();
    Response::Metadata* metadataRes = response_sp->mutable_metadata();
    metadataRes->set_partial(0);
    metadataRes->set_total(0);

    if(m_isAuthorised)
    {
        if(m_isValidated)
        {
            metadata->set_state(Response::Metadata::ACCEPTED);
            metadata->set_status("Metadata ready");
            metadata->set_partial(0);
            metadata->set_total(0);
            const Request::Metadata& metadataReq = request_sp->metadata();

            std::string schema = metadataReq.schema();
            std::string table = metadataReq.table();
            int64_t rawTimestamp = metadataReq.timestamp();

            std::tm timestamp = *localtime(&rawTimestamp);

            DEBUG_STREAM << "ProtocolManager::prepareMetadata() "
                << "schema " << schema << " table " << table << " timestamp "
                << asctime(&timestamp) << " from " << m_remoteEndpoint << endl;

            metadataRes->set_state(Response::Metadata::ACCEPTED);
            metadataRes->set_status("Metadata ready");
        }
        else
        {
            metadata->set_state(Response::Metadata::REJECTED);
            metadata->set_status("Not validated");
            metadata->set_partial(0);
            metadata->set_total(0);
            metadataRes->set_state(Response::Metadata::REJECTED);
            metadataRes->set_status("Not validated");
        }
    }
    else
    {
        metadata->set_state(Response::Metadata::REJECTED);
        metadata->set_status("Not authorised");
        metadata->set_partial(0);
        metadata->set_total(0);
        metadataRes->set_state(Response::Metadata::REJECTED);
        metadataRes->set_status("Not authorised");
    }

    return response_sp;
+3 −3
Original line number Diff line number Diff line
@@ -27,7 +27,7 @@ WorkerThread::~WorkerThread()
//==============================================================================
void WorkerThread::run()
{
    INFO_STREAM << "WorkerThread::run() STARTING" << endl;
    DEBUG_STREAM << "WorkerThread::run() Starting" << endl;

    while(true)
    {
@@ -51,9 +51,9 @@ void WorkerThread::run()
            DEBUG_STREAM << "WorkerThread::run() interrupt" << endl;
            break;
        }
    }   //while
    }

    INFO_STREAM << "WorkerThread::run() STOPPING" << endl;
    DEBUG_STREAM << "WorkerThread::run() Stopping" << endl;
}

}
 No newline at end of file