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_IMPORTER_IMPORTER_PROGRESS_OBSERVER_H_
6#define CHROME_BROWSER_IMPORTER_IMPORTER_PROGRESS_OBSERVER_H_
7#pragma once
8
9#include "chrome/browser/importer/importer_data_types.h"
10
11namespace importer {
12
13// Objects implement this interface when they wish to be notified of events
14// during the import process.
15class ImporterProgressObserver {
16 public:
17  // Invoked when the import begins.
18  virtual void ImportStarted() = 0;
19
20  // Invoked when data for the specified item is about to be collected.
21  virtual void ImportItemStarted(ImportItem item) = 0;
22
23  // Invoked when data for the specified item has been collected from the
24  // source profile and is now ready for further processing.
25  virtual void ImportItemEnded(ImportItem item) = 0;
26
27  // Invoked when the source profile has been imported.
28  virtual void ImportEnded() = 0;
29
30 protected:
31  virtual ~ImporterProgressObserver() {}
32};
33
34}  // namespace importer
35
36#endif  // CHROME_BROWSER_IMPORTER_IMPORTER_PROGRESS_OBSERVER_H_
37