driver

package
v0.13.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 21, 2026 License: MIT Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BrowserDriver

type BrowserDriver struct{}

BrowserDriver executes tasks using a headless Chrome browser via chromedp. Each Execute call spawns an isolated browser instance to avoid memory leaks.

func NewBrowserDriver

func NewBrowserDriver() *BrowserDriver

NewBrowserDriver creates a BrowserDriver.

func (*BrowserDriver) Execute

func (d *BrowserDriver) Execute(ctx context.Context, t task.Task) task.Result

Execute navigates to t.URL with a headless Chrome instance.

type DNSDriver

type DNSDriver struct {
	// contains filtered or unexported fields
}

DNSDriver performs DNS lookups using the miekg/dns library.

func NewDNSDriver

func NewDNSDriver() *DNSDriver

NewDNSDriver creates a DNSDriver with a shared DNS client.

func (*DNSDriver) Execute

func (d *DNSDriver) Execute(ctx context.Context, t task.Task) task.Result

Execute performs a DNS query for t.URL using the configured resolver and record type.

type Driver

type Driver interface {
	Execute(ctx context.Context, t task.Task) task.Result
}

Driver executes a single task and returns a result.

type HTTPDriver

type HTTPDriver struct {
	// contains filtered or unexported fields
}

HTTPDriver executes HTTP requests.

func NewHTTPDriver

func NewHTTPDriver() *HTTPDriver

NewHTTPDriver creates an HTTPDriver with a shared transport.

func (*HTTPDriver) Execute

func (d *HTTPDriver) Execute(ctx context.Context, t task.Task) task.Result

Execute performs the HTTP request described by t.

type WebSocketDriver

type WebSocketDriver struct{}

WebSocketDriver connects to a WebSocket endpoint, sends messages, and waits.

func NewWebSocketDriver

func NewWebSocketDriver() *WebSocketDriver

NewWebSocketDriver creates a WebSocketDriver.

func (*WebSocketDriver) Execute

func (d *WebSocketDriver) Execute(ctx context.Context, t task.Task) task.Result

Execute opens a WebSocket connection, sends configured messages, optionally waits for expected messages, then holds the connection for duration_s.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL