1f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)// Copyright (c) 2013 The Chromium Authors. All rights reserved.
2f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
3f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)// found in the LICENSE file.
4f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
5f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#include "chrome/browser/prerender/prerender_events.h"
6f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
7f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#include "base/basictypes.h"
8f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#include "base/logging.h"
9f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
10f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)namespace prerender {
11f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
12f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)namespace {
13f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
14f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)const char* kEventNames[] = {
15f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  "swapin no delegate",
16f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  "swapin candidate",
17f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  "swapin candidate namespace matches",
18f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  "swapin no merge pending",
19f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  "swapin merging disabled",
20f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  "swapin issuing merge",
21f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  "swapin merge for swapin candidate",
22f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  "merge result no pending swapin",
23f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  "merge result timeout cb",
24f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  "merge result result cb",
25f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  "merge result timed out",
26f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  "merge result merge done",
27f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  "merge result result namespace not found",
28f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  "merge result result namespace not alias",
29f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  "merge result result not logging",
30f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  "merge result result no transactions",
31f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  "merge result result too many transactions",
32f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  "merge result result not mergeable",
33f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  "merge result result mergeable",
34f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  "merge result merge failed",
35f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  "merge result swapping in",
36f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  "merge result swapin successful",
37f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  "merge result swapin failed",
38f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  "Max",
39f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)};
40f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
41f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)COMPILE_ASSERT(arraysize(kEventNames) == PRERENDER_EVENT_MAX + 1,
42f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)               PrerenderEvent_name_count_mismatch);
43f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
44f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)}  // namespace
45f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
46f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)const char* NameFromPrerenderEvent(PrerenderEvent event) {
47f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  DCHECK(static_cast<int>(event) >= 0 &&
48f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)         event <= PRERENDER_EVENT_MAX);
49f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  return kEventNames[event];
50f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)}
51f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
52f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)}  // namespace prerender
53