From d2379c4628c56193733a593e828480e672f672d7 Mon Sep 17 00:00:00 2001 From: Carsten Patzke <carsten.patzke@desy.de> Date: Wed, 8 Apr 2020 16:47:25 +0200 Subject: [PATCH] [fabric::rds] Added fabric factory --- .../src/receiver_data_server/fabric_server_rds.cpp | 11 +++++++++-- .../src/receiver_data_server/fabric_server_rds.h | 13 ++++++++++--- 2 files changed, 19 insertions(+), 5 deletions(-) diff --git a/receiver/src/receiver_data_server/fabric_server_rds.cpp b/receiver/src/receiver_data_server/fabric_server_rds.cpp index b434b8b91..3de621580 100644 --- a/receiver/src/receiver_data_server/fabric_server_rds.cpp +++ b/receiver/src/receiver_data_server/fabric_server_rds.cpp @@ -2,7 +2,7 @@ using namespace asapo; -FabricServerRds::FabricServerRds(const std::string& address) { +FabricServerRds::FabricServerRds(const std::string& address) : factory__(fabric::GenerateDefaultFabricFactory()) { } @@ -14,7 +14,14 @@ GenericRequests FabricServerRds::GetNewRequests(Error* err) const noexcept { return asapo::GenericRequests(); } -Error FabricServerRds::SendData(uint64_t source_id, void* buf, uint64_t size) const noexcept { +Error +FabricServerRds::SendResponse(const ReceiverDataServerRequest* request, const GenericNetworkResponse* response) const noexcept { + return asapo::Error(); +} + +Error FabricServerRds::SendResponseAndSlotData(const ReceiverDataServerRequest* request, + const GenericNetworkResponse* response, + const CacheMeta* cache_slot) const noexcept { return asapo::Error(); } diff --git a/receiver/src/receiver_data_server/fabric_server_rds.h b/receiver/src/receiver_data_server/fabric_server_rds.h index ecb380578..b253ccf26 100644 --- a/receiver/src/receiver_data_server/fabric_server_rds.h +++ b/receiver/src/receiver_data_server/fabric_server_rds.h @@ -1,17 +1,24 @@ #ifndef ASAPO_RDS_FABRIC_SERVER_H #define ASAPO_RDS_FABRIC_SERVER_H -#include "net_server.h" +#include "rds_net_server.h" +#include "asapo_fabric/asapo_fabric.h" namespace asapo { -class FabricServerRds : public NetServer { +class FabricServerRds : public RdsNetServer { public: explicit FabricServerRds(const std::string& address); ~FabricServerRds() override; + std::unique_ptr<asapo::fabric::FabricFactory> factory__; // modified in testings to mock system calls, otherwise do not touch public: // NetServer implementation GenericRequests GetNewRequests(Error* err) const noexcept override; - Error SendData(uint64_t source_id, void* buf, uint64_t size) const noexcept override; + + Error SendResponse(const ReceiverDataServerRequest* request, const GenericNetworkResponse* response) const noexcept override; + + Error SendResponseAndSlotData(const ReceiverDataServerRequest* request, const GenericNetworkResponse* response, + const CacheMeta* cache_slot) const noexcept override; + void HandleAfterError(uint64_t source_id) const noexcept override; }; -- GitLab