1// Copyright 2013 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 "chrome/browser/extensions/api/log_private/log_parser.h"
6
7#include <string>
8#include <vector>
9
10#include "base/logging.h"
11#include "base/memory/linked_ptr.h"
12#include "base/strings/string_split.h"
13#include "chrome/browser/extensions/api/log_private/log_private_api.h"
14#include "chrome/common/extensions/api/log_private.h"
15
16using std::string;
17using std::vector;
18
19namespace extensions {
20
21LogParser::LogParser() {
22}
23
24LogParser::~LogParser() {
25}
26
27void LogParser::Parse(
28    const string& input,
29    std::vector<linked_ptr<api::log_private::LogEntry> >* output,
30    FilterHandler* filter_handler) const {
31  std::vector<string> entries;
32  // Assume there is no newline in the log entry
33  base::SplitString(input, '\n', &entries);
34
35  for (size_t i = 0; i < entries.size(); i++) {
36    ParseEntry(entries[i], output, filter_handler);
37  }
38}
39
40}  // namespace extensions
41