handlers

package
v0.16.1 Latest Latest
Warning

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

Go to latest
Published: Apr 11, 2024 License: Apache-2.0 Imports: 16 Imported by: 0

Documentation

Index

Constants

View Source
const (
	HandlerTypePreHandle  = "pre-handle"
	HandlerTypeHandle     = "handle"
	HandlerTypePostHandle = "post-handle"
)

Variables

This section is empty.

Functions

func Serve

func Serve(ctx context.Context, handler CustomHandler) error

Serve 指定のハンドラでgRPCサーバをスタート/リッスンする

Types

type Config added in v0.1.0

type Config struct {
	ExporterConfig *config.ExporterConfig `yaml:"exporter_config"`
}

Config .

func LoadConfigFromPath added in v0.1.0

func LoadConfigFromPath(configPath string) (*Config, error)

LoadConfigFromPath ファイルパスからConfigを読み込む

type CustomHandler added in v0.1.0

type CustomHandler interface {
	HandlerMeta
	Listener
}

CustomHandler カスタムハンドラーが実装すべきインターフェース

type Handler

type Handler interface {
	Handle(context.Context, *handler.HandleRequest, ResponseSender) error
}

Handler CoreからのHandleリクエストを処理するためのインターフェース

type HandlerContext added in v0.1.0

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

func NewHandlerContext added in v0.1.0

func NewHandlerContext(ctx context.Context, scalingJobID string, sender ResponseSender) *HandlerContext

func (*HandlerContext) Deadline added in v0.1.0

func (c *HandlerContext) Deadline() (deadline time.Time, ok bool)

func (*HandlerContext) Done added in v0.1.0

func (c *HandlerContext) Done() <-chan struct{}

func (*HandlerContext) Err added in v0.1.0

func (c *HandlerContext) Err() error

func (*HandlerContext) Report added in v0.1.0

func (c *HandlerContext) Report(status handler.HandleResponse_Status, formatAndArgs ...interface{}) error

func (*HandlerContext) Value added in v0.1.0

func (c *HandlerContext) Value(key interface{}) interface{}

type HandlerLogger

type HandlerLogger struct {
	Logger *slog.Logger
}

func (*HandlerLogger) GetLogger

func (l *HandlerLogger) GetLogger() *slog.Logger

func (*HandlerLogger) SetLogger

func (l *HandlerLogger) SetLogger(logger *slog.Logger)

type HandlerMeta

type HandlerMeta interface {
	// Name プレフィックスなしの短い名前を返す
	Name() string
	// Version バージョン情報を返す
	Version() string

	Logger
}

HandlerMeta ハンドラーのメタ情報

ビルトイン/カスタム問わず全てのハンドラーが実装すべきインターフェース

type Listener

type Listener interface {
	ListenAddress() string
	ConfigPath() string
}

Listener gRPCサーバとしてリッスンするためのインターフェース

type Logger

type Logger interface {
	GetLogger() *slog.Logger
	SetLogger(logger *slog.Logger)
}

Logger ログ出力のためのインターフェース

type PostHandler

type PostHandler interface {
	PostHandle(context.Context, *handler.PostHandleRequest, ResponseSender) error
}

PostHandler CoreからのPostHandleリクエストを処理するためのインターフェース

type PreHandler

type PreHandler interface {
	PreHandle(context.Context, *handler.HandleRequest, ResponseSender) error
}

PreHandler CoreからのPreHandleリクエストを処理するためのインターフェース

type ResponseSender

type ResponseSender interface {
	Send(*handler.HandleResponse) error
}

ResponseSender gRPCのサーバストリームのレスポンスをラップするインターフェース

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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