• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 "components/invalidation/notifier_reason_util.h"
6 
7 #include "base/logging.h"
8 
9 namespace syncer {
10 
FromNotifierReason(notifier::NotificationsDisabledReason reason)11 InvalidatorState FromNotifierReason(
12     notifier::NotificationsDisabledReason reason) {
13   switch (reason) {
14     case notifier::NO_NOTIFICATION_ERROR:
15       return INVALIDATIONS_ENABLED;
16     case notifier::TRANSIENT_NOTIFICATION_ERROR:
17       return TRANSIENT_INVALIDATION_ERROR;
18     case notifier::NOTIFICATION_CREDENTIALS_REJECTED:
19       return INVALIDATION_CREDENTIALS_REJECTED;
20     default:
21       NOTREACHED();
22       return DEFAULT_INVALIDATION_ERROR;
23   }
24 }
25 
ToNotifierReasonForTest(InvalidatorState state)26 notifier::NotificationsDisabledReason ToNotifierReasonForTest(
27     InvalidatorState state) {
28   switch (state) {
29     case TRANSIENT_INVALIDATION_ERROR:
30       return notifier::TRANSIENT_NOTIFICATION_ERROR;
31     case INVALIDATION_CREDENTIALS_REJECTED:
32       return notifier::NOTIFICATION_CREDENTIALS_REJECTED;
33     case INVALIDATIONS_ENABLED:
34       // Fall through.
35     default:
36       NOTREACHED();
37       return notifier::TRANSIENT_NOTIFICATION_ERROR;
38   }
39 }
40 
41 }  // namespace syncer
42