mindctrl

package module
v0.0.0-...-83c5f91 Latest Latest
Warning

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

Go to latest
Published: Feb 28, 2023 License: MIT Imports: 4 Imported by: 0

Documentation

Overview

Package mindctrl provides a simple library to control Mindctrl web extension ("server"). This is achieved by providing a fluent API to execute rmote calls to the server.

Operation Types

Each supported method is handled by its own operation type, like PingOperation for "ping" method, FindDownloadsOperation for "downloads.find" method, etc.

Arguments

The create function of operation types demands all required arguments of the method as its parameters.

Then, all method arguments can be updated by setters. For required arguments, the setters demand the new value as its sole parameter. For optional arguments, the setter takes two parameters - the first one controls if the argument is specified or not, and the second one the actual value of the argumenmt. All setter returns the operation itself.

Finally, all method arguments can be retrieved by the respective getters.

Execution

Each operation types provide several methods to execute the operation.

The "Execute" function executes the call over the given transport synchronously. It will wait until the call is finished and return the result.

The "Start" function executes the call over the given transport asynchronously, and invoke the provided callback after the call is finished. The end result can be retrieved by the "Result" function.

The "StartChannel" function executes the call over the given transport asynchronously, and writes to the given channel after the call is finished. The end result can be retrieved by the "Result" function.

For the asynchronous methods, progress checks and post-finish actions are handled by the Transport.Dispatch function.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ActivateTabOperation

type ActivateTabOperation struct {
	GenericOperation
	// contains filtered or unexported fields
}

This operation provides a fluent interface to execute tabs.activate method on a mindctrl web extension instance.

func ActivateTab

func ActivateTab(tabId int) *ActivateTabOperation

func (*ActivateTabOperation) Execute

func (op *ActivateTabOperation) Execute(transport *Transport) (*protocol.Tab, error)

func (*ActivateTabOperation) Result

func (op *ActivateTabOperation) Result() (*protocol.Tab, error)

func (*ActivateTabOperation) SetTabId

func (op *ActivateTabOperation) SetTabId(tabId int) *ActivateTabOperation

func (*ActivateTabOperation) Start

func (op *ActivateTabOperation) Start(transport *Transport, callback func(op *ActivateTabOperation))

func (*ActivateTabOperation) StartChannel

func (op *ActivateTabOperation) StartChannel(transport *Transport, channel chan *ActivateTabOperation)

func (*ActivateTabOperation) TabId

func (op *ActivateTabOperation) TabId() int

type Callback

type Callback = func(method string, args interface{}, reply interface{}, err error)

Callback is function that is invoked after an async call has finished.

type CancelDownloadOperation

type CancelDownloadOperation struct {
	GenericOperation
	// contains filtered or unexported fields
}

This operation provides a fluent interface to execute downloads.cancel method on a mindctrl web extension instance.

func CancelDownload

func CancelDownload(downloadId int) *CancelDownloadOperation

func (*CancelDownloadOperation) DownloadId

func (op *CancelDownloadOperation) DownloadId() int

func (*CancelDownloadOperation) Execute

func (op *CancelDownloadOperation) Execute(transport *Transport) (*protocol.Download, error)

func (*CancelDownloadOperation) Result

func (*CancelDownloadOperation) SetDownloadId

func (op *CancelDownloadOperation) SetDownloadId(downloadId int) *CancelDownloadOperation

func (*CancelDownloadOperation) Start

func (op *CancelDownloadOperation) Start(transport *Transport, callback func(op *CancelDownloadOperation))

func (*CancelDownloadOperation) StartChannel

func (op *CancelDownloadOperation) StartChannel(transport *Transport, channel chan *CancelDownloadOperation)

type CreateDownloadOperation

type CreateDownloadOperation struct {
	GenericOperation
	// contains filtered or unexported fields
}

This operation provides a fluent interface to execute downloads.create method on a mindctrl web extension instance.

func CreateDownload

func CreateDownload(url string, filename string) *CreateDownloadOperation

func (*CreateDownloadOperation) Execute

func (op *CreateDownloadOperation) Execute(transport *Transport) (*protocol.Download, error)

func (*CreateDownloadOperation) Filename

func (op *CreateDownloadOperation) Filename() string

func (*CreateDownloadOperation) NoWait

func (op *CreateDownloadOperation) NoWait() (bool, bool)

func (*CreateDownloadOperation) Referrer

func (op *CreateDownloadOperation) Referrer() (bool, string)

func (*CreateDownloadOperation) Result

func (*CreateDownloadOperation) SetFilename

func (op *CreateDownloadOperation) SetFilename(filename string) *CreateDownloadOperation

func (*CreateDownloadOperation) SetNoWait

func (op *CreateDownloadOperation) SetNoWait(specified bool, noWait bool) *CreateDownloadOperation

func (*CreateDownloadOperation) SetReferrer

func (op *CreateDownloadOperation) SetReferrer(specified bool, referrer string) *CreateDownloadOperation

func (*CreateDownloadOperation) SetUrl

func (*CreateDownloadOperation) Start

func (op *CreateDownloadOperation) Start(transport *Transport, callback func(op *CreateDownloadOperation))

func (*CreateDownloadOperation) StartChannel

func (op *CreateDownloadOperation) StartChannel(transport *Transport, channel chan *CreateDownloadOperation)

func (*CreateDownloadOperation) Url

func (op *CreateDownloadOperation) Url() string

type CreateTabOperation

type CreateTabOperation struct {
	GenericOperation
	// contains filtered or unexported fields
}

This operation provides a fluent interface to execute tabs.create method on a mindctrl web extension instance.

func CreateTab

func CreateTab() *CreateTabOperation

func (*CreateTabOperation) Active

func (op *CreateTabOperation) Active() (bool, bool)

func (*CreateTabOperation) Execute

func (op *CreateTabOperation) Execute(transport *Transport) (*protocol.Tab, error)

func (*CreateTabOperation) NoWait

func (op *CreateTabOperation) NoWait() (bool, bool)

func (*CreateTabOperation) Result

func (op *CreateTabOperation) Result() (*protocol.Tab, error)

func (*CreateTabOperation) SetActive

func (op *CreateTabOperation) SetActive(specified bool, active bool) *CreateTabOperation

func (*CreateTabOperation) SetNoWait

func (op *CreateTabOperation) SetNoWait(specified bool, noWait bool) *CreateTabOperation

func (*CreateTabOperation) SetUrl

func (op *CreateTabOperation) SetUrl(specified bool, url string) *CreateTabOperation

func (*CreateTabOperation) SetWindowId

func (op *CreateTabOperation) SetWindowId(specified bool, windowId int) *CreateTabOperation

func (*CreateTabOperation) Start

func (op *CreateTabOperation) Start(transport *Transport, callback func(op *CreateTabOperation))

func (*CreateTabOperation) StartChannel

func (op *CreateTabOperation) StartChannel(transport *Transport, channel chan *CreateTabOperation)

func (*CreateTabOperation) Url

func (op *CreateTabOperation) Url() (bool, string)

func (*CreateTabOperation) WindowId

func (op *CreateTabOperation) WindowId() (bool, int)

type CreateWindowOperation

type CreateWindowOperation struct {
	GenericOperation
	// contains filtered or unexported fields
}

This operation provides a fluent interface to execute windows.create method on a mindctrl web extension instance.

func CreateWindow

func CreateWindow() *CreateWindowOperation

func (*CreateWindowOperation) Execute

func (op *CreateWindowOperation) Execute(transport *Transport) (*protocol.Window, error)

func (*CreateWindowOperation) Result

func (op *CreateWindowOperation) Result() (*protocol.Window, error)

func (*CreateWindowOperation) Start

func (op *CreateWindowOperation) Start(transport *Transport, callback func(op *CreateWindowOperation))

func (*CreateWindowOperation) StartChannel

func (op *CreateWindowOperation) StartChannel(transport *Transport, channel chan *CreateWindowOperation)

type DeactivateTabOperation

type DeactivateTabOperation struct {
	GenericOperation
	// contains filtered or unexported fields
}

This operation provides a fluent interface to execute tabs.deactivate method on a mindctrl web extension instance.

func DeactivateTab

func DeactivateTab(tabId int) *DeactivateTabOperation

func (*DeactivateTabOperation) Execute

func (op *DeactivateTabOperation) Execute(transport *Transport) (*protocol.Tab, error)

func (*DeactivateTabOperation) Result

func (op *DeactivateTabOperation) Result() (*protocol.Tab, error)

func (*DeactivateTabOperation) SetTabId

func (op *DeactivateTabOperation) SetTabId(tabId int) *DeactivateTabOperation

func (*DeactivateTabOperation) Start

func (op *DeactivateTabOperation) Start(transport *Transport, callback func(op *DeactivateTabOperation))

func (*DeactivateTabOperation) StartChannel

func (op *DeactivateTabOperation) StartChannel(transport *Transport, channel chan *DeactivateTabOperation)

func (*DeactivateTabOperation) TabId

func (op *DeactivateTabOperation) TabId() int

type DiscardTabOperation

type DiscardTabOperation struct {
	GenericOperation
	// contains filtered or unexported fields
}

This operation provides a fluent interface to execute tabs.discard method on a mindctrl web extension instance.

func DiscardTab

func DiscardTab(tabId int) *DiscardTabOperation

func (*DiscardTabOperation) Execute

func (op *DiscardTabOperation) Execute(transport *Transport) error

func (*DiscardTabOperation) Result

func (op *DiscardTabOperation) Result() error

func (*DiscardTabOperation) SetTabId

func (op *DiscardTabOperation) SetTabId(tabId int) *DiscardTabOperation

func (*DiscardTabOperation) Start

func (op *DiscardTabOperation) Start(transport *Transport, callback func(op *DiscardTabOperation))

func (*DiscardTabOperation) StartChannel

func (op *DiscardTabOperation) StartChannel(transport *Transport, channel chan *DiscardTabOperation)

func (*DiscardTabOperation) TabId

func (op *DiscardTabOperation) TabId() int

type FindDownloadsOperation

type FindDownloadsOperation struct {
	GenericOperation
	// contains filtered or unexported fields
}

This operation provides a fluent interface to execute downloads.find method on a mindctrl web extension instance.

func FindDownloads

func FindDownloads() *FindDownloadsOperation

func (*FindDownloadsOperation) Execute

func (op *FindDownloadsOperation) Execute(transport *Transport) ([]protocol.Download, error)

func (*FindDownloadsOperation) Result

func (op *FindDownloadsOperation) Result() ([]protocol.Download, error)

func (*FindDownloadsOperation) SetState

func (op *FindDownloadsOperation) SetState(specified bool, state string) *FindDownloadsOperation

func (*FindDownloadsOperation) SetUrl

func (op *FindDownloadsOperation) SetUrl(specified bool, url string) *FindDownloadsOperation

func (*FindDownloadsOperation) Start

func (op *FindDownloadsOperation) Start(transport *Transport, callback func(op *FindDownloadsOperation))

func (*FindDownloadsOperation) StartChannel

func (op *FindDownloadsOperation) StartChannel(transport *Transport, channel chan *FindDownloadsOperation)

func (*FindDownloadsOperation) State

func (op *FindDownloadsOperation) State() (bool, string)

func (*FindDownloadsOperation) Url

func (op *FindDownloadsOperation) Url() (bool, string)

type FindTabsOperation

type FindTabsOperation struct {
	GenericOperation
	// contains filtered or unexported fields
}

This operation provides a fluent interface to execute tabs.find method on a mindctrl web extension instance.

func FindTabs

func FindTabs() *FindTabsOperation

func (*FindTabsOperation) Active

func (op *FindTabsOperation) Active() (bool, bool)

func (*FindTabsOperation) Audible

func (op *FindTabsOperation) Audible() (bool, bool)

func (*FindTabsOperation) Discarded

func (op *FindTabsOperation) Discarded() (bool, bool)

func (*FindTabsOperation) Execute

func (op *FindTabsOperation) Execute(transport *Transport) ([]protocol.Tab, error)

func (*FindTabsOperation) Muted

func (op *FindTabsOperation) Muted() (bool, bool)

func (*FindTabsOperation) Pinned

func (op *FindTabsOperation) Pinned() (bool, bool)

func (*FindTabsOperation) Result

func (op *FindTabsOperation) Result() ([]protocol.Tab, error)

func (*FindTabsOperation) SetActive

func (op *FindTabsOperation) SetActive(specified bool, active bool) *FindTabsOperation

func (*FindTabsOperation) SetAudible

func (op *FindTabsOperation) SetAudible(specified bool, audible bool) *FindTabsOperation

func (*FindTabsOperation) SetDiscarded

func (op *FindTabsOperation) SetDiscarded(specified bool, discarded bool) *FindTabsOperation

func (*FindTabsOperation) SetMuted

func (op *FindTabsOperation) SetMuted(specified bool, muted bool) *FindTabsOperation

func (*FindTabsOperation) SetPinned

func (op *FindTabsOperation) SetPinned(specified bool, pinned bool) *FindTabsOperation

func (*FindTabsOperation) SetStatus

func (op *FindTabsOperation) SetStatus(specified bool, status string) *FindTabsOperation

func (*FindTabsOperation) SetUrl

func (op *FindTabsOperation) SetUrl(specified bool, url string) *FindTabsOperation

func (*FindTabsOperation) SetWindowId

func (op *FindTabsOperation) SetWindowId(specified bool, windowId int) *FindTabsOperation

func (*FindTabsOperation) Start

func (op *FindTabsOperation) Start(transport *Transport, callback func(op *FindTabsOperation))

func (*FindTabsOperation) StartChannel

func (op *FindTabsOperation) StartChannel(transport *Transport, channel chan *FindTabsOperation)

func (*FindTabsOperation) Status

func (op *FindTabsOperation) Status() (bool, string)

func (*FindTabsOperation) Url

func (op *FindTabsOperation) Url() (bool, string)

func (*FindTabsOperation) WindowId

func (op *FindTabsOperation) WindowId() (bool, int)

type FindWindowsOperation

type FindWindowsOperation struct {
	GenericOperation
	// contains filtered or unexported fields
}

This operation provides a fluent interface to execute windows.find method on a mindctrl web extension instance.

func FindWindows

func FindWindows() *FindWindowsOperation

func (*FindWindowsOperation) Execute

func (op *FindWindowsOperation) Execute(transport *Transport) ([]protocol.Window, error)

func (*FindWindowsOperation) Result

func (op *FindWindowsOperation) Result() ([]protocol.Window, error)

func (*FindWindowsOperation) Start

func (op *FindWindowsOperation) Start(transport *Transport, callback func(op *FindWindowsOperation))

func (*FindWindowsOperation) StartChannel

func (op *FindWindowsOperation) StartChannel(transport *Transport, channel chan *FindWindowsOperation)

type FocusWindowOperation

type FocusWindowOperation struct {
	GenericOperation
	// contains filtered or unexported fields
}

This operation provides a fluent interface to execute windows.focus method on a mindctrl web extension instance.

func FocusWindow

func FocusWindow(windowId int) *FocusWindowOperation

func (*FocusWindowOperation) Execute

func (op *FocusWindowOperation) Execute(transport *Transport) (*protocol.Window, error)

func (*FocusWindowOperation) Result

func (op *FocusWindowOperation) Result() (*protocol.Window, error)

func (*FocusWindowOperation) SetWindowId

func (op *FocusWindowOperation) SetWindowId(windowId int) *FocusWindowOperation

func (*FocusWindowOperation) Start

func (op *FocusWindowOperation) Start(transport *Transport, callback func(op *FocusWindowOperation))

func (*FocusWindowOperation) StartChannel

func (op *FocusWindowOperation) StartChannel(transport *Transport, channel chan *FocusWindowOperation)

func (*FocusWindowOperation) WindowId

func (op *FocusWindowOperation) WindowId() int

type FullscreenWindowOperation

type FullscreenWindowOperation struct {
	GenericOperation
	// contains filtered or unexported fields
}

This operation provides a fluent interface to execute windows.fullscreen method on a mindctrl web extension instance.

func FullscreenWindow

func FullscreenWindow(windowId int) *FullscreenWindowOperation

func (*FullscreenWindowOperation) Execute

func (op *FullscreenWindowOperation) Execute(transport *Transport) (*protocol.Window, error)

func (*FullscreenWindowOperation) Result

func (*FullscreenWindowOperation) SetWindowId

func (op *FullscreenWindowOperation) SetWindowId(windowId int) *FullscreenWindowOperation

func (*FullscreenWindowOperation) Start

func (op *FullscreenWindowOperation) Start(transport *Transport, callback func(op *FullscreenWindowOperation))

func (*FullscreenWindowOperation) StartChannel

func (op *FullscreenWindowOperation) StartChannel(transport *Transport, channel chan *FullscreenWindowOperation)

func (*FullscreenWindowOperation) WindowId

func (op *FullscreenWindowOperation) WindowId() int

type GenericOperation

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

Embeddable struct that provides a partial implementation of operations.

func (*GenericOperation) Finished

func (op *GenericOperation) Finished() bool

Return if the operation has finished. Before an operation has finished, retrieval of operation result will result in a panic.

func (*GenericOperation) Started

func (op *GenericOperation) Started() bool

Return if the operation has started. When an operation has started, any changes to the operation will result in a panic.

type GetBrowserInfoOperation

type GetBrowserInfoOperation struct {
	GenericOperation
	// contains filtered or unexported fields
}

This operation provides a fluent interface to execute info.get_browser method on a mindctrl web extension instance.

func GetBrowserInfo

func GetBrowserInfo() *GetBrowserInfoOperation

func (*GetBrowserInfoOperation) Execute

func (op *GetBrowserInfoOperation) Execute(transport *Transport) (*protocol.BrowserInfo, error)

func (*GetBrowserInfoOperation) Result

func (*GetBrowserInfoOperation) Start

func (op *GetBrowserInfoOperation) Start(transport *Transport, callback func(op *GetBrowserInfoOperation))

func (*GetBrowserInfoOperation) StartChannel

func (op *GetBrowserInfoOperation) StartChannel(transport *Transport, channel chan *GetBrowserInfoOperation)

type GetCurrentTabOperation

type GetCurrentTabOperation struct {
	GenericOperation
	// contains filtered or unexported fields
}

This operation provides a fluent interface to execute tabs.get_current method on a mindctrl web extension instance.

func GetCurrentTab

func GetCurrentTab() *GetCurrentTabOperation

func (*GetCurrentTabOperation) Execute

func (op *GetCurrentTabOperation) Execute(transport *Transport) (*protocol.Tab, error)

func (*GetCurrentTabOperation) Result

func (op *GetCurrentTabOperation) Result() (*protocol.Tab, error)

func (*GetCurrentTabOperation) Start

func (op *GetCurrentTabOperation) Start(transport *Transport, callback func(op *GetCurrentTabOperation))

func (*GetCurrentTabOperation) StartChannel

func (op *GetCurrentTabOperation) StartChannel(transport *Transport, channel chan *GetCurrentTabOperation)

type GetCurrentWindowOperation

type GetCurrentWindowOperation struct {
	GenericOperation
	// contains filtered or unexported fields
}

This operation provides a fluent interface to execute windows.get_current method on a mindctrl web extension instance.

func GetCurrentWindow

func GetCurrentWindow() *GetCurrentWindowOperation

func (*GetCurrentWindowOperation) Execute

func (op *GetCurrentWindowOperation) Execute(transport *Transport) (*protocol.Window, error)

func (*GetCurrentWindowOperation) Result

func (*GetCurrentWindowOperation) Start

func (op *GetCurrentWindowOperation) Start(transport *Transport, callback func(op *GetCurrentWindowOperation))

func (*GetCurrentWindowOperation) StartChannel

func (op *GetCurrentWindowOperation) StartChannel(transport *Transport, channel chan *GetCurrentWindowOperation)

type GetDownloadOperation

type GetDownloadOperation struct {
	GenericOperation
	// contains filtered or unexported fields
}

This operation provides a fluent interface to execute downloads.get method on a mindctrl web extension instance.

func GetDownload

func GetDownload(downloadId int) *GetDownloadOperation

func (*GetDownloadOperation) DownloadId

func (op *GetDownloadOperation) DownloadId() int

func (*GetDownloadOperation) Execute

func (op *GetDownloadOperation) Execute(transport *Transport) (*protocol.Download, error)

func (*GetDownloadOperation) Result

func (op *GetDownloadOperation) Result() (*protocol.Download, error)

func (*GetDownloadOperation) SetDownloadId

func (op *GetDownloadOperation) SetDownloadId(downloadId int) *GetDownloadOperation

func (*GetDownloadOperation) Start

func (op *GetDownloadOperation) Start(transport *Transport, callback func(op *GetDownloadOperation))

func (*GetDownloadOperation) StartChannel

func (op *GetDownloadOperation) StartChannel(transport *Transport, channel chan *GetDownloadOperation)

type GetPlatformInfoOperation

type GetPlatformInfoOperation struct {
	GenericOperation
	// contains filtered or unexported fields
}

This operation provides a fluent interface to execute info.get_platform method on a mindctrl web extension instance.

func GetPlatformInfo

func GetPlatformInfo() *GetPlatformInfoOperation

func (*GetPlatformInfoOperation) Execute

func (op *GetPlatformInfoOperation) Execute(transport *Transport) (*protocol.PlatformInfo, error)

func (*GetPlatformInfoOperation) Result

func (*GetPlatformInfoOperation) Start

func (op *GetPlatformInfoOperation) Start(transport *Transport, callback func(op *GetPlatformInfoOperation))

func (*GetPlatformInfoOperation) StartChannel

func (op *GetPlatformInfoOperation) StartChannel(transport *Transport, channel chan *GetPlatformInfoOperation)

type GetTabOperation

type GetTabOperation struct {
	GenericOperation
	// contains filtered or unexported fields
}

This operation provides a fluent interface to execute tabs.get method on a mindctrl web extension instance.

func GetTab

func GetTab(tabId int) *GetTabOperation

func (*GetTabOperation) Execute

func (op *GetTabOperation) Execute(transport *Transport) (*protocol.Tab, error)

func (*GetTabOperation) Result

func (op *GetTabOperation) Result() (*protocol.Tab, error)

func (*GetTabOperation) SetTabId

func (op *GetTabOperation) SetTabId(tabId int) *GetTabOperation

func (*GetTabOperation) Start

func (op *GetTabOperation) Start(transport *Transport, callback func(op *GetTabOperation))

func (*GetTabOperation) StartChannel

func (op *GetTabOperation) StartChannel(transport *Transport, channel chan *GetTabOperation)

func (*GetTabOperation) TabId

func (op *GetTabOperation) TabId() int

type GetWindowOperation

type GetWindowOperation struct {
	GenericOperation
	// contains filtered or unexported fields
}

This operation provides a fluent interface to execute windows.get method on a mindctrl web extension instance.

func GetWindow

func GetWindow(windowId int) *GetWindowOperation

func (*GetWindowOperation) Execute

func (op *GetWindowOperation) Execute(transport *Transport) (*protocol.Window, error)

func (*GetWindowOperation) Result

func (op *GetWindowOperation) Result() (*protocol.Window, error)

func (*GetWindowOperation) SetWindowId

func (op *GetWindowOperation) SetWindowId(windowId int) *GetWindowOperation

func (*GetWindowOperation) Start

func (op *GetWindowOperation) Start(transport *Transport, callback func(op *GetWindowOperation))

func (*GetWindowOperation) StartChannel

func (op *GetWindowOperation) StartChannel(transport *Transport, channel chan *GetWindowOperation)

func (*GetWindowOperation) WindowId

func (op *GetWindowOperation) WindowId() int

type LoadTabOperation

type LoadTabOperation struct {
	GenericOperation
	// contains filtered or unexported fields
}

This operation provides a fluent interface to execute tabs.load method on a mindctrl web extension instance.

func LoadTab

func LoadTab(tabId int, url string) *LoadTabOperation

func (*LoadTabOperation) Execute

func (op *LoadTabOperation) Execute(transport *Transport) (*protocol.Tab, error)

func (*LoadTabOperation) NoWait

func (op *LoadTabOperation) NoWait() (bool, bool)

func (*LoadTabOperation) Replace

func (op *LoadTabOperation) Replace() (bool, bool)

func (*LoadTabOperation) Result

func (op *LoadTabOperation) Result() (*protocol.Tab, error)

func (*LoadTabOperation) SetNoWait

func (op *LoadTabOperation) SetNoWait(specified bool, noWait bool) *LoadTabOperation

func (*LoadTabOperation) SetReplace

func (op *LoadTabOperation) SetReplace(specified bool, replace bool) *LoadTabOperation

func (*LoadTabOperation) SetTabId

func (op *LoadTabOperation) SetTabId(tabId int) *LoadTabOperation

func (*LoadTabOperation) SetUrl

func (op *LoadTabOperation) SetUrl(url string) *LoadTabOperation

func (*LoadTabOperation) Start

func (op *LoadTabOperation) Start(transport *Transport, callback func(op *LoadTabOperation))

func (*LoadTabOperation) StartChannel

func (op *LoadTabOperation) StartChannel(transport *Transport, channel chan *LoadTabOperation)

func (*LoadTabOperation) TabId

func (op *LoadTabOperation) TabId() int

func (*LoadTabOperation) Url

func (op *LoadTabOperation) Url() string

type MaximizeWindowOperation

type MaximizeWindowOperation struct {
	GenericOperation
	// contains filtered or unexported fields
}

This operation provides a fluent interface to execute windows.maximize method on a mindctrl web extension instance.

func MaximizeWindow

func MaximizeWindow(windowId int) *MaximizeWindowOperation

func (*MaximizeWindowOperation) Execute

func (op *MaximizeWindowOperation) Execute(transport *Transport) (*protocol.Window, error)

func (*MaximizeWindowOperation) Result

func (op *MaximizeWindowOperation) Result() (*protocol.Window, error)

func (*MaximizeWindowOperation) SetWindowId

func (op *MaximizeWindowOperation) SetWindowId(windowId int) *MaximizeWindowOperation

func (*MaximizeWindowOperation) Start

func (op *MaximizeWindowOperation) Start(transport *Transport, callback func(op *MaximizeWindowOperation))

func (*MaximizeWindowOperation) StartChannel

func (op *MaximizeWindowOperation) StartChannel(transport *Transport, channel chan *MaximizeWindowOperation)

func (*MaximizeWindowOperation) WindowId

func (op *MaximizeWindowOperation) WindowId() int

type MinimizeWindowOperation

type MinimizeWindowOperation struct {
	GenericOperation
	// contains filtered or unexported fields
}

This operation provides a fluent interface to execute windows.minimize method on a mindctrl web extension instance.

func MinimizeWindow

func MinimizeWindow(windowId int) *MinimizeWindowOperation

func (*MinimizeWindowOperation) Execute

func (op *MinimizeWindowOperation) Execute(transport *Transport) (*protocol.Window, error)

func (*MinimizeWindowOperation) Result

func (op *MinimizeWindowOperation) Result() (*protocol.Window, error)

func (*MinimizeWindowOperation) SetWindowId

func (op *MinimizeWindowOperation) SetWindowId(windowId int) *MinimizeWindowOperation

func (*MinimizeWindowOperation) Start

func (op *MinimizeWindowOperation) Start(transport *Transport, callback func(op *MinimizeWindowOperation))

func (*MinimizeWindowOperation) StartChannel

func (op *MinimizeWindowOperation) StartChannel(transport *Transport, channel chan *MinimizeWindowOperation)

func (*MinimizeWindowOperation) WindowId

func (op *MinimizeWindowOperation) WindowId() int

type MoveTabOperation

type MoveTabOperation struct {
	GenericOperation
	// contains filtered or unexported fields
}

This operation provides a fluent interface to execute tabs.move method on a mindctrl web extension instance.

func MoveTab

func MoveTab(tabId int, index int) *MoveTabOperation

func (*MoveTabOperation) Execute

func (op *MoveTabOperation) Execute(transport *Transport) (*protocol.Tab, error)

func (*MoveTabOperation) Index

func (op *MoveTabOperation) Index() int

func (*MoveTabOperation) Result

func (op *MoveTabOperation) Result() (*protocol.Tab, error)

func (*MoveTabOperation) SetIndex

func (op *MoveTabOperation) SetIndex(index int) *MoveTabOperation

func (*MoveTabOperation) SetTabId

func (op *MoveTabOperation) SetTabId(tabId int) *MoveTabOperation

func (*MoveTabOperation) SetWindowId

func (op *MoveTabOperation) SetWindowId(specified bool, windowId int) *MoveTabOperation

func (*MoveTabOperation) Start

func (op *MoveTabOperation) Start(transport *Transport, callback func(op *MoveTabOperation))

func (*MoveTabOperation) StartChannel

func (op *MoveTabOperation) StartChannel(transport *Transport, channel chan *MoveTabOperation)

func (*MoveTabOperation) TabId

func (op *MoveTabOperation) TabId() int

func (*MoveTabOperation) WindowId

func (op *MoveTabOperation) WindowId() (bool, int)

type MoveWindowOperation

type MoveWindowOperation struct {
	GenericOperation
	// contains filtered or unexported fields
}

This operation provides a fluent interface to execute windows.move method on a mindctrl web extension instance.

func MoveWindow

func MoveWindow(windowId int, left int, top int) *MoveWindowOperation

func (*MoveWindowOperation) Execute

func (op *MoveWindowOperation) Execute(transport *Transport) (*protocol.Window, error)

func (*MoveWindowOperation) Left

func (op *MoveWindowOperation) Left() int

func (*MoveWindowOperation) Result

func (op *MoveWindowOperation) Result() (*protocol.Window, error)

func (*MoveWindowOperation) SetLeft

func (op *MoveWindowOperation) SetLeft(left int) *MoveWindowOperation

func (*MoveWindowOperation) SetTop

func (op *MoveWindowOperation) SetTop(top int) *MoveWindowOperation

func (*MoveWindowOperation) SetWindowId

func (op *MoveWindowOperation) SetWindowId(windowId int) *MoveWindowOperation

func (*MoveWindowOperation) Start

func (op *MoveWindowOperation) Start(transport *Transport, callback func(op *MoveWindowOperation))

func (*MoveWindowOperation) StartChannel

func (op *MoveWindowOperation) StartChannel(transport *Transport, channel chan *MoveWindowOperation)

func (*MoveWindowOperation) Top

func (op *MoveWindowOperation) Top() int

func (*MoveWindowOperation) WindowId

func (op *MoveWindowOperation) WindowId() int

type MuteTabOperation

type MuteTabOperation struct {
	GenericOperation
	// contains filtered or unexported fields
}

This operation provides a fluent interface to execute tabs.mute method on a mindctrl web extension instance.

func MuteTab

func MuteTab(tabId int) *MuteTabOperation

func (*MuteTabOperation) Execute

func (op *MuteTabOperation) Execute(transport *Transport) (*protocol.Tab, error)

func (*MuteTabOperation) Result

func (op *MuteTabOperation) Result() (*protocol.Tab, error)

func (*MuteTabOperation) SetTabId

func (op *MuteTabOperation) SetTabId(tabId int) *MuteTabOperation

func (*MuteTabOperation) Start

func (op *MuteTabOperation) Start(transport *Transport, callback func(op *MuteTabOperation))

func (*MuteTabOperation) StartChannel

func (op *MuteTabOperation) StartChannel(transport *Transport, channel chan *MuteTabOperation)

func (*MuteTabOperation) TabId

func (op *MuteTabOperation) TabId() int

type Options

type Options = codec.Options

Options contains additional data for the transport.

type PauseDownloadOperation

type PauseDownloadOperation struct {
	GenericOperation
	// contains filtered or unexported fields
}

This operation provides a fluent interface to execute downloads.pause method on a mindctrl web extension instance.

func PauseDownload

func PauseDownload(downloadId int) *PauseDownloadOperation

func (*PauseDownloadOperation) DownloadId

func (op *PauseDownloadOperation) DownloadId() int

func (*PauseDownloadOperation) Execute

func (op *PauseDownloadOperation) Execute(transport *Transport) (*protocol.Download, error)

func (*PauseDownloadOperation) Result

func (op *PauseDownloadOperation) Result() (*protocol.Download, error)

func (*PauseDownloadOperation) SetDownloadId

func (op *PauseDownloadOperation) SetDownloadId(downloadId int) *PauseDownloadOperation

func (*PauseDownloadOperation) Start

func (op *PauseDownloadOperation) Start(transport *Transport, callback func(op *PauseDownloadOperation))

func (*PauseDownloadOperation) StartChannel

func (op *PauseDownloadOperation) StartChannel(transport *Transport, channel chan *PauseDownloadOperation)

type PinTabOperation

type PinTabOperation struct {
	GenericOperation
	// contains filtered or unexported fields
}

This operation provides a fluent interface to execute tabs.pin method on a mindctrl web extension instance.

func PinTab

func PinTab(tabId int) *PinTabOperation

func (*PinTabOperation) Execute

func (op *PinTabOperation) Execute(transport *Transport) (*protocol.Tab, error)

func (*PinTabOperation) Result

func (op *PinTabOperation) Result() (*protocol.Tab, error)

func (*PinTabOperation) SetTabId

func (op *PinTabOperation) SetTabId(tabId int) *PinTabOperation

func (*PinTabOperation) Start

func (op *PinTabOperation) Start(transport *Transport, callback func(op *PinTabOperation))

func (*PinTabOperation) StartChannel

func (op *PinTabOperation) StartChannel(transport *Transport, channel chan *PinTabOperation)

func (*PinTabOperation) TabId

func (op *PinTabOperation) TabId() int

type PingOperation

type PingOperation struct {
	GenericOperation
	// contains filtered or unexported fields
}

This operation provides a fluent interface to execute ping method on a mindctrl web extension instance.

func Ping

func Ping() *PingOperation

func (*PingOperation) Execute

func (op *PingOperation) Execute(transport *Transport) error

func (*PingOperation) Result

func (op *PingOperation) Result() error

func (*PingOperation) Start

func (op *PingOperation) Start(transport *Transport, callback func(op *PingOperation))

func (*PingOperation) StartChannel

func (op *PingOperation) StartChannel(transport *Transport, channel chan *PingOperation)

type QueryDocumentOperation

type QueryDocumentOperation struct {
	GenericOperation
	// contains filtered or unexported fields
}

This operation provides a fluent interface to execute documents.query method on a mindctrl web extension instance.

func QueryDocument

func QueryDocument(tabId int, query string, result interface{}) *QueryDocumentOperation

func (*QueryDocumentOperation) ClearVariables

func (op *QueryDocumentOperation) ClearVariables() *QueryDocumentOperation

func (*QueryDocumentOperation) Execute

func (op *QueryDocumentOperation) Execute(transport *Transport) error

func (*QueryDocumentOperation) MergeVariables

func (op *QueryDocumentOperation) MergeVariables(variables map[string]interface{}) *QueryDocumentOperation

func (*QueryDocumentOperation) Operation

func (op *QueryDocumentOperation) Operation() string

func (*QueryDocumentOperation) Query

func (op *QueryDocumentOperation) Query() string

func (*QueryDocumentOperation) Result

func (op *QueryDocumentOperation) Result() error

func (*QueryDocumentOperation) SetOperation

func (op *QueryDocumentOperation) SetOperation(operation string) *QueryDocumentOperation

func (*QueryDocumentOperation) SetQuery

func (*QueryDocumentOperation) SetResult

func (op *QueryDocumentOperation) SetResult(result interface{}) *QueryDocumentOperation

func (*QueryDocumentOperation) SetTabId

func (op *QueryDocumentOperation) SetTabId(tabId int) *QueryDocumentOperation

func (*QueryDocumentOperation) SetVariable

func (op *QueryDocumentOperation) SetVariable(name string, value interface{}) *QueryDocumentOperation

func (*QueryDocumentOperation) Start

func (op *QueryDocumentOperation) Start(transport *Transport, callback func(op *QueryDocumentOperation))

func (*QueryDocumentOperation) StartChannel

func (op *QueryDocumentOperation) StartChannel(transport *Transport, channel chan *QueryDocumentOperation)

func (*QueryDocumentOperation) TabId

func (op *QueryDocumentOperation) TabId() int

func (*QueryDocumentOperation) UndefineVariable

func (op *QueryDocumentOperation) UndefineVariable(name string) *QueryDocumentOperation

func (*QueryDocumentOperation) Variables

func (op *QueryDocumentOperation) Variables() map[string]interface{}

type ReloadTabOperation

type ReloadTabOperation struct {
	GenericOperation
	// contains filtered or unexported fields
}

This operation provides a fluent interface to execute tabs.reload method on a mindctrl web extension instance.

func ReloadTab

func ReloadTab(tabId int) *ReloadTabOperation

func (*ReloadTabOperation) BypassCache

func (op *ReloadTabOperation) BypassCache() (bool, bool)

func (*ReloadTabOperation) Execute

func (op *ReloadTabOperation) Execute(transport *Transport) (*protocol.Tab, error)

func (*ReloadTabOperation) NoWait

func (op *ReloadTabOperation) NoWait() (bool, bool)

func (*ReloadTabOperation) Result

func (op *ReloadTabOperation) Result() (*protocol.Tab, error)

func (*ReloadTabOperation) SetBypassCache

func (op *ReloadTabOperation) SetBypassCache(specified bool, bypassCache bool) *ReloadTabOperation

func (*ReloadTabOperation) SetNoWait

func (op *ReloadTabOperation) SetNoWait(specified bool, noWait bool) *ReloadTabOperation

func (*ReloadTabOperation) SetTabId

func (op *ReloadTabOperation) SetTabId(tabId int) *ReloadTabOperation

func (*ReloadTabOperation) Start

func (op *ReloadTabOperation) Start(transport *Transport, callback func(op *ReloadTabOperation))

func (*ReloadTabOperation) StartChannel

func (op *ReloadTabOperation) StartChannel(transport *Transport, channel chan *ReloadTabOperation)

func (*ReloadTabOperation) TabId

func (op *ReloadTabOperation) TabId() int

type RemoveDownloadOperation

type RemoveDownloadOperation struct {
	GenericOperation
	// contains filtered or unexported fields
}

This operation provides a fluent interface to execute downloads.remove method on a mindctrl web extension instance.

func RemoveDownload

func RemoveDownload(downloadId int) *RemoveDownloadOperation

func (*RemoveDownloadOperation) DownloadId

func (op *RemoveDownloadOperation) DownloadId() int

func (*RemoveDownloadOperation) Execute

func (op *RemoveDownloadOperation) Execute(transport *Transport) error

func (*RemoveDownloadOperation) Result

func (op *RemoveDownloadOperation) Result() error

func (*RemoveDownloadOperation) SetDownloadId

func (op *RemoveDownloadOperation) SetDownloadId(downloadId int) *RemoveDownloadOperation

func (*RemoveDownloadOperation) Start

func (op *RemoveDownloadOperation) Start(transport *Transport, callback func(op *RemoveDownloadOperation))

func (*RemoveDownloadOperation) StartChannel

func (op *RemoveDownloadOperation) StartChannel(transport *Transport, channel chan *RemoveDownloadOperation)

type RemoveTabOperation

type RemoveTabOperation struct {
	GenericOperation
	// contains filtered or unexported fields
}

This operation provides a fluent interface to execute tabs.remove method on a mindctrl web extension instance.

func RemoveTab

func RemoveTab(tabId int) *RemoveTabOperation

func (*RemoveTabOperation) Execute

func (op *RemoveTabOperation) Execute(transport *Transport) error

func (*RemoveTabOperation) Result

func (op *RemoveTabOperation) Result() error

func (*RemoveTabOperation) SetTabId

func (op *RemoveTabOperation) SetTabId(tabId int) *RemoveTabOperation

func (*RemoveTabOperation) Start

func (op *RemoveTabOperation) Start(transport *Transport, callback func(op *RemoveTabOperation))

func (*RemoveTabOperation) StartChannel

func (op *RemoveTabOperation) StartChannel(transport *Transport, channel chan *RemoveTabOperation)

func (*RemoveTabOperation) TabId

func (op *RemoveTabOperation) TabId() int

type RemoveWindowOperation

type RemoveWindowOperation struct {
	GenericOperation
	// contains filtered or unexported fields
}

This operation provides a fluent interface to execute windows.remove method on a mindctrl web extension instance.

func RemoveWindow

func RemoveWindow(windowId int) *RemoveWindowOperation

func (*RemoveWindowOperation) Execute

func (op *RemoveWindowOperation) Execute(transport *Transport) error

func (*RemoveWindowOperation) Result

func (op *RemoveWindowOperation) Result() error

func (*RemoveWindowOperation) SetWindowId

func (op *RemoveWindowOperation) SetWindowId(windowId int) *RemoveWindowOperation

func (*RemoveWindowOperation) Start

func (op *RemoveWindowOperation) Start(transport *Transport, callback func(op *RemoveWindowOperation))

func (*RemoveWindowOperation) StartChannel

func (op *RemoveWindowOperation) StartChannel(transport *Transport, channel chan *RemoveWindowOperation)

func (*RemoveWindowOperation) WindowId

func (op *RemoveWindowOperation) WindowId() int

type ResizeWindowOperation

type ResizeWindowOperation struct {
	GenericOperation
	// contains filtered or unexported fields
}

This operation provides a fluent interface to execute windows.resize method on a mindctrl web extension instance.

func ResizeWindow

func ResizeWindow(windowId int, width int, height int) *ResizeWindowOperation

func (*ResizeWindowOperation) Execute

func (op *ResizeWindowOperation) Execute(transport *Transport) (*protocol.Window, error)

func (*ResizeWindowOperation) Height

func (op *ResizeWindowOperation) Height() int

func (*ResizeWindowOperation) Result

func (op *ResizeWindowOperation) Result() (*protocol.Window, error)

func (*ResizeWindowOperation) SetHeight

func (op *ResizeWindowOperation) SetHeight(height int) *ResizeWindowOperation

func (*ResizeWindowOperation) SetWidth

func (op *ResizeWindowOperation) SetWidth(width int) *ResizeWindowOperation

func (*ResizeWindowOperation) SetWindowId

func (op *ResizeWindowOperation) SetWindowId(windowId int) *ResizeWindowOperation

func (*ResizeWindowOperation) Start

func (op *ResizeWindowOperation) Start(transport *Transport, callback func(op *ResizeWindowOperation))

func (*ResizeWindowOperation) StartChannel

func (op *ResizeWindowOperation) StartChannel(transport *Transport, channel chan *ResizeWindowOperation)

func (*ResizeWindowOperation) Width

func (op *ResizeWindowOperation) Width() int

func (*ResizeWindowOperation) WindowId

func (op *ResizeWindowOperation) WindowId() int

type RestoreWindowOperation

type RestoreWindowOperation struct {
	GenericOperation
	// contains filtered or unexported fields
}

This operation provides a fluent interface to execute windows.restore method on a mindctrl web extension instance.

func RestoreWindow

func RestoreWindow(windowId int) *RestoreWindowOperation

func (*RestoreWindowOperation) Execute

func (op *RestoreWindowOperation) Execute(transport *Transport) (*protocol.Window, error)

func (*RestoreWindowOperation) Result

func (op *RestoreWindowOperation) Result() (*protocol.Window, error)

func (*RestoreWindowOperation) SetWindowId

func (op *RestoreWindowOperation) SetWindowId(windowId int) *RestoreWindowOperation

func (*RestoreWindowOperation) Start

func (op *RestoreWindowOperation) Start(transport *Transport, callback func(op *RestoreWindowOperation))

func (*RestoreWindowOperation) StartChannel

func (op *RestoreWindowOperation) StartChannel(transport *Transport, channel chan *RestoreWindowOperation)

func (*RestoreWindowOperation) WindowId

func (op *RestoreWindowOperation) WindowId() int

type ResumeDownloadOperation

type ResumeDownloadOperation struct {
	GenericOperation
	// contains filtered or unexported fields
}

This operation provides a fluent interface to execute downloads.resume method on a mindctrl web extension instance.

func ResumeDownload

func ResumeDownload(downloadId int) *ResumeDownloadOperation

func (*ResumeDownloadOperation) DownloadId

func (op *ResumeDownloadOperation) DownloadId() int

func (*ResumeDownloadOperation) Execute

func (op *ResumeDownloadOperation) Execute(transport *Transport) (*protocol.Download, error)

func (*ResumeDownloadOperation) NoWait

func (op *ResumeDownloadOperation) NoWait() (bool, bool)

func (*ResumeDownloadOperation) Result

func (*ResumeDownloadOperation) SetDownloadId

func (op *ResumeDownloadOperation) SetDownloadId(downloadId int) *ResumeDownloadOperation

func (*ResumeDownloadOperation) SetNoWait

func (op *ResumeDownloadOperation) SetNoWait(specified bool, noWait bool) *ResumeDownloadOperation

func (*ResumeDownloadOperation) Start

func (op *ResumeDownloadOperation) Start(transport *Transport, callback func(op *ResumeDownloadOperation))

func (*ResumeDownloadOperation) StartChannel

func (op *ResumeDownloadOperation) StartChannel(transport *Transport, channel chan *ResumeDownloadOperation)

type Transport

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

Transport handles communication with the server. Note that the transport implementation is NOT thread-safe and therefore should not be used in multiple goroutines.

func NewTransport

func NewTransport(url string, client string, server string, options *Options) (*Transport, error)

Create a new transport with the given options.

func (*Transport) Dispatch

func (transport *Transport) Dispatch() bool

Watch for a single completed asynchronous call and invoke the corresponding callback function. Return true if there are still outstanding async calls to watch, and false otherwise.

type UnfocusWindowOperation

type UnfocusWindowOperation struct {
	GenericOperation
	// contains filtered or unexported fields
}

This operation provides a fluent interface to execute windows.unfocus method on a mindctrl web extension instance.

func UnfocusWindow

func UnfocusWindow(windowId int) *UnfocusWindowOperation

func (*UnfocusWindowOperation) Execute

func (op *UnfocusWindowOperation) Execute(transport *Transport) (*protocol.Window, error)

func (*UnfocusWindowOperation) Result

func (op *UnfocusWindowOperation) Result() (*protocol.Window, error)

func (*UnfocusWindowOperation) SetWindowId

func (op *UnfocusWindowOperation) SetWindowId(windowId int) *UnfocusWindowOperation

func (*UnfocusWindowOperation) Start

func (op *UnfocusWindowOperation) Start(transport *Transport, callback func(op *UnfocusWindowOperation))

func (*UnfocusWindowOperation) StartChannel

func (op *UnfocusWindowOperation) StartChannel(transport *Transport, channel chan *UnfocusWindowOperation)

func (*UnfocusWindowOperation) WindowId

func (op *UnfocusWindowOperation) WindowId() int

type UnmuteTabOperation

type UnmuteTabOperation struct {
	GenericOperation
	// contains filtered or unexported fields
}

This operation provides a fluent interface to execute tabs.unmute method on a mindctrl web extension instance.

func UnmuteTab

func UnmuteTab(tabId int) *UnmuteTabOperation

func (*UnmuteTabOperation) Execute

func (op *UnmuteTabOperation) Execute(transport *Transport) (*protocol.Tab, error)

func (*UnmuteTabOperation) Result

func (op *UnmuteTabOperation) Result() (*protocol.Tab, error)

func (*UnmuteTabOperation) SetTabId

func (op *UnmuteTabOperation) SetTabId(tabId int) *UnmuteTabOperation

func (*UnmuteTabOperation) Start

func (op *UnmuteTabOperation) Start(transport *Transport, callback func(op *UnmuteTabOperation))

func (*UnmuteTabOperation) StartChannel

func (op *UnmuteTabOperation) StartChannel(transport *Transport, channel chan *UnmuteTabOperation)

func (*UnmuteTabOperation) TabId

func (op *UnmuteTabOperation) TabId() int

type UnpinTabOperation

type UnpinTabOperation struct {
	GenericOperation
	// contains filtered or unexported fields
}

This operation provides a fluent interface to execute tabs.unpin method on a mindctrl web extension instance.

func UnpinTab

func UnpinTab(tabId int) *UnpinTabOperation

func (*UnpinTabOperation) Execute

func (op *UnpinTabOperation) Execute(transport *Transport) (*protocol.Tab, error)

func (*UnpinTabOperation) Result

func (op *UnpinTabOperation) Result() (*protocol.Tab, error)

func (*UnpinTabOperation) SetTabId

func (op *UnpinTabOperation) SetTabId(tabId int) *UnpinTabOperation

func (*UnpinTabOperation) Start

func (op *UnpinTabOperation) Start(transport *Transport, callback func(op *UnpinTabOperation))

func (*UnpinTabOperation) StartChannel

func (op *UnpinTabOperation) StartChannel(transport *Transport, channel chan *UnpinTabOperation)

func (*UnpinTabOperation) TabId

func (op *UnpinTabOperation) TabId() int

Directories

Path Synopsis
Package codec provides a ClientCodec implementation that supports Mindctrl web extension.
Package codec provides a ClientCodec implementation that supports Mindctrl web extension.
internal
Package protocol contains information required to communicate with the extension.
Package protocol contains information required to communicate with the extension.

Jump to

Keyboard shortcuts

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