provider

package
v1.65.0 Latest Latest
Warning

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

Go to latest
Published: Dec 4, 2024 License: MIT Imports: 37 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ReservedName = "default"
)

Variables

This section is empty.

Functions

func ParseProxyProvider

func ParseProxyProvider(name string, mapping map[string]any, _ bool) (types.ProxyProvider, error)

Types

type CompatibleProvider

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

func NewCompatibleProvider

func NewCompatibleProvider(name string, hc *HealthCheck, filterRegx *regexp.Regexp) (*CompatibleProvider, error)

func (*CompatibleProvider) Finalize

func (cp *CompatibleProvider) Finalize()

func (*CompatibleProvider) Forget

func (cp *CompatibleProvider) Forget()

func (*CompatibleProvider) HealthCheck

func (cp *CompatibleProvider) HealthCheck()

func (*CompatibleProvider) Initial

func (cp *CompatibleProvider) Initial() error

func (*CompatibleProvider) MarshalJSON

func (cp *CompatibleProvider) MarshalJSON() ([]byte, error)

func (*CompatibleProvider) Name

func (cp *CompatibleProvider) Name() string

func (*CompatibleProvider) Proxies

func (cp *CompatibleProvider) Proxies() []C.Proxy

func (*CompatibleProvider) SetProviders

func (cp *CompatibleProvider) SetProviders(providers []types.ProxyProvider)

func (*CompatibleProvider) SetProxies

func (cp *CompatibleProvider) SetProxies(proxies []C.Proxy)

func (*CompatibleProvider) Touch

func (cp *CompatibleProvider) Touch()

func (*CompatibleProvider) Type

func (*CompatibleProvider) Update

func (cp *CompatibleProvider) Update() error

func (*CompatibleProvider) VehicleType

func (cp *CompatibleProvider) VehicleType() types.VehicleType

type FileVehicle

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

func NewFileVehicle

func NewFileVehicle(path string) *FileVehicle

func (*FileVehicle) Path

func (f *FileVehicle) Path() string

func (*FileVehicle) Proxy

func (*FileVehicle) Proxy() bool

func (*FileVehicle) Read

func (f *FileVehicle) Read() ([]byte, error)

func (*FileVehicle) Type

func (f *FileVehicle) Type() types.VehicleType

type HTTPVehicle

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

func NewHTTPVehicle

func NewHTTPVehicle(path string, url string, urlProxy bool, header http.Header) *HTTPVehicle

func (*HTTPVehicle) Path

func (h *HTTPVehicle) Path() string

func (*HTTPVehicle) Proxy

func (h *HTTPVehicle) Proxy() bool

func (*HTTPVehicle) Read

func (h *HTTPVehicle) Read() ([]byte, error)

func (*HTTPVehicle) Subscription

func (h *HTTPVehicle) Subscription() *Subscription

func (*HTTPVehicle) Type

func (h *HTTPVehicle) Type() types.VehicleType

type HealthCheck

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

func NewHealthCheck

func NewHealthCheck(proxies []C.Proxy, url string, interval time.Duration, lazy bool) *HealthCheck

type ProxySchema

type ProxySchema struct {
	Proxies []C.RawProxy `yaml:"proxies"`
}

type ProxySetProvider

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

func NewProxySetProvider

func NewProxySetProvider(
	name string,
	interval time.Duration,
	filter string,
	vehicle types.Vehicle,
	hc *HealthCheck,
	globalForceCertVerify bool,
	option adapter.ProxyOption,
) (*ProxySetProvider, error)

func (ProxySetProvider) Destroy

func (f ProxySetProvider) Destroy() error

func (*ProxySetProvider) Finalize

func (pp *ProxySetProvider) Finalize()

func (*ProxySetProvider) HealthCheck

func (pp *ProxySetProvider) HealthCheck()

func (*ProxySetProvider) Initial

func (pp *ProxySetProvider) Initial() error

func (*ProxySetProvider) MarshalJSON

func (pp *ProxySetProvider) MarshalJSON() ([]byte, error)

func (*ProxySetProvider) Name

func (pp *ProxySetProvider) Name() string

func (*ProxySetProvider) Proxies

func (pp *ProxySetProvider) Proxies() []C.Proxy

func (*ProxySetProvider) Touch

func (pp *ProxySetProvider) Touch()

func (*ProxySetProvider) Type

func (pp *ProxySetProvider) Type() types.ProviderType

func (*ProxySetProvider) Update

func (pp *ProxySetProvider) Update() error

func (ProxySetProvider) VehicleType

func (f ProxySetProvider) VehicleType() types.VehicleType

type Subscription

type Subscription struct {
	Upload   int64 `json:"upload"`
	Download int64 `json:"download"`
	Total    int64 `json:"total"`
	Expire   int64 `json:"expire"`
}

Jump to

Keyboard shortcuts

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