22 std::string
Id()
override;
23 std::optional<std::string>
Name()
override;
24 std::optional<std::string>
Metadata()
override;
25 core::interface::ChannelState
State()
override;
34 std::shared_ptr<interface::RoomDomainCacheManager<interface::RoomPublication>>
35 GetRoomPublicationCacheManager()
override;
36 std::shared_ptr<interface::RoomDomainCacheManager<interface::RoomSubscription>>
37 GetRoomSubscriptionCacheManager()
override;
38 std::shared_ptr<interface::RoomDomainCacheManager<interface::LocalRoomMember>>
39 GetLocalRoomMemberCacheManager()
override;
40 std::shared_ptr<interface::RoomDomainCacheManager<interface::RemoteRoomMember>>
41 GetRemoteRoomMemberCacheManager()
override;
44 Room(std::shared_ptr<core::interface::Channel> core,
45 std::unique_ptr<interface::RoomDomainFactory> factory,
46 std::shared_ptr<interface::RoomDomainCacheManager<interface::RoomPublication>>
47 room_publication_cache_manager,
48 std::shared_ptr<interface::RoomDomainCacheManager<interface::RoomSubscription>>
49 room_subscription_cache_manager,
50 std::shared_ptr<interface::RoomDomainCacheManager<interface::LocalRoomMember>>
51 local_room_member_cache_manager,
52 std::shared_ptr<interface::RoomDomainCacheManager<interface::RemoteRoomMember>>
53 remote_room_member_cache_manager);
59 std::shared_ptr<core::interface::Channel> core_;
60 std::unique_ptr<interface::RoomDomainFactory> factory_;
62 std::mutex listener_mtx_;
66 const std::shared_ptr<interface::RoomDomainCacheManager<interface::RoomPublication>>
67 room_publication_cache_manager_;
68 const std::shared_ptr<interface::RoomDomainCacheManager<interface::RoomSubscription>>
69 room_subscription_cache_manager_;
70 const std::shared_ptr<interface::RoomDomainCacheManager<interface::LocalRoomMember>>
71 local_room_member_cache_manager_;
72 const std::shared_ptr<interface::RoomDomainCacheManager<interface::RemoteRoomMember>>
73 remote_room_member_cache_manager_;