Add diagnostics_writer.cc to the list of files allowed to printf.
[chromium-blink-merge.git] / components / autofill / content / renderer / renderer_save_password_progress_logger.h
blob5ea21a4c462fe15a56109d48d04cd0a1c1be3217
1 // Copyright 2014 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 #ifndef COMPONENTS_AUTOFILL_CONTENT_RENDERER_RENDERER_BROWSER_SAVE_PASSWORD_PROGRESS_LOGGER_H_
6 #define COMPONENTS_AUTOFILL_CONTENT_RENDERER_RENDERER_BROWSER_SAVE_PASSWORD_PROGRESS_LOGGER_H_
8 #include <string>
10 #include "components/autofill/core/common/save_password_progress_logger.h"
12 class PasswordManagerClient;
14 namespace IPC {
15 class Sender;
18 namespace autofill {
20 // This is the SavePasswordProgressLogger specialization for the renderer code,
21 // which sends logs to the browser process over IPC.
22 class RendererSavePasswordProgressLogger : public SavePasswordProgressLogger {
23 public:
24 // The logger will use |sender| and |routing_id| to send a
25 // AutofillHostMsg_RecordSavePasswordProgress message with the logs to the
26 // browser. The |sender| needs to outlive the constructed logger.
27 RendererSavePasswordProgressLogger(IPC::Sender* sender, int routing_id);
28 virtual ~RendererSavePasswordProgressLogger();
30 protected:
31 // SavePasswordProgressLogger:
32 virtual void SendLog(const std::string& log) OVERRIDE;
34 private:
35 // Used by SendLog to send the IPC message with logs. |sender_| needs to
36 // outlive the logger.
37 IPC::Sender* const sender_;
38 const int routing_id_;
40 DISALLOW_COPY_AND_ASSIGN(RendererSavePasswordProgressLogger);
43 } // namespace autofill
45 #endif // COMPONENTS_AUTOFILL_CONTENT_RENDERER_RENDERER_BROWSER_SAVE_PASSWORD_PROGRESS_LOGGER_H_