diff options
author | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2018-08-24 12:15:48 +0200 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2018-08-28 13:30:04 +0000 |
commit | b014812705fc80bff0a5c120dfcef88f349816dc (patch) | |
tree | 25a2e2d9fa285f1add86aa333389a839f81a39ae /chromium/content/browser/devtools/devtools_stream_file.h | |
parent | 9f4560b1027ae06fdb497023cdcaf91b8511fa74 (diff) | |
download | qtwebengine-chromium-b014812705fc80bff0a5c120dfcef88f349816dc.tar.gz |
BASELINE: Update Chromium to 68.0.3440.125
Change-Id: I23f19369e01f688e496f5bf179abb521ad73874f
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'chromium/content/browser/devtools/devtools_stream_file.h')
-rw-r--r-- | chromium/content/browser/devtools/devtools_stream_file.h | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/chromium/content/browser/devtools/devtools_stream_file.h b/chromium/content/browser/devtools/devtools_stream_file.h new file mode 100644 index 00000000000..1c63e39f5d0 --- /dev/null +++ b/chromium/content/browser/devtools/devtools_stream_file.h @@ -0,0 +1,44 @@ +// Copyright 2018 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#ifndef CONTENT_BROWSER_DEVTOOLS_DEVTOOLS_STREAM_FILE_H_ +#define CONTENT_BROWSER_DEVTOOLS_DEVTOOLS_STREAM_FILE_H_ + +#include "base/files/file.h" +#include "base/memory/scoped_refptr.h" +#include "content/browser/devtools/devtools_io_context.h" + +#include <string> + +namespace content { + +class DevToolsStreamFile : public DevToolsIOContext::Stream { + public: + static scoped_refptr<DevToolsStreamFile> Create(DevToolsIOContext* context, + bool binary); + const std::string& handle() const { return handle_; } + void Append(std::unique_ptr<std::string> data); + + private: + DevToolsStreamFile(DevToolsIOContext* context, bool binary); + ~DevToolsStreamFile() override; + + void Read(off_t position, size_t max_size, ReadCallback callback) override; + + void ReadOnFileSequence(off_t pos, size_t max_size, ReadCallback callback); + void AppendOnFileSequence(std::unique_ptr<std::string> data); + bool InitOnFileSequenceIfNeeded(); + + const std::string handle_; + const bool binary_; + + base::File file_; + scoped_refptr<base::SequencedTaskRunner> task_runner_; + bool had_errors_; + off_t last_read_pos_; +}; + +} // namespace content + +#endif // CONTENT_BROWSER_DEVTOOLS_DEVTOOLS_STREAM_FILE_H_ |