| Index: chrome/browser/importer/toolbar_importer.h
|
| diff --git a/chrome/browser/importer/toolbar_importer.h b/chrome/browser/importer/toolbar_importer.h
|
| deleted file mode 100644
|
| index 961b67fcb17c5fd3e9cab02a09cf32f211b57676..0000000000000000000000000000000000000000
|
| --- a/chrome/browser/importer/toolbar_importer.h
|
| +++ /dev/null
|
| @@ -1,170 +0,0 @@
|
| -// Copyright (c) 2012 The Chromium Authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -
|
| -// The functionality provided here allows the user to import their bookmarks
|
| -// (favorites) from Google Toolbar.
|
| -
|
| -#ifndef CHROME_BROWSER_IMPORTER_TOOLBAR_IMPORTER_H_
|
| -#define CHROME_BROWSER_IMPORTER_TOOLBAR_IMPORTER_H_
|
| -
|
| -#include <string>
|
| -#include <vector>
|
| -
|
| -#include "base/basictypes.h"
|
| -#include "base/compiler_specific.h"
|
| -#include "base/gtest_prod_util.h"
|
| -#include "base/memory/ref_counted.h"
|
| -#include "base/strings/string16.h"
|
| -#include "chrome/browser/importer/importer.h"
|
| -#include "net/url_request/url_fetcher_delegate.h"
|
| -#include "net/url_request/url_request_context_getter.h"
|
| -
|
| -struct ImportedBookmarkEntry;
|
| -class ImporterBridge;
|
| -class XmlReader;
|
| -
|
| -namespace net {
|
| -class URLFetcher;
|
| -} // namespace net
|
| -
|
| -// Toolbar5Importer is a class which exposes the functionality needed to
|
| -// communicate with the Google Toolbar v5 front-end, negotiate the download of
|
| -// Toolbar bookmarks, parse them, and install them on the client.
|
| -// Toolbar5Importer should not have StartImport called more than once. Futher
|
| -// if StartImport is called, then the class must not be destroyed until it has
|
| -// either completed or Toolbar5Importer->Cancel() has been called.
|
| -class Toolbar5Importer : public net::URLFetcherDelegate, public Importer {
|
| - public:
|
| - Toolbar5Importer();
|
| -
|
| - // Importer:
|
| - // The importer view calls this method to begin the process. |items| should
|
| - // only either be NONE or FAVORITES, since as of right now these are the only
|
| - // items this importer supports.
|
| - virtual void StartImport(const importer::SourceProfile& source_profile,
|
| - uint16 items,
|
| - ImporterBridge* bridge) OVERRIDE;
|
| -
|
| - // Importer view call this method when the user clicks the cancel button
|
| - // in the tabbed options UI. We need to post a message to our loop
|
| - // to cancel network retrieval.
|
| - virtual void Cancel() OVERRIDE;
|
| -
|
| - // net::URLFetcherDelegate method called back from the URLFetcher object.
|
| - virtual void OnURLFetchComplete(const net::URLFetcher* source) OVERRIDE;
|
| -
|
| - private:
|
| - FRIEND_TEST_ALL_PREFIXES(Toolbar5ImporterTest, BookmarkParse);
|
| -
|
| - virtual ~Toolbar5Importer();
|
| -
|
| - // Internal states of the toolbar importer.
|
| - enum InternalStateEnum {
|
| - NOT_USED = -1,
|
| - INITIALIZED,
|
| - GET_AUTHORIZATION_TOKEN,
|
| - GET_BOOKMARKS,
|
| - PARSE_BOOKMARKS,
|
| - DONE
|
| - };
|
| -
|
| - typedef std::vector<string16> BookmarkFolderType;
|
| -
|
| - // URLs for connecting to the toolbar front end are defined below.
|
| - static const char kT5AuthorizationTokenUrl[];
|
| - static const char kT5FrontEndUrlTemplate[];
|
| -
|
| - // Token replacement tags are defined below.
|
| - static const char kRandomNumberToken[];
|
| - static const char kAuthorizationToken[];
|
| - static const char kAuthorizationTokenPrefix[];
|
| - static const char kAuthorizationTokenSuffix[];
|
| - static const char kMaxNumToken[];
|
| - static const char kMaxTimestampToken[];
|
| -
|
| - // XML tag names are defined below.
|
| - static const char kXmlApiReplyXmlTag[];
|
| - static const char kBookmarksXmlTag[];
|
| - static const char kBookmarkXmlTag[];
|
| - static const char kTitleXmlTag[];
|
| - static const char kUrlXmlTag[];
|
| - static const char kTimestampXmlTag[];
|
| - static const char kLabelsXmlTag[];
|
| - static const char kLabelsXmlCloseTag[];
|
| - static const char kLabelXmlTag[];
|
| - static const char kAttributesXmlTag[];
|
| -
|
| - // Flow control for asynchronous import is controlled by the methods below.
|
| - // ContinueImport is called back by each import action taken. BeginXXX
|
| - // and EndXXX are responsible for updating the state of the asynchronous
|
| - // import. EndImport is responsible for state cleanup and notifying the
|
| - // caller that import has completed.
|
| - void ContinueImport();
|
| - void EndImport();
|
| - void BeginImportBookmarks();
|
| - void EndImportBookmarks();
|
| -
|
| - // Network I/O is done by the methods below. These three methods are called
|
| - // in the order provided. The last two are called back with the HTML
|
| - // response provided by the Toolbar server.
|
| - void GetAuthenticationFromServer();
|
| - void GetBookmarkDataFromServer(const std::string& response);
|
| - void GetBookmarksFromServerDataResponse(const std::string& response);
|
| -
|
| - // XML Parsing is implemented with the methods below.
|
| - bool ParseAuthenticationTokenResponse(const std::string& response,
|
| - std::string* token);
|
| -
|
| - static bool ParseBookmarksFromReader(
|
| - XmlReader* reader,
|
| - std::vector<ImportedBookmarkEntry>* bookmarks,
|
| - const string16& bookmark_group_string);
|
| -
|
| - static bool LocateNextOpenTag(XmlReader* reader);
|
| - static bool LocateNextTagByName(XmlReader* reader, const std::string& tag);
|
| - static bool LocateNextTagWithStopByName(
|
| - XmlReader* reader,
|
| - const std::string& tag,
|
| - const std::string& stop);
|
| -
|
| - static bool ExtractBookmarkInformation(
|
| - XmlReader* reader,
|
| - ImportedBookmarkEntry* bookmark_entry,
|
| - std::vector<BookmarkFolderType>* bookmark_folders,
|
| - const string16& bookmark_group_string);
|
| - static bool ExtractNamedValueFromXmlReader(XmlReader* reader,
|
| - const std::string& name,
|
| - std::string* buffer);
|
| - static bool ExtractTitleFromXmlReader(XmlReader* reader,
|
| - ImportedBookmarkEntry* entry);
|
| - static bool ExtractUrlFromXmlReader(XmlReader* reader,
|
| - ImportedBookmarkEntry* entry);
|
| - static bool ExtractTimeFromXmlReader(XmlReader* reader,
|
| - ImportedBookmarkEntry* entry);
|
| - static bool ExtractFoldersFromXmlReader(
|
| - XmlReader* reader,
|
| - std::vector<BookmarkFolderType>* bookmark_folders,
|
| - const string16& bookmark_group_string);
|
| -
|
| - // Bookmark creation is done by the method below.
|
| - void AddBookmarksToChrome(
|
| - const std::vector<ImportedBookmarkEntry>& bookmarks);
|
| -
|
| - InternalStateEnum state_;
|
| -
|
| - // Bitmask of Importer::ImportItem.
|
| - uint16 items_to_import_;
|
| -
|
| - // The fetchers need to be available to cancel the network call on user cancel
|
| - // hence they are stored as member variables.
|
| - net::URLFetcher* token_fetcher_;
|
| - net::URLFetcher* data_fetcher_;
|
| -
|
| - // Used to get correct login data for the toolbar server.
|
| - scoped_refptr<net::URLRequestContextGetter> request_context_getter_;
|
| -
|
| - DISALLOW_COPY_AND_ASSIGN(Toolbar5Importer);
|
| -};
|
| -
|
| -#endif // CHROME_BROWSER_IMPORTER_TOOLBAR_IMPORTER_H_
|
|
|