1// Copyright 2014 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 "storage/browser/quota/storage_observer.h"
6
7namespace storage {
8
9// StorageObserver::Filter
10
11StorageObserver::Filter::Filter()
12    : storage_type(kStorageTypeUnknown) {
13}
14
15StorageObserver::Filter::Filter(StorageType storage_type, const GURL& origin)
16    : storage_type(storage_type), origin(origin) {
17}
18
19bool StorageObserver::Filter::operator==(const Filter& other) const {
20  return storage_type == other.storage_type &&
21         origin == other.origin;
22}
23
24// StorageObserver::MonitorParams
25
26StorageObserver::MonitorParams::MonitorParams()
27    : dispatch_initial_state(false) {
28}
29
30StorageObserver::MonitorParams::MonitorParams(
31    StorageType storage_type,
32    const GURL& origin,
33    const base::TimeDelta& rate,
34    bool get_initial_state)
35        : filter(storage_type, origin),
36          rate(rate),
37          dispatch_initial_state(get_initial_state) {
38}
39
40StorageObserver::MonitorParams::MonitorParams(
41    const Filter& filter,
42    const base::TimeDelta& rate,
43    bool get_initial_state)
44        : filter(filter),
45          rate(rate),
46          dispatch_initial_state(get_initial_state) {
47}
48
49// StorageObserver::Event
50
51StorageObserver::Event::Event()
52    : usage(0), quota(0) {
53}
54
55StorageObserver::Event::Event(const Filter& filter, int64 usage, int64 quota)
56    : filter(filter), usage(usage), quota(quota) {
57}
58
59bool StorageObserver::Event::operator==(const Event& other) const {
60  return filter == other.filter &&
61         usage == other.usage &&
62         quota == other.quota;
63}
64
65}  // namespace storage
66