router

package
v0.0.0-...-e2c49c5 Latest Latest
Warning

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

Go to latest
Published: Jan 21, 2024 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Overview

Package router provides api service routing

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Option

type Option func(o *Options)

func WithHandler

func WithHandler(h string) Option

func WithRegistry

func WithRegistry(r registry.Registry) Option

func WithResolver

func WithResolver(r resolver.Resolver) Option

type Options

type Options struct {
	Handler  string
	Registry registry.Registry
	Resolver resolver.Resolver
}

func NewOptions

func NewOptions(opts ...Option) Options

type Router

type Router interface {
	// Returns options
	Options() Options
	// Stop the router
	Close() error
	// Endpoint returns an api.Service endpoint or an error if it does not exist
	Endpoint(r *http.Request) (*api.Service, error)
	// Register endpoint in router
	Register(ep *api.Endpoint) error
	// Deregister endpoint from router
	Deregister(ep *api.Endpoint) error
	// Route returns an api.Service route
	Route(r *http.Request) (*api.Service, error)
}

Router is used to determine an endpoint for a request

Directories

Path Synopsis
Package registry provides a dynamic api service router
Package registry provides a dynamic api service router

Jump to

Keyboard shortcuts

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