+Link* Link::set_property(const std::string& key, const std::string& value)
+{
+ kernel::actor::simcall_object_access(pimpl_, [this, &key, &value] { this->pimpl_->set_property(key, value); });
+ return this;
+}
+
+const std::unordered_map<std::string, std::string>* Link::get_properties() const
+{
+ return this->pimpl_->get_properties();
+}
+
+Link* Link::set_properties(const std::unordered_map<std::string, std::string>& properties)
+{
+ kernel::actor::simcall_object_access(pimpl_, [this, &properties] { this->pimpl_->set_properties(properties); });
+ return this;
+}
+
+Link* SplitDuplexLink::get_link_up() const