dns

package
v2.0.0-rc5 Latest Latest
Warning

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

Go to latest
Published: Feb 2, 2024 License: MIT Imports: 14 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BlockBuilder

type BlockBuilder interface {
	BuildAll(ctx context.Context) blockbuilder.Result
}

type Cache

type Cache interface {
	Add(request, response *dns.Msg)
	Get(request *dns.Msg) (response *dns.Msg)
}

type Logger

type Logger interface {
	Debug(msg string)
	Info(msg string)
	Warn(msg string)
	Error(msg string)
	LoggerConstructor
}

type LoggerConstructor

type LoggerConstructor interface {
	New(options ...log.Option) *log.Logger
}

type Loop

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

func New

func New(settings config.Settings, logger Logger,
	blockBuilder BlockBuilder, cache Cache,
	prometheusRegistry PrometheusRegistry) (loop *Loop, err error)

func (*Loop) Start

func (l *Loop) Start(ctx context.Context) (
	runError <-chan error, err error)

func (*Loop) Stop

func (l *Loop) Stop() (err error)

func (*Loop) String

func (l *Loop) String() string

type PrometheusRegistry

type PrometheusRegistry interface {
	prometheus.Registerer
}

type Service

type Service interface {
	String() string
	Start() (runError <-chan error, startErr error)
	Stop() error
}

Jump to

Keyboard shortcuts

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