123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145 |
- // Package io provides the Chrome DevTools Protocol
- // commands, types, and events for the IO domain.
- //
- // Input/Output operations for streams produced by DevTools.
- //
- // Generated by the cdproto-gen command.
- package io
- // Code generated by cdproto-gen. DO NOT EDIT.
- import (
- "context"
- "github.com/chromedp/cdproto/cdp"
- "github.com/chromedp/cdproto/runtime"
- )
- // CloseParams close the stream, discard any temporary backing storage.
- type CloseParams struct {
- Handle StreamHandle `json:"handle"` // Handle of the stream to close.
- }
- // Close close the stream, discard any temporary backing storage.
- //
- // See: https://chromedevtools.github.io/devtools-protocol/tot/IO#method-close
- //
- // parameters:
- //
- // handle - Handle of the stream to close.
- func Close(handle StreamHandle) *CloseParams {
- return &CloseParams{
- Handle: handle,
- }
- }
- // Do executes IO.close against the provided context.
- func (p *CloseParams) Do(ctx context.Context) (err error) {
- return cdp.Execute(ctx, CommandClose, p, nil)
- }
- // ReadParams read a chunk of the stream.
- type ReadParams struct {
- Handle StreamHandle `json:"handle"` // Handle of the stream to read.
- Offset int64 `json:"offset,omitempty"` // Seek to the specified offset before reading (if not specified, proceed with offset following the last read). Some types of streams may only support sequential reads.
- Size int64 `json:"size,omitempty"` // Maximum number of bytes to read (left upon the agent discretion if not specified).
- }
- // Read read a chunk of the stream.
- //
- // See: https://chromedevtools.github.io/devtools-protocol/tot/IO#method-read
- //
- // parameters:
- //
- // handle - Handle of the stream to read.
- func Read(handle StreamHandle) *ReadParams {
- return &ReadParams{
- Handle: handle,
- }
- }
- // WithOffset seek to the specified offset before reading (if not specified,
- // proceed with offset following the last read). Some types of streams may only
- // support sequential reads.
- func (p ReadParams) WithOffset(offset int64) *ReadParams {
- p.Offset = offset
- return &p
- }
- // WithSize maximum number of bytes to read (left upon the agent discretion
- // if not specified).
- func (p ReadParams) WithSize(size int64) *ReadParams {
- p.Size = size
- return &p
- }
- // ReadReturns return values.
- type ReadReturns struct {
- Base64encoded bool `json:"base64Encoded,omitempty"` // Set if the data is base64-encoded
- Data string `json:"data,omitempty"` // Data that were read.
- EOF bool `json:"eof,omitempty"` // Set if the end-of-file condition occurred while reading.
- }
- // Do executes IO.read against the provided context.
- //
- // returns:
- //
- // data - Data that were read.
- // eof - Set if the end-of-file condition occurred while reading.
- func (p *ReadParams) Do(ctx context.Context) (data string, eof bool, err error) {
- // execute
- var res ReadReturns
- err = cdp.Execute(ctx, CommandRead, p, &res)
- if err != nil {
- return "", false, err
- }
- return res.Data, res.EOF, nil
- }
- // ResolveBlobParams return UUID of Blob object specified by a remote object
- // id.
- type ResolveBlobParams struct {
- ObjectID runtime.RemoteObjectID `json:"objectId"` // Object id of a Blob object wrapper.
- }
- // ResolveBlob return UUID of Blob object specified by a remote object id.
- //
- // See: https://chromedevtools.github.io/devtools-protocol/tot/IO#method-resolveBlob
- //
- // parameters:
- //
- // objectID - Object id of a Blob object wrapper.
- func ResolveBlob(objectID runtime.RemoteObjectID) *ResolveBlobParams {
- return &ResolveBlobParams{
- ObjectID: objectID,
- }
- }
- // ResolveBlobReturns return values.
- type ResolveBlobReturns struct {
- UUID string `json:"uuid,omitempty"` // UUID of the specified Blob.
- }
- // Do executes IO.resolveBlob against the provided context.
- //
- // returns:
- //
- // uuid - UUID of the specified Blob.
- func (p *ResolveBlobParams) Do(ctx context.Context) (uuid string, err error) {
- // execute
- var res ResolveBlobReturns
- err = cdp.Execute(ctx, CommandResolveBlob, p, &res)
- if err != nil {
- return "", err
- }
- return res.UUID, nil
- }
- // Command names.
- const (
- CommandClose = "IO.close"
- CommandRead = "IO.read"
- CommandResolveBlob = "IO.resolveBlob"
- )
|