Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 /* | 1 /* |
| 2 * Copyright (C) 2010 Google Inc. All rights reserved. | 2 * Copyright (C) 2010 Google Inc. All rights reserved. |
| 3 * Copyright (C) 2012 Intel Inc. All rights reserved. | 3 * Copyright (C) 2012 Intel Inc. All rights reserved. |
| 4 * | 4 * |
| 5 * Redistribution and use in source and binary forms, with or without | 5 * Redistribution and use in source and binary forms, with or without |
| 6 * modification, are permitted provided that the following conditions are | 6 * modification, are permitted provided that the following conditions are |
| 7 * met: | 7 * met: |
| 8 * | 8 * |
| 9 * * Redistributions of source code must retain the above copyright | 9 * * Redistributions of source code must retain the above copyright |
| 10 * notice, this list of conditions and the following disclaimer. | 10 * notice, this list of conditions and the following disclaimer. |
| (...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 96 | 96 |
| 97 PerformanceEntryVector PerformanceBase::getEntriesByType( | 97 PerformanceEntryVector PerformanceBase::getEntriesByType( |
| 98 const String& entryType) { | 98 const String& entryType) { |
| 99 PerformanceEntryVector entries; | 99 PerformanceEntryVector entries; |
| 100 PerformanceEntry::EntryType type = | 100 PerformanceEntry::EntryType type = |
| 101 PerformanceEntry::toEntryTypeEnum(entryType); | 101 PerformanceEntry::toEntryTypeEnum(entryType); |
| 102 | 102 |
| 103 switch (type) { | 103 switch (type) { |
| 104 case PerformanceEntry::Invalid: | 104 case PerformanceEntry::Invalid: |
| 105 return entries; | 105 return entries; |
| 106 case PerformanceEntry::Paint: | |
|
panicker
2016/12/05 20:51:23
Nit: add another comment here instead of adding to
sunjian
2016/12/07 21:55:44
Done.
| |
| 106 case PerformanceEntry::LongTask: | 107 case PerformanceEntry::LongTask: |
| 107 // Unsupported for LongTask. Per the spec, Long task entries can only be | 108 // Unsupported for LongTask or Paint. Per the spec, Long task entries and |
| 108 // accessed via Performance Observer. No separate buffer is maintained. | 109 // Paint entries can only be accessed via Performance Observer. |
| 110 // No separate buffer is maintained. | |
| 109 return entries; | 111 return entries; |
| 110 case PerformanceEntry::Resource: | 112 case PerformanceEntry::Resource: |
| 111 for (const auto& resource : m_resourceTimingBuffer) | 113 for (const auto& resource : m_resourceTimingBuffer) |
| 112 entries.append(resource); | 114 entries.append(resource); |
| 113 break; | 115 break; |
| 114 case PerformanceEntry::Navigation: | 116 case PerformanceEntry::Navigation: |
| 115 if (m_navigationTiming) | 117 if (m_navigationTiming) |
| 116 entries.append(m_navigationTiming); | 118 entries.append(m_navigationTiming); |
| 117 break; | 119 break; |
| 118 case PerformanceEntry::Composite: | 120 case PerformanceEntry::Composite: |
| (...skipping 229 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 348 documentLoader->getNavigationType(), documentLoadTiming.redirectStart(), | 350 documentLoader->getNavigationType(), documentLoadTiming.redirectStart(), |
| 349 documentLoadTiming.redirectEnd(), documentLoadTiming.fetchStart(), | 351 documentLoadTiming.redirectEnd(), documentLoadTiming.fetchStart(), |
| 350 documentLoadTiming.responseEnd(), | 352 documentLoadTiming.responseEnd(), |
| 351 documentLoadTiming.hasCrossOriginRedirect(), | 353 documentLoadTiming.hasCrossOriginRedirect(), |
| 352 documentLoadTiming.hasSameOriginAsPreviousDocument(), resourceLoadTiming, | 354 documentLoadTiming.hasSameOriginAsPreviousDocument(), resourceLoadTiming, |
| 353 lastRedirectEndTime, finishTime, transferSize, encodedBodyLength, | 355 lastRedirectEndTime, finishTime, transferSize, encodedBodyLength, |
| 354 decodedBodyLength, didReuseConnection); | 356 decodedBodyLength, didReuseConnection); |
| 355 notifyObserversOfEntry(*m_navigationTiming); | 357 notifyObserversOfEntry(*m_navigationTiming); |
| 356 } | 358 } |
| 357 | 359 |
| 360 void PerformanceBase::addPaintTiming(PerformancePaintTiming::PaintType type, | |
| 361 double startTime) { | |
| 362 if (!RuntimeEnabledFeatures::performancePaintTimingEnabled()) | |
| 363 return; | |
| 364 PerformanceEntry* entry = new PerformancePaintTiming( | |
| 365 type, monotonicTimeToDOMHighResTimeStamp(startTime)); | |
| 366 notifyObserversOfEntry(*entry); | |
| 367 } | |
| 368 | |
| 358 void PerformanceBase::addResourceTimingBuffer(PerformanceEntry& entry) { | 369 void PerformanceBase::addResourceTimingBuffer(PerformanceEntry& entry) { |
| 359 m_resourceTimingBuffer.append(&entry); | 370 m_resourceTimingBuffer.append(&entry); |
| 360 | 371 |
| 361 if (isResourceTimingBufferFull()) { | 372 if (isResourceTimingBufferFull()) { |
| 362 dispatchEvent(Event::create(EventTypeNames::resourcetimingbufferfull)); | 373 dispatchEvent(Event::create(EventTypeNames::resourcetimingbufferfull)); |
| 363 dispatchEvent( | 374 dispatchEvent( |
| 364 Event::create(EventTypeNames::webkitresourcetimingbufferfull)); | 375 Event::create(EventTypeNames::webkitresourcetimingbufferfull)); |
| 365 } | 376 } |
| 366 } | 377 } |
| 367 | 378 |
| (...skipping 164 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 532 visitor->trace(m_resourceTimingBuffer); | 543 visitor->trace(m_resourceTimingBuffer); |
| 533 visitor->trace(m_navigationTiming); | 544 visitor->trace(m_navigationTiming); |
| 534 visitor->trace(m_userTiming); | 545 visitor->trace(m_userTiming); |
| 535 visitor->trace(m_observers); | 546 visitor->trace(m_observers); |
| 536 visitor->trace(m_activeObservers); | 547 visitor->trace(m_activeObservers); |
| 537 visitor->trace(m_suspendedObservers); | 548 visitor->trace(m_suspendedObservers); |
| 538 EventTargetWithInlineData::trace(visitor); | 549 EventTargetWithInlineData::trace(visitor); |
| 539 } | 550 } |
| 540 | 551 |
| 541 } // namespace blink | 552 } // namespace blink |
| OLD | NEW |