24 std::string
Id()
override;
25 std::optional<std::string>
Name()
override;
26 std::optional<std::string>
Metadata()
override;
27 core::interface::ChannelState
State()
override;
36 std::shared_ptr<interface::RoomDomainCacheManager<interface::RoomPublication>>
37 GetRoomPublicationCacheManager()
override;
38 std::shared_ptr<interface::RoomDomainCacheManager<interface::RoomSubscription>>
39 GetRoomSubscriptionCacheManager()
override;
40 std::shared_ptr<interface::RoomDomainCacheManager<interface::LocalRoomMember>>
41 GetLocalRoomMemberCacheManager()
override;
42 std::shared_ptr<interface::RoomDomainCacheManager<interface::RemoteRoomMember>>
43 GetRemoteRoomMemberCacheManager()
override;
46 Room(std::shared_ptr<core::interface::Channel> core,
47 std::unique_ptr<interface::RoomDomainFactory> factory,
48 std::shared_ptr<interface::RoomDomainCacheManager<interface::RoomPublication>>
49 room_publication_cache_manager,
50 std::shared_ptr<interface::RoomDomainCacheManager<interface::RoomSubscription>>
51 room_subscription_cache_manager,
52 std::shared_ptr<interface::RoomDomainCacheManager<interface::LocalRoomMember>>
53 local_room_member_cache_manager,
54 std::shared_ptr<interface::RoomDomainCacheManager<interface::RemoteRoomMember>>
55 remote_room_member_cache_manager);
61 std::shared_ptr<core::interface::Channel> core_;
62 std::unique_ptr<interface::RoomDomainFactory> factory_;
64 std::mutex listener_mtx_;
68 const std::shared_ptr<interface::RoomDomainCacheManager<interface::RoomPublication>>
69 room_publication_cache_manager_;
70 const std::shared_ptr<interface::RoomDomainCacheManager<interface::RoomSubscription>>
71 room_subscription_cache_manager_;
72 const std::shared_ptr<interface::RoomDomainCacheManager<interface::LocalRoomMember>>
73 local_room_member_cache_manager_;
74 const std::shared_ptr<interface::RoomDomainCacheManager<interface::RemoteRoomMember>>
75 remote_room_member_cache_manager_;