summaryrefslogtreecommitdiffstats
path: root/sync/notifier/notifications_disabled_reason.h
blob: 40805aaf8a6904d14b9bded48bd30d2785c9d845 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
// 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.

#ifndef SYNC_NOTIFIER_NOTIFICATIONS_DISABLED_REASON_H_
#define SYNC_NOTIFIER_NOTIFICATIONS_DISABLED_REASON_H_

#include "jingle/notifier/listener/push_client_observer.h"

namespace syncer {

enum NotificationsDisabledReason {
  // There is an underlying transient problem (e.g., network- or
  // XMPP-related).
  TRANSIENT_NOTIFICATION_ERROR,
  DEFAULT_NOTIFICATION_ERROR = TRANSIENT_NOTIFICATION_ERROR,
  // Our credentials have been rejected.
  NOTIFICATION_CREDENTIALS_REJECTED,
  // No error (useful as a default value or to avoid keeping a
  // separate bool for notifications enabled/disabled).
  NO_NOTIFICATION_ERROR
};

const char* NotificationsDisabledReasonToString(
    NotificationsDisabledReason reason);

NotificationsDisabledReason FromNotifierReason(
    notifier::NotificationsDisabledReason reason);

notifier::NotificationsDisabledReason ToNotifierReasonForTest(
    NotificationsDisabledReason reason);

}  // namespace syncer

#endif  // SYNC_NOTIFIER_NOTIFICATIONS_DISABLED_REASON_H_