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 22 namespace importer { 23 24 Importer* 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