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/utility/importer/importer_creator.h"
6
7#include "base/logging.h"
8#include "chrome/utility/importer/bookmarks_file_importer.h"
9#include "chrome/utility/importer/firefox_importer.h"
10
11#if defined(OS_WIN)
12#include "chrome/utility/importer/ie_importer_win.h"
13#endif
14
15#if defined(OS_MACOSX)
16#include <CoreFoundation/CoreFoundation.h>
17
18#include "base/mac/foundation_util.h"
19#include "chrome/utility/importer/safari_importer.h"
20#endif
21
22namespace importer {
23
24Importer* CreateImporterByType(ImporterType type) {
25  switch (type) {
26#if defined(OS_WIN)
27    case TYPE_IE:
28      return new IEImporter();
29#endif
30    case TYPE_BOOKMARKS_FILE:
31      return new BookmarksFileImporter();
32    case TYPE_FIREFOX:
33      return new FirefoxImporter();
34#if defined(OS_MACOSX)
35    case TYPE_SAFARI:
36      return new SafariImporter(base::mac::GetUserLibraryPath());
37#endif
38    default:
39      NOTREACHED();
40      return NULL;
41  }
42}
43
44}  // namespace importer
45