diff options
author | Alex Zolotarev <alex@maps.me> | 2015-12-09 12:18:20 +0300 |
---|---|---|
committer | Sergey Yershov <yershov@corp.mail.ru> | 2016-03-23 16:03:51 +0300 |
commit | 9dfa0e5e286c789d5c19316ae26ee76d15d2efb1 (patch) | |
tree | f33b70d2fd0edefc977554a7128ec2fed3788496 /indexer/feature.cpp | |
parent | 8d84276ee2dd604949a8556ac4c9dd6017900ddf (diff) |
FeatureType::SetMetadata() and SetNames().
Diffstat (limited to 'indexer/feature.cpp')
-rw-r--r-- | indexer/feature.cpp | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/indexer/feature.cpp b/indexer/feature.cpp index 08ff227205..9c4583d6d5 100644 --- a/indexer/feature.cpp +++ b/indexer/feature.cpp @@ -151,6 +151,28 @@ void FeatureType::ParseMetadata() const m_bMetadataParsed = true; } +void FeatureType::SetNames(StringUtf8Multilang const & newNames) +{ + m_params.name.Clear(); + // Validate passed string to clean up empty names (if any). + newNames.ForEachRef([this](int8_t langCode, string const & name) -> bool + { + if (!name.empty()) + m_params.name.AddString(langCode, name); + return true; + }); + + if (m_params.name.IsEmpty()) + SetHeader(~feature::HEADER_HAS_NAME & Header()); + else + SetHeader(feature::HEADER_HAS_NAME | Header()); +} + +void FeatureType::SetMetadata(feature::Metadata const & newMetadata) +{ + m_bMetadataParsed = true; + m_metadata = newMetadata; +} namespace { |