| Index: chrome/browser/privacy_blacklist/blacklist.h | 
| diff --git a/chrome/browser/privacy_blacklist/blacklist.h b/chrome/browser/privacy_blacklist/blacklist.h | 
| deleted file mode 100644 | 
| index e5d1b5f0ce9567d6a119309019e0bef380372783..0000000000000000000000000000000000000000 | 
| --- a/chrome/browser/privacy_blacklist/blacklist.h | 
| +++ /dev/null | 
| @@ -1,227 +0,0 @@ | 
| -// Copyright (c) 2010 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. | 
| - | 
| -#ifndef CHROME_BROWSER_PRIVACY_BLACKLIST_BLACKLIST_H_ | 
| -#define CHROME_BROWSER_PRIVACY_BLACKLIST_BLACKLIST_H_ | 
| - | 
| -#include <string> | 
| -#include <vector> | 
| - | 
| -#include "base/basictypes.h" | 
| -#include "base/gtest_prod_util.h" | 
| -#include "base/linked_ptr.h" | 
| -#include "base/ref_counted.h" | 
| -#include "googleurl/src/gurl.h" | 
| -#include "net/url_request/url_request.h" | 
| - | 
| -class DictionaryValue; | 
| -class FilePath; | 
| -class ListValue; | 
| -class PrefService; | 
| - | 
| -//////////////////////////////////////////////////////////////////////////////// | 
| -// | 
| -// Blacklist Class | 
| -// | 
| -// Represents a blacklist used to protect user from privacy and annoyances. | 
| -// A blacklist is essentially a map from resource-match patterns to filter- | 
| -// attributes. Each time a resources matches a pattern the filter-attributes | 
| -// are used to determine how the browser handles the matching resource. | 
| -//////////////////////////////////////////////////////////////////////////////// | 
| -class Blacklist : public base::RefCountedThreadSafe<Blacklist> { | 
| - public: | 
| -  class Entry; | 
| -  class Provider; | 
| - | 
| -  typedef std::vector<linked_ptr<Entry> > EntryList; | 
| -  typedef std::vector<linked_ptr<Provider> > ProviderList; | 
| - | 
| -  // Filter attributes (more to come): | 
| -  static const unsigned int kBlockAll; | 
| -  static const unsigned int kBlockCookies; | 
| -  static const unsigned int kDontSendReferrer; | 
| -  static const unsigned int kDontSendUserAgent; | 
| -  static const unsigned int kBlockUnsecure; | 
| - | 
| -  // Aggregate filter types: | 
| -  static const unsigned int kBlockRequest; | 
| -  static const unsigned int kBlockResponse; | 
| -  static const unsigned int kModifySentHeaders; | 
| -  static const unsigned int kModifyReceivedHeaders; | 
| - | 
| -  // Blacklist entries come from a provider, defined by a name and source URL. | 
| -  class Provider { | 
| -   public: | 
| -    Provider() {} | 
| -    Provider(const std::string& name, const std::string& url, | 
| -             const std::wstring& pref_path) | 
| -        : name_(name), | 
| -          pref_path_(pref_path), | 
| -          url_(url) {} | 
| - | 
| -    const std::string& name() const { return name_; } | 
| -    void set_name(const std::string& name) { name_ = name; } | 
| - | 
| -    const std::wstring& pref_path() const { return pref_path_; } | 
| -    void set_pref_path(const std::wstring& pref_path) { | 
| -      pref_path_ = pref_path; | 
| -    } | 
| - | 
| -    const std::string& url() const { return url_; } | 
| -    void set_url(const std::string& url) { url_ = url; } | 
| - | 
| -   private: | 
| -    std::string name_; | 
| -    std::wstring pref_path_; | 
| -    std::string url_; | 
| -  }; | 
| - | 
| -  // A single blacklist entry which is returned when a URL matches one of | 
| -  // the patterns. Entry objects are owned by the Blacklist that stores them. | 
| -  class Entry { | 
| -   public: | 
| -    // Construct with given pattern. | 
| -    Entry(const std::string& pattern, const Provider* provider, | 
| -          bool is_exception); | 
| - | 
| -    // Returns the pattern which this entry matches. | 
| -    const std::string& pattern() const { return pattern_; } | 
| - | 
| -    // Bitfield of filter-attributes matching the pattern. | 
| -    unsigned int attributes() const { return attributes_; } | 
| - | 
| -    // True if this entry is an exception to the blacklist. | 
| -    bool is_exception() const { return is_exception_; } | 
| - | 
| -    // Provider of this blacklist entry, used for assigning blame ;) | 
| -    const Provider* provider() const { return provider_; } | 
| - | 
| -    // Returns true of the given URL is blocked, assumes it matches the | 
| -    // pattern of this entry. | 
| -    bool IsBlocked(const GURL&) const; | 
| - | 
| -    void AddAttributes(unsigned int attributes); | 
| - | 
| -   private: | 
| -    unsigned int attributes_; | 
| - | 
| -    // True if this entry is an exception to the blacklist. | 
| -    bool is_exception_; | 
| -    std::string pattern_; | 
| - | 
| -    // Points to the provider of this entry, the providers are all | 
| -    // owned by the blacklist. | 
| -    const Provider* provider_; | 
| -  }; | 
| - | 
| -  // A request may match one or more Blacklist rules. The Match class packages | 
| -  // all the matching entries behind a single interface with access to the | 
| -  // underlying set of entries so that we can display provider information. | 
| -  // Often a match must be applied after a URLRequest has started, so it gets | 
| -  // tagged with the Match object to avoid doing lookups more than once per | 
| -  // request. | 
| -  class Match : public URLRequest::UserData { | 
| -   public: | 
| -    // Functions that return combined results from all entries. | 
| -    unsigned int attributes() const { | 
| -      return (matching_attributes_ & (~exception_attributes_)); | 
| -    } | 
| -    bool IsBlocked(const GURL&) const; | 
| - | 
| -    // Access to individual entries, mostly for display/logging purposes. | 
| -    const std::vector<const Entry*>& entries() const { | 
| -      return matching_entries_; | 
| -    } | 
| - | 
| -   private: | 
| -    Match(); | 
| -    void AddEntry(const Entry* entry); | 
| - | 
| -    std::vector<const Entry*> matching_entries_; | 
| -    std::vector<const Entry*> exception_entries_; | 
| - | 
| -    // Precomputed ORed attributes of matching/exception entries. | 
| -    unsigned int matching_attributes_; | 
| -    unsigned int exception_attributes_; | 
| - | 
| -    friend class Blacklist;  // Only blacklist constructs and sets these. | 
| -  }; | 
| - | 
| -  // Constructs a blacklist and populates it from the preferences associated | 
| -  // with this profile. | 
| -  explicit Blacklist(PrefService* prefs); | 
| - | 
| -#ifdef UNIT_TEST | 
| -  // Constructs an empty blacklist. | 
| -  Blacklist() : prefs_(NULL) {} | 
| -#endif | 
| - | 
| -  // Destructor. | 
| -  ~Blacklist(); | 
| - | 
| -  // Adds a new entry to the blacklist. It is now owned by the blacklist. | 
| -  void AddEntry(Entry* entry); | 
| - | 
| -  // Adds a new provider to the blacklist. It is now owned by the blacklist. | 
| -  void AddProvider(Provider* provider); | 
| - | 
| -  EntryList::const_iterator entries_begin() const { | 
| -    return blacklist_.begin(); | 
| -  } | 
| - | 
| -  EntryList::const_iterator entries_end() const { | 
| -    return blacklist_.end(); | 
| -  } | 
| - | 
| -  ProviderList::const_iterator providers_begin() const { | 
| -    return providers_.begin(); | 
| -  } | 
| - | 
| -  ProviderList::const_iterator providers_end() const { | 
| -    return providers_.end(); | 
| -  } | 
| - | 
| -  // Returns a pointer to a Match structure holding all matching entries. | 
| -  // If no matching Entry is found, returns null. Ownership belongs to the | 
| -  // caller. | 
| -  Match* FindMatch(const GURL&) const; | 
| - | 
| -  static void RegisterUserPrefs(PrefService* user_prefs); | 
| - | 
| -  // Helper to remove cookies from a header. | 
| -  static std::string StripCookies(const std::string&); | 
| - | 
| - private: | 
| -  // Converts a GURL into the string to match against. | 
| -  static std::string GetURLAsLookupString(const GURL& url); | 
| - | 
| -  // Loads the list of entries for a given provider. Returns true on success. | 
| -  bool LoadEntryPreference(const ListValue& pref, const Provider* provider); | 
| - | 
| -  // Loads patterns from preferences. Returns true on success. | 
| -  bool LoadPreferences(); | 
| - | 
| -  // Loads a provider and subsequently all of its entries. Returns true on | 
| -  // success. If an error occurs reading a provider or one of its entries, | 
| -  // the complete provider is dropped. | 
| -  bool LoadProviderPreference(const DictionaryValue& pref, | 
| -                              const std::wstring& path); | 
| - | 
| -  // Matches a pattern to a core URL which is host/path with all the other | 
| -  // optional parts (scheme, user, password, port) stripped away. | 
| -  static bool Matches(const std::string& pattern, const std::string& url); | 
| - | 
| -  EntryList blacklist_; | 
| -  ProviderList providers_; | 
| - | 
| -  // Preferences where blacklist entries are stored. | 
| -  PrefService* prefs_; | 
| - | 
| -  FRIEND_TEST_ALL_PREFIXES(BlacklistTest, Generic); | 
| -  FRIEND_TEST_ALL_PREFIXES(BlacklistTest, PatternMatch); | 
| - | 
| -  DISALLOW_COPY_AND_ASSIGN(Blacklist); | 
| -}; | 
| - | 
| -#endif  // CHROME_BROWSER_PRIVACY_BLACKLIST_BLACKLIST_H_ | 
|  |