1. 21 Nov, 2012 1 commit
    • simonjam@chromium.org's avatar
      [Resource Timing] Populate PerformanceResourceTiming structs with timing data · 11d3e453
      simonjam@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=102862
      
      Reviewed by Tony Gentilcore.
      
      This allows CachedResourceLoader to pass in all of the necessary values and populates
      them in the PerformanceResourceTiming struct. A follow up patch will actually call
      addResourceTiming() as necessary.
      
      Tests: http/tests/w3c/webperf/submission/resource-timing
      
      * page/Performance.cpp:
      (WebCore::Performance::addResourceTiming): Accept all necessary timing data.
      * page/Performance.h:
      (WebCore):
      (Performance):
      * page/PerformanceEntry.cpp:
      (WebCore::PerformanceEntry::PerformanceEntry):
      * page/PerformanceEntry.h:
      (PerformanceEntry):
      * page/PerformanceResourceTiming.cpp:
      (WebCore::monotonicTimeToDocumentMilliseconds):
      (WebCore):
      (WebCore::PerformanceResourceTiming::PerformanceResourceTiming):
      (WebCore::PerformanceResourceTiming::initiatorType): Return the spec'd values.
      (WebCore::PerformanceResourceTiming::fetchStart):
      (WebCore::PerformanceResourceTiming::domainLookupStart):
      (WebCore::PerformanceResourceTiming::domainLookupEnd):
      (WebCore::PerformanceResourceTiming::connectStart):
      (WebCore::PerformanceResourceTiming::connectEnd):
      (WebCore::PerformanceResourceTiming::secureConnectionStart):
      (WebCore::PerformanceResourceTiming::requestStart):
      (WebCore::PerformanceResourceTiming::responseStart):
      (WebCore::PerformanceResourceTiming::responseEnd):
      (WebCore::PerformanceResourceTiming::resourceTimeToDocumentMilliseconds):
      * page/PerformanceResourceTiming.h:
      (WebCore::PerformanceResourceTiming::create):
      (PerformanceResourceTiming):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135458 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      11d3e453
  2. 21 Jun, 2012 1 commit
    • simonjam@chromium.org's avatar
      [Resource Timing] Implement Resource Timing interface · 0c0aa712
      simonjam@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=61152
      
      This patch implements the Resource Timing interface. It doesn't do anything
      useful, because nothing populates the timeline yet. There are also some gaps
      in the implementation, which have been filed as bugs.
      
      http://dvcs.w3.org/hg/webperf/raw-file/tip/specs/ResourceTiming/Overview.html
      
      Reviewed by Tony Gentilcore.
      
      No new tests. Feature is disabled on all platforms.
      
      * CMakeLists.txt:
      * DerivedSources.pri:
      * GNUmakefile.list.am:
      * Target.pri:
      * UseV8.cmake:
      * WebCore.gypi:
      * WebCore.vcproj/WebCore.vcproj:
      * WebCore.xcodeproj/project.pbxproj:
      * bindings/v8/custom/V8PerformanceEntryCustom.cpp:
      (WebCore):
      (WebCore::toV8): Support PerformanceEntry polymorphism.
      * dom/EventNames.h:
      (WebCore):
      * dom/EventTargetFactory.in:
      * page/Performance.cpp:
      (WebCore::Performance::~Performance):
      (WebCore):
      (WebCore::Performance::interfaceName): Reqired for EventTarget.
      (WebCore::Performance::scriptExecutionContext): Ditto.
      (WebCore::Performance::webkitGetEntries): Return "resource" entries.
      (WebCore::Performance::webkitGetEntriesByType): Ditto.
      (WebCore::Performance::webkitGetEntriesByName): Ditto.
      (WebCore::Performance::webkitClearResourceTimings): New.
      (WebCore::Performance::webkitSetResourceTimingBufferSize): New. Unimplemented.
      (WebCore::Performance::addResourceTiming): This is how resources in WebCore will report to the timeline.
      (WebCore::Performance::eventTargetData): Required for EventTarget.
      (WebCore::Performance::ensureEventTargetData): Ditto.
      * page/Performance.h:
      (Performance):
      (WebCore::Performance::refEventTarget):
      (WebCore::Performance::derefEventTarget):
      * page/Performance.idl:
      * page/PerformanceEntry.cpp:
      (WebCore::PerformanceEntry::~PerformanceEntry):
      (WebCore):
      * page/PerformanceEntry.h:
      (PerformanceEntry):
      (WebCore::PerformanceEntry::isResource):
      * page/PerformanceEntry.idl:
      * page/PerformanceResourceTiming.cpp: Added.
      (WebCore):
      (WebCore::PerformanceResourceTiming::PerformanceResourceTiming):
      (WebCore::PerformanceResourceTiming::initiatorType):
      (WebCore::PerformanceResourceTiming::redirectStart):
      (WebCore::PerformanceResourceTiming::redirectEnd):
      (WebCore::PerformanceResourceTiming::fetchStart):
      (WebCore::PerformanceResourceTiming::domainLookupStart):
      (WebCore::PerformanceResourceTiming::domainLookupEnd):
      (WebCore::PerformanceResourceTiming::connectStart):
      (WebCore::PerformanceResourceTiming::connectEnd):
      (WebCore::PerformanceResourceTiming::secureConnectionStart):
      (WebCore::PerformanceResourceTiming::requestStart):
      (WebCore::PerformanceResourceTiming::responseStart):
      (WebCore::PerformanceResourceTiming::responseEnd):
      (WebCore::PerformanceResourceTiming::monotonicTimeToDocumentMilliseconds):
      (WebCore::PerformanceResourceTiming::resourceTimeToMilliseconds):
      * page/PerformanceResourceTiming.h: Added.
      (WebCore):
      (PerformanceResourceTiming):
      (WebCore::PerformanceResourceTiming::create):
      (WebCore::PerformanceResourceTiming::isResource):
      * page/PerformanceResourceTiming.idl: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120962 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0c0aa712