Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(672)

Side by Side Diff: chrome/browser/chromeos/system_logs/lsb_release_log_source.h

Issue 23588009: Parse /etc/lsb-release only once on ChromeOS (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase Created 7 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 #ifndef CHROME_BROWSER_CHROMEOS_SYSTEM_LOGS_LSB_RELEASE_LOG_SOURCE_H_ 4 #ifndef CHROME_BROWSER_CHROMEOS_SYSTEM_LOGS_LSB_RELEASE_LOG_SOURCE_H_
5 #define CHROME_BROWSER_CHROMEOS_SYSTEM_LOGS_LSB_RELEASE_LOG_SOURCE_H_ 5 #define CHROME_BROWSER_CHROMEOS_SYSTEM_LOGS_LSB_RELEASE_LOG_SOURCE_H_
6 6
7 #include "chrome/browser/chromeos/system_logs/system_logs_fetcher_base.h" 7 #include "chrome/browser/chromeos/system_logs/system_logs_fetcher_base.h"
8 8
9 namespace chromeos { 9 namespace chromeos {
10 10
11 // Fetches release information form /etc/lsb-release file. 11 // Fetches release information form /etc/lsb-release file.
12 class LsbReleaseLogSource : public SystemLogsSource { 12 class LsbReleaseLogSource : public SystemLogsSource {
13 public: 13 public:
14 LsbReleaseLogSource() {} 14 LsbReleaseLogSource() {}
15 virtual ~LsbReleaseLogSource() {} 15 virtual ~LsbReleaseLogSource() {}
16 16
17 // SystemLogsSource override. 17 // SystemLogsSource override.
18 virtual void Fetch(const SysLogsSourceCallback& callback) OVERRIDE; 18 virtual void Fetch(const SysLogsSourceCallback& callback) OVERRIDE;
19 19
20 // For testing. Parses a key=value pairs from a string. There can be only one
21 // pair per line and the value must confine to a single line.
22 // Example:
23 // foo = 1
24 // bar = 2
25 // Note: it automatically strips whitespaces from the front and back of values
26 // and keys.
27 static void ParseLSBRelease(const std::string& lsb_data,
28 SystemLogsResponse* response);
29
30 private: 20 private:
31 // Gets the info from the /etc/lsb-release and parses it
32 static void ReadLSBRelease(SystemLogsResponse* response);
33
34 DISALLOW_COPY_AND_ASSIGN(LsbReleaseLogSource); 21 DISALLOW_COPY_AND_ASSIGN(LsbReleaseLogSource);
35 }; 22 };
36 23
37 } // namespace chromeos 24 } // namespace chromeos
38 25
39 #endif // CHROME_BROWSER_CHROMEOS_SYSTEM_LOGS_LSB_RELEASE_LOG_SOURCE_H_ 26 #endif // CHROME_BROWSER_CHROMEOS_SYSTEM_LOGS_LSB_RELEASE_LOG_SOURCE_H_
OLDNEW
« no previous file with comments | « chrome/browser/chromeos/system/statistics_provider.cc ('k') | chrome/browser/chromeos/system_logs/lsb_release_log_source.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698