chromedp/cdp/profiler/profiler.go
Kenneth Shaw b5032069e3 Fixing race issues
- Refactored chromedp-gen and cdp code so that Execute no longer returns
  a channel
- Fixing potential race problems in handler
- Eliminated some dead code
- Updated examples to include new logging parameters
2017-02-14 17:15:53 +07:00

108 lines
2.8 KiB
Go

// Package profiler provides the Chrome Debugging Protocol
// commands, types, and events for the Profiler domain.
//
// Generated by the chromedp-gen command.
package profiler
// AUTOGENERATED. DO NOT EDIT.
import (
"context"
cdp "github.com/knq/chromedp/cdp"
)
// EnableParams [no description].
type EnableParams struct{}
// Enable [no description].
func Enable() *EnableParams {
return &EnableParams{}
}
// Do executes Profiler.enable against the provided context and
// target handler.
func (p *EnableParams) Do(ctxt context.Context, h cdp.Handler) (err error) {
return h.Execute(ctxt, cdp.CommandProfilerEnable, nil, nil)
}
// DisableParams [no description].
type DisableParams struct{}
// Disable [no description].
func Disable() *DisableParams {
return &DisableParams{}
}
// Do executes Profiler.disable against the provided context and
// target handler.
func (p *DisableParams) Do(ctxt context.Context, h cdp.Handler) (err error) {
return h.Execute(ctxt, cdp.CommandProfilerDisable, nil, nil)
}
// SetSamplingIntervalParams changes CPU profiler sampling interval. Must be
// called before CPU profiles recording started.
type SetSamplingIntervalParams struct {
Interval int64 `json:"interval"` // New sampling interval in microseconds.
}
// SetSamplingInterval changes CPU profiler sampling interval. Must be called
// before CPU profiles recording started.
//
// parameters:
// interval - New sampling interval in microseconds.
func SetSamplingInterval(interval int64) *SetSamplingIntervalParams {
return &SetSamplingIntervalParams{
Interval: interval,
}
}
// Do executes Profiler.setSamplingInterval against the provided context and
// target handler.
func (p *SetSamplingIntervalParams) Do(ctxt context.Context, h cdp.Handler) (err error) {
return h.Execute(ctxt, cdp.CommandProfilerSetSamplingInterval, p, nil)
}
// StartParams [no description].
type StartParams struct{}
// Start [no description].
func Start() *StartParams {
return &StartParams{}
}
// Do executes Profiler.start against the provided context and
// target handler.
func (p *StartParams) Do(ctxt context.Context, h cdp.Handler) (err error) {
return h.Execute(ctxt, cdp.CommandProfilerStart, nil, nil)
}
// StopParams [no description].
type StopParams struct{}
// Stop [no description].
func Stop() *StopParams {
return &StopParams{}
}
// StopReturns return values.
type StopReturns struct {
Profile *Profile `json:"profile,omitempty"` // Recorded profile.
}
// Do executes Profiler.stop against the provided context and
// target handler.
//
// returns:
// profile - Recorded profile.
func (p *StopParams) Do(ctxt context.Context, h cdp.Handler) (profile *Profile, err error) {
// execute
var res StopReturns
err = h.Execute(ctxt, cdp.CommandProfilerStop, nil, &res)
if err != nil {
return nil, err
}
return res.Profile, nil
}