RemoteCommandTargeterRS::RemoteCommandTargeterRS(const std::string& rsName,
        const std::vector<HostAndPort>& seedHosts)
    : _rsName(rsName) {

    std::set<HostAndPort> seedServers(seedHosts.begin(), seedHosts.end());
    _rsMonitor = ReplicaSetMonitor::createIfNeeded(rsName, seedServers);

    LOG(1) << "Started targeter for "
           << ConnectionString::forReplicaSet(
               rsName, std::vector<HostAndPort>(seedServers.begin(), seedServers.end()));
}
RemoteCommandTargeterRS::RemoteCommandTargeterRS(const std::string& rsName,
                                                 const std::vector<HostAndPort>& seedHosts)
    : _rsName(rsName) {
    _rsMonitor = ReplicaSetMonitor::get(rsName);
    if (!_rsMonitor) {
        std::set<HostAndPort> seedServers(seedHosts.begin(), seedHosts.end());

        ReplicaSetMonitor::createIfNeeded(rsName, seedServers);
        _rsMonitor = ReplicaSetMonitor::get(rsName);

        fassert(28711, _rsMonitor != nullptr);
    }
}