Index: Source/platform/network/ResourceTimingInfo.h |
diff --git a/Source/core/timing/ResourceTimingInfo.h b/Source/platform/network/ResourceTimingInfo.h |
similarity index 81% |
rename from Source/core/timing/ResourceTimingInfo.h |
rename to Source/platform/network/ResourceTimingInfo.h |
index dd18ac675f9db4cae4c820192ff2f2f823e0599c..73274abae395f7913b7b72b852ca2a763bceb8f7 100644 |
--- a/Source/core/timing/ResourceTimingInfo.h |
+++ b/Source/platform/network/ResourceTimingInfo.h |
@@ -37,12 +37,18 @@ |
namespace blink { |
-class ResourceTimingInfo { |
+struct CrossThreadResourceTimingInfoData; |
+ |
+class PLATFORM_EXPORT ResourceTimingInfo { |
public: |
static PassOwnPtr<ResourceTimingInfo> create(const AtomicString& type, const double time, bool isMainResource) |
{ |
return adoptPtr(new ResourceTimingInfo(type, time, isMainResource)); |
} |
+ static PassOwnPtr<ResourceTimingInfo> adopt(PassOwnPtr<CrossThreadResourceTimingInfoData>); |
+ |
+ // Gets a copy of the data suitable for passing to another thread. |
+ PassOwnPtr<CrossThreadResourceTimingInfoData> copyData() const; |
double initialTime() const { return m_initialTime; } |
bool isMainResource() const { return m_isMainResource; } |
@@ -90,6 +96,21 @@ private: |
bool m_isMainResource; |
}; |
+struct CrossThreadResourceTimingInfoData { |
+ WTF_MAKE_NONCOPYABLE(CrossThreadResourceTimingInfoData); WTF_MAKE_FAST_ALLOCATED(CrossThreadResourceTimingInfoData); |
+public: |
+ CrossThreadResourceTimingInfoData() { } |
+ |
+ String m_type; |
+ String m_originalTimingAllowOrigin; |
+ double m_initialTime; |
+ double m_loadFinishTime; |
+ OwnPtr<CrossThreadResourceRequestData> m_initialRequest; |
+ OwnPtr<CrossThreadResourceResponseData> m_finalResponse; |
+ Vector<OwnPtr<CrossThreadResourceResponseData>> m_redirectChain; |
+ bool m_isMainResource; |
+}; |
+ |
} // namespace blink |
#endif |