service

package
v0.0.0-...-7ce8566 Latest Latest
Warning

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

Go to latest
Published: Jan 9, 2025 License: MIT Imports: 2 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// ErrAlreadyStarted is returned when somebody tries to start an already
	// running service.
	ErrAlreadyStarted = errors.New("already started")
	// ErrNotStarted is returned when somebody tries to stop a not running
	// service.
	ErrNotStarted = errors.New("not started")
)

Functions

This section is empty.

Types

type BaseService

type BaseService struct {
	Logger *log.Entry
	// contains filtered or unexported fields
}

func NewBaseService

func NewBaseService(name string, impl Service) *BaseService

NewBaseService creates a new BaseService.

func (*BaseService) IsRunning

func (bs *BaseService) IsRunning() bool

IsRunning() check if services is running

func (*BaseService) SetLogger

func (bs *BaseService) SetLogger(l *log.Entry)

SetLogger implements Service by setting a logger.

func (*BaseService) Start

func (bs *BaseService) Start() error

Start servies

func (*BaseService) Stop

func (bs *BaseService) Stop() error

Stop services

func (*BaseService) Terminate

func (bs *BaseService) Terminate() <-chan struct{}

Terminate() return chan if services is terminated

type Service

type Service interface {
	// Start services
	Start() error
	OnStart() error

	// Stop services
	Stop() error
	OnStop() error

	// Check if services is running
	IsRunning() bool

	// Terminate services
	Terminate() <-chan struct{}
}

Jump to

Keyboard shortcuts

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