OLD | NEW |
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 "modules/fetch/FormDataBytesConsumer.h" | 5 #include "modules/fetch/FormDataBytesConsumer.h" |
6 | 6 |
7 #include "core/dom/DOMArrayBuffer.h" | 7 #include "core/dom/DOMArrayBuffer.h" |
8 #include "core/dom/DOMArrayBufferView.h" | 8 #include "core/dom/DOMArrayBufferView.h" |
9 #include "modules/fetch/BlobBytesConsumer.h" | 9 #include "modules/fetch/BlobBytesConsumer.h" |
10 #include "platform/blob/BlobData.h" | 10 #include "platform/blob/BlobData.h" |
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
68 blob_data->AppendBytes(data.data(), data.size()); | 68 blob_data->AppendBytes(data.data(), data.size()); |
69 auto length = blob_data->length(); | 69 auto length = blob_data->length(); |
70 state_ = PublicState::kClosed; | 70 state_ = PublicState::kClosed; |
71 return BlobDataHandle::Create(std::move(blob_data), length); | 71 return BlobDataHandle::Create(std::move(blob_data), length); |
72 } | 72 } |
73 PassRefPtr<EncodedFormData> DrainAsFormData() override { | 73 PassRefPtr<EncodedFormData> DrainAsFormData() override { |
74 if (!form_data_) | 74 if (!form_data_) |
75 return nullptr; | 75 return nullptr; |
76 | 76 |
77 state_ = PublicState::kClosed; | 77 state_ = PublicState::kClosed; |
78 return form_data_.Release(); | 78 return std::move(form_data_); |
79 } | 79 } |
80 void SetClient(BytesConsumer::Client* client) override { DCHECK(client); } | 80 void SetClient(BytesConsumer::Client* client) override { DCHECK(client); } |
81 void ClearClient() override {} | 81 void ClearClient() override {} |
82 void Cancel() override { | 82 void Cancel() override { |
83 state_ = PublicState::kClosed; | 83 state_ = PublicState::kClosed; |
84 form_data_ = nullptr; | 84 form_data_ = nullptr; |
85 flatten_form_data_.clear(); | 85 flatten_form_data_.clear(); |
86 flatten_form_data_offset_ = 0; | 86 flatten_form_data_offset_ = 0; |
87 } | 87 } |
88 PublicState GetPublicState() const override { return state_; } | 88 PublicState GetPublicState() const override { return state_; } |
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
176 RefPtr<BlobDataHandle> handle = | 176 RefPtr<BlobDataHandle> handle = |
177 blob_bytes_consumer_->DrainAsBlobDataHandle(policy); | 177 blob_bytes_consumer_->DrainAsBlobDataHandle(policy); |
178 if (handle) | 178 if (handle) |
179 form_data_ = nullptr; | 179 form_data_ = nullptr; |
180 return handle; | 180 return handle; |
181 } | 181 } |
182 PassRefPtr<EncodedFormData> DrainAsFormData() override { | 182 PassRefPtr<EncodedFormData> DrainAsFormData() override { |
183 if (!form_data_) | 183 if (!form_data_) |
184 return nullptr; | 184 return nullptr; |
185 blob_bytes_consumer_->Cancel(); | 185 blob_bytes_consumer_->Cancel(); |
186 return form_data_.Release(); | 186 return std::move(form_data_); |
187 } | 187 } |
188 void SetClient(BytesConsumer::Client* client) override { | 188 void SetClient(BytesConsumer::Client* client) override { |
189 blob_bytes_consumer_->SetClient(client); | 189 blob_bytes_consumer_->SetClient(client); |
190 } | 190 } |
191 void ClearClient() override { blob_bytes_consumer_->ClearClient(); } | 191 void ClearClient() override { blob_bytes_consumer_->ClearClient(); } |
192 void Cancel() override { | 192 void Cancel() override { |
193 form_data_ = nullptr; | 193 form_data_ = nullptr; |
194 blob_bytes_consumer_->Cancel(); | 194 blob_bytes_consumer_->Cancel(); |
195 } | 195 } |
196 PublicState GetPublicState() const override { | 196 PublicState GetPublicState() const override { |
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
236 BytesConsumer* consumer) | 236 BytesConsumer* consumer) |
237 : impl_(IsSimple(form_data.Get()) | 237 : impl_(IsSimple(form_data.Get()) |
238 ? static_cast<BytesConsumer*>( | 238 ? static_cast<BytesConsumer*>( |
239 new SimpleFormDataBytesConsumer(std::move(form_data))) | 239 new SimpleFormDataBytesConsumer(std::move(form_data))) |
240 : static_cast<BytesConsumer*>( | 240 : static_cast<BytesConsumer*>( |
241 new ComplexFormDataBytesConsumer(execution_context, | 241 new ComplexFormDataBytesConsumer(execution_context, |
242 std::move(form_data), | 242 std::move(form_data), |
243 consumer))) {} | 243 consumer))) {} |
244 | 244 |
245 } // namespace blink | 245 } // namespace blink |
OLD | NEW |