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
3 // found in the LICENSE file.
5 #include "chrome/browser/chromeos/system_logs/lsb_release_log_source.h"
7 #include "base/memory/scoped_ptr.h"
8 #include "base/sys_info.h"
10 namespace system_logs
{
12 LsbReleaseLogSource::LsbReleaseLogSource() : SystemLogsSource("LsbRelease") {
15 LsbReleaseLogSource::~LsbReleaseLogSource() {
18 void LsbReleaseLogSource::Fetch(const SysLogsSourceCallback
& callback
) {
19 DCHECK(!callback
.is_null());
20 scoped_ptr
<SystemLogsResponse
> response(new SystemLogsResponse
);
21 const base::SysInfo::LsbReleaseMap
& lsb_map
=
22 base::SysInfo::GetLsbReleaseMap();
23 for (base::SysInfo::LsbReleaseMap::const_iterator iter
= lsb_map
.begin();
24 iter
!= lsb_map
.end(); ++iter
) {
25 (*response
)[iter
->first
] = iter
->second
;
27 callback
.Run(response
.get());
30 } // namespace system_logs