eive-obsw/mission/cfdp/CfdpUser.cpp

43 lines
1.9 KiB
C++

#include "CfdpUser.h"
#include <fsfw/ipc/QueueFactory.h>
namespace cfdp {
EiveUserHandler::EiveUserHandler(HasFileSystemIF& vfs, MessageQueueId_t cfdpRequestId)
: cfdp::UserBase(vfs) {
userQueue = QueueFactory::instance()->createMessageQueue(10);
userQueue->setDefaultDestination(cfdpRequestId);
}
EiveUserHandler::~EiveUserHandler() {
QueueFactory::instance()->deleteMessageQueue(userQueue);
}
void EiveUserHandler::transactionIndication(const cfdp::TransactionId& id) {}
void EiveUserHandler::eofSentIndication(const cfdp::TransactionId& id) {}
void EiveUserHandler::transactionFinishedIndication(
const cfdp::TransactionFinishedParams& params) {
sif::info << "File transaction finished for transaction with " << params.id << std::endl;
}
void EiveUserHandler::metadataRecvdIndication(const cfdp::MetadataRecvdParams& params) {
// TODO: Parse user messages and convert them into put requests where applicable.
sif::info << "Metadata received for transaction with " << params.id << std::endl;
}
void EiveUserHandler::fileSegmentRecvdIndication(
const cfdp::FileSegmentRecvdParams& params) {}
void EiveUserHandler::reportIndication(const cfdp::TransactionId& id,
cfdp::StatusReportIF& report) {}
void EiveUserHandler::suspendedIndication(const cfdp::TransactionId& id,
cfdp::ConditionCode code) {}
void EiveUserHandler::resumedIndication(const cfdp::TransactionId& id, size_t progress) {}
void EiveUserHandler::faultIndication(const cfdp::TransactionId& id, cfdp::ConditionCode code,
size_t progress) {}
void EiveUserHandler::abandonedIndication(const cfdp::TransactionId& id, cfdp::ConditionCode code,
size_t progress) {}
void EiveUserHandler::eofRecvIndication(const cfdp::TransactionId& id) {
sif::info << "EOF PDU received for transaction with " << id << std::endl;
}
} // namespace cfdp