diff --git a/receiver/src/receiver_data_server/fabric_server_rds.cpp b/receiver/src/receiver_data_server/fabric_server_rds.cpp
index b434b8b916082ac1a3b31b372410625303210b40..3de621580fd8b4bf427640ddf43fe65dcf399953 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 ecb380578dff1e8a3cd5acfc9363de9b00246afe..b253ccf26d53d79c412b9aec09c6f69781d2614b 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;
 };