OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 "platform/network/ResourceTimingInfo.h" | 5 #include "platform/network/ResourceTimingInfo.h" |
6 | 6 |
7 #include "platform/CrossThreadCopier.h" | 7 #include "platform/CrossThreadCopier.h" |
8 #include "wtf/PtrUtil.h" | |
9 #include <memory> | |
10 | 8 |
11 namespace blink { | 9 namespace blink { |
12 | 10 |
13 std::unique_ptr<ResourceTimingInfo> ResourceTimingInfo::adopt(std::unique_ptr<Cr
ossThreadResourceTimingInfoData> data) | 11 PassOwnPtr<ResourceTimingInfo> ResourceTimingInfo::adopt(PassOwnPtr<CrossThreadR
esourceTimingInfoData> data) |
14 { | 12 { |
15 std::unique_ptr<ResourceTimingInfo> info = ResourceTimingInfo::create(Atomic
String(data->m_type), data->m_initialTime, data->m_isMainResource); | 13 OwnPtr<ResourceTimingInfo> info = ResourceTimingInfo::create(AtomicString(da
ta->m_type), data->m_initialTime, data->m_isMainResource); |
16 info->m_originalTimingAllowOrigin = AtomicString(data->m_originalTimingAllow
Origin); | 14 info->m_originalTimingAllowOrigin = AtomicString(data->m_originalTimingAllow
Origin); |
17 info->m_loadFinishTime = data->m_loadFinishTime; | 15 info->m_loadFinishTime = data->m_loadFinishTime; |
18 info->m_initialRequest = ResourceRequest(data->m_initialRequest.get()); | 16 info->m_initialRequest = ResourceRequest(data->m_initialRequest.get()); |
19 info->m_finalResponse = ResourceResponse(data->m_finalResponse.get()); | 17 info->m_finalResponse = ResourceResponse(data->m_finalResponse.get()); |
20 for (auto& responseData : data->m_redirectChain) | 18 for (auto& responseData : data->m_redirectChain) |
21 info->m_redirectChain.append(ResourceResponse(responseData.get())); | 19 info->m_redirectChain.append(ResourceResponse(responseData.get())); |
22 return info; | 20 return info; |
23 } | 21 } |
24 | 22 |
25 std::unique_ptr<CrossThreadResourceTimingInfoData> ResourceTimingInfo::copyData(
) const | 23 PassOwnPtr<CrossThreadResourceTimingInfoData> ResourceTimingInfo::copyData() con
st |
26 { | 24 { |
27 std::unique_ptr<CrossThreadResourceTimingInfoData> data = wrapUnique(new Cro
ssThreadResourceTimingInfoData); | 25 OwnPtr<CrossThreadResourceTimingInfoData> data = adoptPtr(new CrossThreadRes
ourceTimingInfoData); |
28 data->m_type = m_type.getString().isolatedCopy(); | 26 data->m_type = m_type.getString().isolatedCopy(); |
29 data->m_originalTimingAllowOrigin = m_originalTimingAllowOrigin.getString().
isolatedCopy(); | 27 data->m_originalTimingAllowOrigin = m_originalTimingAllowOrigin.getString().
isolatedCopy(); |
30 data->m_initialTime = m_initialTime; | 28 data->m_initialTime = m_initialTime; |
31 data->m_loadFinishTime = m_loadFinishTime; | 29 data->m_loadFinishTime = m_loadFinishTime; |
32 data->m_initialRequest = m_initialRequest.copyData(); | 30 data->m_initialRequest = m_initialRequest.copyData(); |
33 data->m_finalResponse = m_finalResponse.copyData(); | 31 data->m_finalResponse = m_finalResponse.copyData(); |
34 for (const auto& response : m_redirectChain) | 32 for (const auto& response : m_redirectChain) |
35 data->m_redirectChain.append(response.copyData()); | 33 data->m_redirectChain.append(response.copyData()); |
36 data->m_isMainResource = m_isMainResource; | 34 data->m_isMainResource = m_isMainResource; |
37 return data; | 35 return data; |
38 } | 36 } |
39 | 37 |
40 } // namespace blink | 38 } // namespace blink |
OLD | NEW |