Home | History | Annotate | Download | only in prerender
      1 // Copyright (c) 2012 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 #ifndef CHROME_BROWSER_PRERENDER_PRERENDER_FINAL_STATUS_H_
      6 #define CHROME_BROWSER_PRERENDER_PRERENDER_FINAL_STATUS_H_
      7 
      8 #include "chrome/browser/prerender/prerender_origin.h"
      9 
     10 namespace prerender {
     11 
     12 // FinalStatus indicates whether |this| was used, or why it was cancelled.
     13 // NOTE: New values need to be appended, since they are used in histograms.
     14 enum FinalStatus {
     15   FINAL_STATUS_USED = 0,
     16   FINAL_STATUS_TIMED_OUT = 1,
     17   // Obsolete: FINAL_STATUS_EVICTED = 2,
     18   FINAL_STATUS_MANAGER_SHUTDOWN = 3,
     19   FINAL_STATUS_CLOSED = 4,
     20   FINAL_STATUS_CREATE_NEW_WINDOW = 5,
     21   FINAL_STATUS_PROFILE_DESTROYED = 6,
     22   FINAL_STATUS_APP_TERMINATING = 7,
     23   FINAL_STATUS_JAVASCRIPT_ALERT = 8,
     24   FINAL_STATUS_AUTH_NEEDED = 9,
     25   // Obsolete: FINAL_STATUS_HTTPS = 10,
     26   FINAL_STATUS_DOWNLOAD = 11,
     27   FINAL_STATUS_MEMORY_LIMIT_EXCEEDED = 12,
     28   // Obsolete: FINAL_STATUS_JS_OUT_OF_MEMORY = 13,
     29   // Obsolete: FINAL_STATUS_RENDERER_UNRESPONSIVE = 14,
     30   FINAL_STATUS_TOO_MANY_PROCESSES = 15,
     31   FINAL_STATUS_RATE_LIMIT_EXCEEDED = 16,
     32   // Obsolete: FINAL_STATUS_PENDING_SKIPPED = 17,
     33   // Obsolete: FINAL_STATUS_CONTROL_GROUP = 18,
     34   // Obsolete: FINAL_STATUS_HTML5_MEDIA = 19,
     35   // Obsolete: FINAL_STATUS_SOURCE_RENDER_VIEW_CLOSED = 20,
     36   FINAL_STATUS_RENDERER_CRASHED = 21,
     37   FINAL_STATUS_UNSUPPORTED_SCHEME = 22,
     38   FINAL_STATUS_INVALID_HTTP_METHOD = 23,
     39   FINAL_STATUS_WINDOW_PRINT = 24,
     40   FINAL_STATUS_RECENTLY_VISITED = 25,
     41   FINAL_STATUS_WINDOW_OPENER = 26,
     42   // Obsolete: FINAL_STATUS_PAGE_ID_CONFLICT = 27,
     43   FINAL_STATUS_SAFE_BROWSING = 28,
     44   // Obsolete: FINAL_STATUS_FRAGMENT_MISMATCH = 29,
     45   FINAL_STATUS_SSL_CLIENT_CERTIFICATE_REQUESTED = 30,
     46   FINAL_STATUS_CACHE_OR_HISTORY_CLEARED = 31,
     47   FINAL_STATUS_CANCELLED = 32,
     48   FINAL_STATUS_SSL_ERROR = 33,
     49   FINAL_STATUS_CROSS_SITE_NAVIGATION_PENDING = 34,
     50   FINAL_STATUS_DEVTOOLS_ATTACHED = 35,
     51   // Obsolete: FINAL_STATUS_SESSION_STORAGE_NAMESPACE_MISMATCH = 36,
     52   // Obsolete: FINAL_STATUS_NO_USE_GROUP = 37,
     53   // Obsolete: FINAL_STATUS_MATCH_COMPLETE_DUMMY = 38,
     54   FINAL_STATUS_DUPLICATE = 39,
     55   FINAL_STATUS_OPEN_URL = 40,
     56   FINAL_STATUS_WOULD_HAVE_BEEN_USED = 41,
     57   FINAL_STATUS_REGISTER_PROTOCOL_HANDLER = 42,
     58   FINAL_STATUS_CREATING_AUDIO_STREAM = 43,
     59   FINAL_STATUS_PAGE_BEING_CAPTURED = 44,
     60   FINAL_STATUS_BAD_DEFERRED_REDIRECT = 45,
     61   FINAL_STATUS_NAVIGATION_UNCOMMITTED = 46,
     62   FINAL_STATUS_NEW_NAVIGATION_ENTRY = 47,
     63   FINAL_STATUS_COOKIE_STORE_NOT_LOADED = 48,
     64   FINAL_STATUS_COOKIE_CONFLICT = 49,
     65   FINAL_STATUS_NON_EMPTY_BROWSING_INSTANCE = 50,
     66   FINAL_STATUS_NAVIGATION_INTERCEPTED = 51,
     67   FINAL_STATUS_MAX,
     68 };
     69 
     70 // Return a human-readable name for |final_status|. |final_status|
     71 // is expected to be a valid value.
     72 const char* NameFromFinalStatus(FinalStatus final_status);
     73 
     74 }  // namespace prerender
     75 
     76 #endif  // CHROME_BROWSER_PRERENDER_PRERENDER_FINAL_STATUS_H_
     77