Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(155)

Side by Side Diff: third_party/WebKit/Source/core/timing/PerformanceLongTaskTiming.cpp

Issue 2610063006: Create TaskAttributionTiming PerformanceEntry for attribution in PerformanceLongTaskTiming. Move cu… (Closed)
Patch Set: update copyright year Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "core/timing/PerformanceLongTaskTiming.h" 5 #include "core/timing/PerformanceLongTaskTiming.h"
6 6
7 #include "core/frame/DOMWindow.h" 7 #include "core/frame/DOMWindow.h"
8 #include "core/timing/TaskAttributionTiming.h"
8 9
9 namespace blink { 10 namespace blink {
10 11
11 namespace { 12 namespace {
12 13
13 double clampToMillisecond(double timeInMillis) { 14 double clampToMillisecond(double timeInMillis) {
14 // Long task times are clamped to 1 millisecond for security. 15 // Long task times are clamped to 1 millisecond for security.
15 return floor(timeInMillis); 16 return floor(timeInMillis);
16 } 17 }
17 18
18 } // namespace 19 } // namespace
19 20
21 // static
22 PerformanceLongTaskTiming* PerformanceLongTaskTiming::create(
23 double startTime,
24 double endTime,
25 String name,
26 String culpritFrameSrc,
27 String culpritFrameId,
28 String culpritFrameName) {
tdresser 2017/01/05 13:34:14 I'd strip the culprit prefix throughout - I don't
panicker 2017/01/05 20:56:49 Done.
29 return new PerformanceLongTaskTiming(startTime, endTime, name,
30 culpritFrameSrc, culpritFrameId,
31 culpritFrameName);
32 }
33
20 PerformanceLongTaskTiming::PerformanceLongTaskTiming(double startTime, 34 PerformanceLongTaskTiming::PerformanceLongTaskTiming(double startTime,
21 double endTime, 35 double endTime,
22 String name, 36 String name,
23 String culpritFrameSrc, 37 String culpritFrameSrc,
24 String culpritFrameId, 38 String culpritFrameId,
25 String culpritFrameName) 39 String culpritFrameName)
26 : PerformanceEntry(name, 40 : PerformanceEntry(name,
27 "longtask", 41 "longtask",
28 clampToMillisecond(startTime), 42 clampToMillisecond(startTime),
29 clampToMillisecond(endTime)), 43 clampToMillisecond(endTime)) {
30 m_culpritFrameSrc(culpritFrameSrc), 44 // Only one possible name ("frame") currently.
31 m_culpritFrameId(culpritFrameId), 45 TaskAttributionTiming* attributionEntry = TaskAttributionTiming::create(
32 m_culpritFrameName(culpritFrameName) {} 46 "frame", culpritFrameSrc, culpritFrameId, culpritFrameName);
47 m_attribution.append(*attributionEntry);
48 }
33 49
34 PerformanceLongTaskTiming::~PerformanceLongTaskTiming() {} 50 PerformanceLongTaskTiming::~PerformanceLongTaskTiming() {}
35 51
36 String PerformanceLongTaskTiming::culpritFrameSrc() const { 52 TaskAttributionVector PerformanceLongTaskTiming::attribution() const {
37 return m_culpritFrameSrc; 53 return m_attribution;
38 }
39
40 String PerformanceLongTaskTiming::culpritFrameId() const {
41 return m_culpritFrameId;
42 }
43
44 String PerformanceLongTaskTiming::culpritFrameName() const {
45 return m_culpritFrameName;
46 } 54 }
47 55
48 DEFINE_TRACE(PerformanceLongTaskTiming) { 56 DEFINE_TRACE(PerformanceLongTaskTiming) {
57 visitor->trace(m_attribution);
49 PerformanceEntry::trace(visitor); 58 PerformanceEntry::trace(visitor);
50 } 59 }
51 60
52 } // namespace blink 61 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698