diff options
author | Claudius 'keldu' Holeksa <mail@keldu.de> | 2024-08-14 10:38:42 +0200 |
---|---|---|
committer | Claudius 'keldu' Holeksa <mail@keldu.de> | 2024-08-14 10:38:42 +0200 |
commit | 991a5cbfea6b4ae6551a17e3e8ec375aec1a2a62 (patch) | |
tree | 6010d55774a62985c1974829f687496ce058b62c | |
parent | 2a442407538628b7b04c63c0643d521739de6b69 (diff) |
Fixed assignement in data server creation
-rw-r--r-- | modules/codec/c++/simple.hpp | 4 | ||||
-rw-r--r-- | modules/remote-filesystem/c++/remote.hpp | 12 | ||||
-rw-r--r-- | modules/remote-filesystem/c++/transfer.hpp (renamed from modules/remote-filesystem/c++/transport.hpp) | 10 | ||||
-rw-r--r-- | modules/remote-filesystem/tests/transport.cpp | 6 |
4 files changed, 22 insertions, 10 deletions
diff --git a/modules/codec/c++/simple.hpp b/modules/codec/c++/simple.hpp index b0cdfd9..33831b6 100644 --- a/modules/codec/c++/simple.hpp +++ b/modules/codec/c++/simple.hpp @@ -8,7 +8,9 @@ namespace saw { namespace encode { -struct KelSimple {}; +struct KelSimple { + static constexpr string_literal name = "encode::KelSimple"; +}; } template<typename T> diff --git a/modules/remote-filesystem/c++/remote.hpp b/modules/remote-filesystem/c++/remote.hpp index 8390501..0225bc5 100644 --- a/modules/remote-filesystem/c++/remote.hpp +++ b/modules/remote-filesystem/c++/remote.hpp @@ -2,6 +2,7 @@ #include <filesystem> +#include <forstio/codec/schema_hash.hpp> #include <forstio/remote/remote.hpp> namespace saw { @@ -35,6 +36,8 @@ private: std::map<std::string, ptr<i_data_server<rmt::File>>> registered_data_servers_; public: + remote() = default; + error_or<own<remote_address<rmt::File>>> parse_address(const std::string_view& path_v){ return heap<remote_address<rmt::File>>(path_v); } @@ -47,8 +50,15 @@ public: } auto dat_srv = heap<data_server<Schema, Encode, rmt::File>>(*this, addr); - insert_res.first->second = {dat_srv}; + insert_res.first->second = ptr<i_data_server<rmt::File>>{*dat_srv}; return dat_srv; } + + /** + * Internal deregister function + */ + error_or<void> deregister_data_server(ptr<i_data_server<rmt::File>> srv){ + return make_error<err::not_implemented>(); + } }; } diff --git a/modules/remote-filesystem/c++/transport.hpp b/modules/remote-filesystem/c++/transfer.hpp index 0db4600..e3df023 100644 --- a/modules/remote-filesystem/c++/transport.hpp +++ b/modules/remote-filesystem/c++/transfer.hpp @@ -2,11 +2,11 @@ #include "remote.hpp" -#include <forstio/remote/transport.hpp> +#include <forstio/remote/transfer.hpp> namespace saw { -template<typename Schema, typename Encode> -class data_server<Schema, Encode, rmt::File> final : public i_data_server<rmt::File> { +template<typename Schema, typename Encoding> +class data_server<Schema, Encoding, rmt::File> final : public i_data_server<rmt::File> { private: ptr<remote<rmt::File>> remote_; remote_address<rmt::File> addr_; @@ -19,7 +19,7 @@ public: {} ~data_server(){ - remote().deregister_data_server(*this); + remote_().deregister_data_server(*this); } SAW_FORBID_MOVE(data_server); @@ -30,8 +30,6 @@ public: } error_or<void> send(const data<Schema, Encoding>& dat, id<Schema> store_id){ - try { - } return make_error<err::not_implemented>(); } diff --git a/modules/remote-filesystem/tests/transport.cpp b/modules/remote-filesystem/tests/transport.cpp index 05c13a6..e8df294 100644 --- a/modules/remote-filesystem/tests/transport.cpp +++ b/modules/remote-filesystem/tests/transport.cpp @@ -1,5 +1,7 @@ #include <forstio/test/suite.hpp> -#include "../c++/transport.hpp" +#include "../c++/transfer.hpp" + +#include <forstio/codec/simple.hpp> namespace { namespace sch { @@ -20,7 +22,7 @@ SAW_TEST("File Remote"){ SAW_EOV_EXPECT(eo_addr, "Couldn't parse file"); auto& addr = eo_addr.get_value(); - auto eo_dat_srv = file_remote.data_listen({*addr}); + auto eo_dat_srv = file_remote.template data_listen<sch::Foo,encode::KelSimple>({*addr}); SAW_EOV_EXPECT(eo_dat_srv, "Couldn't setup data server."); auto& dat_srv = eo_dat_srv.get_value(); |