1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef MOJO_SHELL_DATA_PIPE_PEEK_H_
6 #define MOJO_SHELL_DATA_PIPE_PEEK_H_
10 #include "mojo/public/cpp/system/core.h"
15 // The Peek functions are only intended to be used by the
16 // DyanmicApplicationLoader class for discovering the type of a
17 // URL response. They are a stopgap to be replaced by real support
18 // in the DataPipe classes.
20 // Return true and the first newline terminated line from source. Return false
21 // if more than max_line_length bytes are scanned without seeing a newline, or
22 // if the timeout is exceeded.
23 bool BlockingPeekLine(DataPipeConsumerHandle source
,
25 size_t max_line_length
,
26 MojoDeadline timeout
);
28 // Return true and the first bytes_length bytes from source. Return false
29 // if the timeout is exceeded.
30 bool BlockingPeekNBytes(DataPipeConsumerHandle source
,
33 MojoDeadline timeout
);
38 #endif // MOJO_SHELL_DATA_PIPE_PEEK_H_