• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright (c) 2011 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 #ifndef CHROME_BROWSER_FIRST_RUN_FIRST_RUN_IMPORT_OBSERVER_H_
6 #define CHROME_BROWSER_FIRST_RUN_FIRST_RUN_IMPORT_OBSERVER_H_
7 #pragma once
8 
9 #include "base/basictypes.h"
10 #include "base/compiler_specific.h"
11 #include "chrome/browser/importer/importer_observer.h"
12 
13 // This class is used by FirstRun::ImportNow to get notified of the outcome of
14 // the import operation. It differs from ImportProcessRunner in that this
15 // class executes in the context of the importing child process.
16 // The values that it handles are meant to be used as the process exit code.
17 class FirstRunImportObserver : public ImporterObserver {
18  public:
19   FirstRunImportObserver();
20   virtual ~FirstRunImportObserver();
21 
22   void RunLoop();
23 
import_result()24   int import_result() const { return import_result_; }
25 
26  private:
27   void Finish();
28 
29   // ImporterObserver:
30   virtual void ImportCompleted() OVERRIDE;
31 
32   bool loop_running_;
33   int import_result_;
34 
35   DISALLOW_COPY_AND_ASSIGN(FirstRunImportObserver);
36 };
37 
38 #endif  // CHROME_BROWSER_FIRST_RUN_FIRST_RUN_IMPORT_OBSERVER_H_
39