2017-01-24 15:09:23 +00:00
// Package tracing provides the Chrome Debugging Protocol
// commands, types, and events for the Chrome Tracing domain.
//
// Generated by the chromedp-gen command.
package tracing
// AUTOGENERATED. DO NOT EDIT.
import (
"context"
2017-01-26 07:28:34 +00:00
cdp "github.com/knq/chromedp/cdp"
2017-01-24 15:09:23 +00:00
"github.com/mailru/easyjson"
)
// StartParams start trace events collection.
type StartParams struct {
BufferUsageReportingInterval float64 ` json:"bufferUsageReportingInterval,omitempty" ` // If set, the agent will issue bufferUsage events at this interval, specified in milliseconds
TransferMode TransferMode ` json:"transferMode,omitempty" ` // Whether to report trace events as series of dataCollected events or to save trace to a stream (defaults to ReportEvents).
TraceConfig * TraceConfig ` json:"traceConfig,omitempty" `
}
// Start start trace events collection.
//
// parameters:
func Start ( ) * StartParams {
return & StartParams { }
}
// WithBufferUsageReportingInterval if set, the agent will issue bufferUsage
// events at this interval, specified in milliseconds.
func ( p StartParams ) WithBufferUsageReportingInterval ( bufferUsageReportingInterval float64 ) * StartParams {
p . BufferUsageReportingInterval = bufferUsageReportingInterval
return & p
}
// WithTransferMode whether to report trace events as series of dataCollected
// events or to save trace to a stream (defaults to ReportEvents).
func ( p StartParams ) WithTransferMode ( transferMode TransferMode ) * StartParams {
p . TransferMode = transferMode
return & p
}
2017-01-26 07:28:34 +00:00
// WithTraceConfig [no description].
2017-01-24 15:09:23 +00:00
func ( p StartParams ) WithTraceConfig ( traceConfig * TraceConfig ) * StartParams {
p . TraceConfig = traceConfig
return & p
}
// Do executes Tracing.start.
2017-01-26 07:28:34 +00:00
func ( p * StartParams ) Do ( ctxt context . Context , h cdp . FrameHandler ) ( err error ) {
2017-01-24 15:09:23 +00:00
if ctxt == nil {
ctxt = context . Background ( )
}
// marshal
buf , err := easyjson . Marshal ( p )
if err != nil {
return err
}
// execute
2017-01-26 07:28:34 +00:00
ch := h . Execute ( ctxt , cdp . CommandTracingStart , easyjson . RawMessage ( buf ) )
2017-01-24 15:09:23 +00:00
// read response
select {
case res := <- ch :
if res == nil {
2017-01-26 07:28:34 +00:00
return cdp . ErrChannelClosed
2017-01-24 15:09:23 +00:00
}
switch v := res . ( type ) {
case easyjson . RawMessage :
return nil
case error :
return v
}
case <- ctxt . Done ( ) :
2017-01-26 07:28:34 +00:00
return cdp . ErrContextDone
2017-01-24 15:09:23 +00:00
}
2017-01-26 07:28:34 +00:00
return cdp . ErrUnknownResult
2017-01-24 15:09:23 +00:00
}
// EndParams stop trace events collection.
type EndParams struct { }
// End stop trace events collection.
func End ( ) * EndParams {
return & EndParams { }
}
// Do executes Tracing.end.
2017-01-26 07:28:34 +00:00
func ( p * EndParams ) Do ( ctxt context . Context , h cdp . FrameHandler ) ( err error ) {
2017-01-24 15:09:23 +00:00
if ctxt == nil {
ctxt = context . Background ( )
}
// execute
2017-01-26 07:28:34 +00:00
ch := h . Execute ( ctxt , cdp . CommandTracingEnd , cdp . Empty )
2017-01-24 15:09:23 +00:00
// read response
select {
case res := <- ch :
if res == nil {
2017-01-26 07:28:34 +00:00
return cdp . ErrChannelClosed
2017-01-24 15:09:23 +00:00
}
switch v := res . ( type ) {
case easyjson . RawMessage :
return nil
case error :
return v
}
case <- ctxt . Done ( ) :
2017-01-26 07:28:34 +00:00
return cdp . ErrContextDone
2017-01-24 15:09:23 +00:00
}
2017-01-26 07:28:34 +00:00
return cdp . ErrUnknownResult
2017-01-24 15:09:23 +00:00
}
// GetCategoriesParams gets supported tracing categories.
type GetCategoriesParams struct { }
// GetCategories gets supported tracing categories.
func GetCategories ( ) * GetCategoriesParams {
return & GetCategoriesParams { }
}
// GetCategoriesReturns return values.
type GetCategoriesReturns struct {
Categories [ ] string ` json:"categories,omitempty" ` // A list of supported tracing categories.
}
// Do executes Tracing.getCategories.
//
// returns:
// categories - A list of supported tracing categories.
2017-01-26 07:28:34 +00:00
func ( p * GetCategoriesParams ) Do ( ctxt context . Context , h cdp . FrameHandler ) ( categories [ ] string , err error ) {
2017-01-24 15:09:23 +00:00
if ctxt == nil {
ctxt = context . Background ( )
}
// execute
2017-01-26 07:28:34 +00:00
ch := h . Execute ( ctxt , cdp . CommandTracingGetCategories , cdp . Empty )
2017-01-24 15:09:23 +00:00
// read response
select {
case res := <- ch :
if res == nil {
2017-01-26 07:28:34 +00:00
return nil , cdp . ErrChannelClosed
2017-01-24 15:09:23 +00:00
}
switch v := res . ( type ) {
case easyjson . RawMessage :
// unmarshal
var r GetCategoriesReturns
err = easyjson . Unmarshal ( v , & r )
if err != nil {
2017-01-26 07:28:34 +00:00
return nil , cdp . ErrInvalidResult
2017-01-24 15:09:23 +00:00
}
return r . Categories , nil
case error :
return nil , v
}
case <- ctxt . Done ( ) :
2017-01-26 07:28:34 +00:00
return nil , cdp . ErrContextDone
2017-01-24 15:09:23 +00:00
}
2017-01-26 07:28:34 +00:00
return nil , cdp . ErrUnknownResult
2017-01-24 15:09:23 +00:00
}
// RequestMemoryDumpParams request a global memory dump.
type RequestMemoryDumpParams struct { }
// RequestMemoryDump request a global memory dump.
func RequestMemoryDump ( ) * RequestMemoryDumpParams {
return & RequestMemoryDumpParams { }
}
// RequestMemoryDumpReturns return values.
type RequestMemoryDumpReturns struct {
DumpGUID string ` json:"dumpGuid,omitempty" ` // GUID of the resulting global memory dump.
Success bool ` json:"success,omitempty" ` // True iff the global memory dump succeeded.
}
// Do executes Tracing.requestMemoryDump.
//
// returns:
2017-01-26 07:28:34 +00:00
// dumpGUID - GUID of the resulting global memory dump.
2017-01-24 15:09:23 +00:00
// success - True iff the global memory dump succeeded.
2017-01-26 07:28:34 +00:00
func ( p * RequestMemoryDumpParams ) Do ( ctxt context . Context , h cdp . FrameHandler ) ( dumpGUID string , success bool , err error ) {
2017-01-24 15:09:23 +00:00
if ctxt == nil {
ctxt = context . Background ( )
}
// execute
2017-01-26 07:28:34 +00:00
ch := h . Execute ( ctxt , cdp . CommandTracingRequestMemoryDump , cdp . Empty )
2017-01-24 15:09:23 +00:00
// read response
select {
case res := <- ch :
if res == nil {
2017-01-26 07:28:34 +00:00
return "" , false , cdp . ErrChannelClosed
2017-01-24 15:09:23 +00:00
}
switch v := res . ( type ) {
case easyjson . RawMessage :
// unmarshal
var r RequestMemoryDumpReturns
err = easyjson . Unmarshal ( v , & r )
if err != nil {
2017-01-26 07:28:34 +00:00
return "" , false , cdp . ErrInvalidResult
2017-01-24 15:09:23 +00:00
}
return r . DumpGUID , r . Success , nil
case error :
return "" , false , v
}
case <- ctxt . Done ( ) :
2017-01-26 07:28:34 +00:00
return "" , false , cdp . ErrContextDone
2017-01-24 15:09:23 +00:00
}
2017-01-26 07:28:34 +00:00
return "" , false , cdp . ErrUnknownResult
2017-01-24 15:09:23 +00:00
}
// RecordClockSyncMarkerParams record a clock sync marker in the trace.
type RecordClockSyncMarkerParams struct {
SyncID string ` json:"syncId" ` // The ID of this clock sync marker
}
// RecordClockSyncMarker record a clock sync marker in the trace.
//
// parameters:
2017-01-26 07:28:34 +00:00
// syncID - The ID of this clock sync marker
func RecordClockSyncMarker ( syncID string ) * RecordClockSyncMarkerParams {
2017-01-24 15:09:23 +00:00
return & RecordClockSyncMarkerParams {
2017-01-26 07:28:34 +00:00
SyncID : syncID ,
2017-01-24 15:09:23 +00:00
}
}
// Do executes Tracing.recordClockSyncMarker.
2017-01-26 07:28:34 +00:00
func ( p * RecordClockSyncMarkerParams ) Do ( ctxt context . Context , h cdp . FrameHandler ) ( err error ) {
2017-01-24 15:09:23 +00:00
if ctxt == nil {
ctxt = context . Background ( )
}
// marshal
buf , err := easyjson . Marshal ( p )
if err != nil {
return err
}
// execute
2017-01-26 07:28:34 +00:00
ch := h . Execute ( ctxt , cdp . CommandTracingRecordClockSyncMarker , easyjson . RawMessage ( buf ) )
2017-01-24 15:09:23 +00:00
// read response
select {
case res := <- ch :
if res == nil {
2017-01-26 07:28:34 +00:00
return cdp . ErrChannelClosed
2017-01-24 15:09:23 +00:00
}
switch v := res . ( type ) {
case easyjson . RawMessage :
return nil
case error :
return v
}
case <- ctxt . Done ( ) :
2017-01-26 07:28:34 +00:00
return cdp . ErrContextDone
2017-01-24 15:09:23 +00:00
}
2017-01-26 07:28:34 +00:00
return cdp . ErrUnknownResult
2017-01-24 15:09:23 +00:00
}