| Index: components/gcm_driver/gcm_client_impl.h
|
| diff --git a/components/gcm_driver/gcm_client_impl.h b/components/gcm_driver/gcm_client_impl.h
|
| index dcda57db288946f2086be305cbdbe23ce51c5969..6700e0c7e0b5ddde0560b009ce18c95f89f81776 100644
|
| --- a/components/gcm_driver/gcm_client_impl.h
|
| +++ b/components/gcm_driver/gcm_client_impl.h
|
| @@ -175,6 +175,16 @@ class GCMClientImpl
|
| std::set<std::string> last_checkin_accounts;
|
| };
|
|
|
| + // Reasons for resetting the GCM Store.
|
| + // Note: this enum is recorded into a histogram. Do not change enum value
|
| + // or order.
|
| + enum ResetReason {
|
| + LOAD_FAILURE, // GCM store failed to load, but the store exists.
|
| + CHECKIN_REJECTED, // Checkin was rejected by server.
|
| +
|
| + RESET_REASON_COUNT,
|
| + };
|
| +
|
| // Collection of pending registration requests. Keys are RegistrationInfo
|
| // instance, while values are pending registration requests to obtain a
|
| // registration ID for requesting application.
|
| @@ -220,7 +230,7 @@ class GCMClientImpl
|
| // Starts a login on mcs_client_.
|
| void StartMCSLogin();
|
| // Resets the GCM store when it is corrupted.
|
| - void ResetStore();
|
| + void ResetStore(ResetReason reset_reason);
|
| // Sets state to ready. This will initiate the MCS login and notify the
|
| // delegates.
|
| void OnReady(const std::vector<AccountMapping>& account_mappings,
|
|
|