1// Copyright (c) 2012 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#ifndef CHROME_BROWSER_PROFILES_PROFILE_INFO_CACHE_OBSERVER_H_
6#define CHROME_BROWSER_PROFILES_PROFILE_INFO_CACHE_OBSERVER_H_
7
8#include "base/strings/string16.h"
9#include "ui/gfx/image/image.h"
10
11namespace base {
12class FilePath;
13}
14
15// This class provides an Observer interface to watch for changes to the
16// ProfileInfoCache.
17class ProfileInfoCacheObserver {
18 public:
19  virtual ~ProfileInfoCacheObserver() {}
20
21  virtual void OnProfileAdded(const base::FilePath& profile_path) {}
22  virtual void OnProfileWillBeRemoved(const base::FilePath& profile_path) {}
23  virtual void OnProfileWasRemoved(const base::FilePath& profile_path,
24                                   const string16& profile_name) {}
25  virtual void OnProfileNameChanged(const base::FilePath& profile_path,
26                                    const string16& old_profile_name) {}
27  virtual void OnProfileAvatarChanged(const base::FilePath& profile_path) {}
28
29 protected:
30  ProfileInfoCacheObserver() {}
31
32  DISALLOW_COPY_AND_ASSIGN(ProfileInfoCacheObserver);
33};
34
35#endif  // CHROME_BROWSER_PROFILES_PROFILE_INFO_CACHE_OBSERVER_H_
36