Index: components/data_reduction_proxy/core/common/data_reduction_proxy_page_load_timing.h |
diff --git a/components/data_reduction_proxy/core/common/data_reduction_proxy_page_load_timing.h b/components/data_reduction_proxy/core/common/data_reduction_proxy_page_load_timing.h |
index d2d8416ac65aa5180d599cd9c722874c7499bced..0d6981b626c9e2981677de6ba745c22b41cc5430 100644 |
--- a/components/data_reduction_proxy/core/common/data_reduction_proxy_page_load_timing.h |
+++ b/components/data_reduction_proxy/core/common/data_reduction_proxy_page_load_timing.h |
@@ -1,45 +1,44 @@ |
// Copyright 2016 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 COMPONENTS_DATA_REDUCTION_PROXY_CORE_COMMON_DATA_REDUCTION_PROXY_PAGE_LOAD_TIMING_H |
#define COMPONENTS_DATA_REDUCTION_PROXY_CORE_COMMON_DATA_REDUCTION_PROXY_PAGE_LOAD_TIMING_H |
+#include "base/optional.h" |
#include "base/time/time.h" |
namespace data_reduction_proxy { |
// The timing information that is relevant to the Pageload metrics pingback. |
struct DataReductionProxyPageLoadTiming { |
DataReductionProxyPageLoadTiming( |
const base::Time& navigation_start, |
- const base::TimeDelta& response_start, |
- const base::TimeDelta& load_event_start, |
- const base::TimeDelta& first_image_paint, |
- const base::TimeDelta& first_contentful_paint) |
- : navigation_start(navigation_start), |
- response_start(response_start), |
- load_event_start(load_event_start), |
- first_image_paint(first_image_paint), |
- first_contentful_paint(first_contentful_paint) {} |
+ const base::Optional<base::TimeDelta>& response_start, |
+ const base::Optional<base::TimeDelta>& load_event_start, |
+ const base::Optional<base::TimeDelta>& first_image_paint, |
+ const base::Optional<base::TimeDelta>& first_contentful_paint); |
+ |
+ DataReductionProxyPageLoadTiming( |
+ const DataReductionProxyPageLoadTiming& other); |
// Time that the navigation for the associated page was initiated. |
const base::Time navigation_start; |
// All TimeDeltas are relative to navigation_start |
// Time that the first byte of the response is received. |
- const base::TimeDelta response_start; |
+ const base::Optional<base::TimeDelta> response_start; |
// Time immediately before the load event is fired. |
- const base::TimeDelta load_event_start; |
+ const base::Optional<base::TimeDelta> load_event_start; |
// Time when the first image is painted. |
- const base::TimeDelta first_image_paint; |
+ const base::Optional<base::TimeDelta> first_image_paint; |
// Time when the first contentful thing (image, text, etc.) is painted. |
- const base::TimeDelta first_contentful_paint; |
+ const base::Optional<base::TimeDelta> first_contentful_paint; |
}; |
} // namespace data_reduction_proxy |
#endif // COMPONENTS_DATA_REDUCTION_PROXY_CORE_COMMON_DATA_REDUCTION_PROXY_PAGE_LOAD_TIMING_H |