| Index: chrome/browser/chromeos/file_system_provider/observed_entry.h | 
| diff --git a/chrome/browser/chromeos/file_system_provider/observed_entry.h b/chrome/browser/chromeos/file_system_provider/observed_entry.h | 
| index f34d1b073cdac94353fd9b7a835c2340ff34c3b7..b69b4981658e28ea847036dd423988b17f5aea26 100644 | 
| --- a/chrome/browser/chromeos/file_system_provider/observed_entry.h | 
| +++ b/chrome/browser/chromeos/file_system_provider/observed_entry.h | 
| @@ -6,14 +6,17 @@ | 
| #define CHROME_BROWSER_CHROMEOS_FILE_SYSTEM_PROVIDER_OBSERVED_ENTRY_H_ | 
|  | 
| #include <map> | 
| +#include <set> | 
| #include <string> | 
|  | 
| #include "base/files/file_path.h" | 
| +#include "url/gurl.h" | 
|  | 
| namespace chromeos { | 
| namespace file_system_provider { | 
|  | 
| struct ObservedEntry; | 
| +struct Subscriber; | 
|  | 
| // Key for storing an observed entry in the map. There may be two observers | 
| // per path, as long as one is recursive, and the other one not. | 
| @@ -33,13 +36,38 @@ struct ObservedEntryKey { | 
| typedef std::map<ObservedEntryKey, ObservedEntry, ObservedEntryKey::Comparator> | 
| ObservedEntries; | 
|  | 
| +// Map of subscribers for notifications about an observed entry. | 
| +typedef std::map<GURL, Subscriber> Subscribers; | 
| + | 
| +// Represents a subscriber for notification about an observed entry. There may | 
| +// be up to one subscriber per origin for the same observed entry. | 
| +struct Subscriber { | 
| +  Subscriber(); | 
| +  ~Subscriber(); | 
| + | 
| +  // Origin of the subscriber. | 
| +  GURL origin; | 
| + | 
| +  // Whether the subscriber should be restored after shutdown or not. | 
| +  bool persistent; | 
| +}; | 
| + | 
| // Represents an observed entry on a file system. | 
| struct ObservedEntry { | 
| ObservedEntry(); | 
| ~ObservedEntry(); | 
|  | 
| +  // Map of subscribers for notifications of the observed entry. | 
| +  Subscribers subscribers; | 
| + | 
| +  // Path of the observed entry. | 
| base::FilePath entry_path; | 
| + | 
| +  // Whether observing is recursive or not. | 
| bool recursive; | 
| + | 
| +  // Tag of the last notification for this observed entry. May be empty if not | 
| +  // supported. | 
| std::string last_tag; | 
| }; | 
|  | 
|  |