Chromium Code Reviews| OLD | NEW |
|---|---|
| (Empty) | |
| 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | |
| 2 // Use of this source code is governed by a BSD-style license that can be | |
| 3 // found in the LICENSE file. | |
| 4 | |
| 5 #include "update_engine/simple_key_value_store.h" | |
| 6 #include <map> | |
| 7 #include <string> | |
| 8 #include <vector> | |
| 9 #include "base/string_util.h" | |
| 10 | |
| 11 using std::map; | |
| 12 using std::string; | |
| 13 using std::vector; | |
| 14 | |
| 15 namespace chromeos_update_engine { | |
| 16 namespace simple_key_value_store { | |
| 17 | |
| 18 // Parses a string. | |
| 19 map<std::string, std::string> ParseString(const string& str) { | |
| 20 // Split along '\n', then along '=' | |
| 21 std::map<std::string, std::string> ret; | |
| 22 vector<string> lines; | |
| 23 SplitStringDontTrim(str, '\n', &lines); | |
| 24 for (vector<string>::const_iterator it = lines.begin(); | |
| 25 it != lines.end(); ++it) { | |
| 26 string::size_type pos = it->find('='); | |
| 27 if (pos == string::npos) | |
| 28 continue; | |
| 29 ret[it->substr(0, pos)] = it->substr(pos + 1, it->size()); | |
|
davidjames
2010/05/21 21:40:53
Do you mean just it->substr(pos + 1)?
| |
| 30 } | |
| 31 return ret; | |
| 32 } | |
| 33 | |
| 34 string AssembleString(const std::map<string, string>& data) { | |
| 35 string ret; | |
| 36 for (std::map<string, string>::const_iterator it = data.begin(); | |
| 37 it != data.end(); ++it) { | |
| 38 ret += it->first; | |
| 39 ret += "="; | |
| 40 ret += it->second; | |
| 41 ret += "\n"; | |
| 42 } | |
| 43 return ret; | |
| 44 } | |
| 45 | |
| 46 } // namespace simple_key_value_store | |
| 47 } // namespace chromeos_update_engine | |
| OLD | NEW |