Chromium Code Reviews| Index: components/cast_channel/cast_socket_service.cc |
| diff --git a/components/cast_channel/cast_socket_service.cc b/components/cast_channel/cast_socket_service.cc |
| index f58c9858e9212121ed2ad48758d411773747d708..fc43c5daaa40e00bc12ef91bebcd258017edc18c 100644 |
| --- a/components/cast_channel/cast_socket_service.cc |
| +++ b/components/cast_channel/cast_socket_service.cc |
| @@ -52,6 +52,22 @@ CastSocket* CastSocketService::GetSocket(int channel_id) const { |
| return socket_it == sockets_.end() ? nullptr : socket_it->second.get(); |
| } |
| +CastSocket::Observer* CastSocketService::GetObserver(const std::string& id) { |
| + auto it = std::find_if( |
| + socket_observer_map_.begin(), socket_observer_map_.end(), |
| + [id](const std::pair<const std::string, |
|
mark a. foltz
2017/06/20 01:16:43
Can the parameter passed to the lambda be const au
zhaobin
2017/06/20 17:50:05
Seems not.. Got ''auto' not allowed in lambda para
|
| + std::unique_ptr<CastSocket::Observer>>& entry) { |
| + return entry.first == id; |
| + }); |
| + return it == socket_observer_map_.end() ? nullptr : it->second.get(); |
| +} |
| + |
| +void CastSocketService::AddObserver( |
| + const std::string& id, |
| + std::unique_ptr<CastSocket::Observer> observer) { |
| + socket_observer_map_.insert(std::make_pair(id, std::move(observer))); |
| +} |
| + |
| void CastSocketService::ShutdownOnUIThread() {} |
| } // namespace cast_channel |