| 1845 | } |
| 1846 | |
| 1847 | void Storage::OnDiffStatusReceived(diffs::NameDiffInfoMap && diffs) |
| 1848 | { |
| 1849 | m_diffsDataSource->SetDiffInfo(std::move(diffs)); |
| 1850 | |
| 1851 | SetMapSchemeForCountriesWithAbsentDiffs([this](auto const & id) { return !m_diffsDataSource->HasDiffFor(id); }); |
| 1852 | |
| 1853 | if (m_diffsDataSource->GetStatus() == diffs::Status::NotAvailable) |
| 1854 | return; |
| 1855 | |
| 1856 | for (auto const & localDiff : m_notAppliedDiffs) |
| 1857 | { |
| 1858 | auto const countryId = FindCountryIdByFile(localDiff.GetCountryName()); |
| 1859 | |
| 1860 | if (m_diffsDataSource->HasDiffFor(countryId)) |
| 1861 | UpdateNode(countryId); |
| 1862 | else |
| 1863 | localDiff.DeleteFromDisk(MapFileType::Diff); |
| 1864 | } |
| 1865 | |
| 1866 | m_notAppliedDiffs.clear(); |
| 1867 | } |
| 1868 | |
| 1869 | StatusAndError Storage::GetNodeStatusInfo(CountryTree::Node const & node, |
| 1870 | vector<pair<CountryId, NodeStatus>> & disputedTerritories, |
nothing calls this directly
no test coverage detected