router

package
v1.5.1 Latest Latest
Warning

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

Go to latest
Published: Aug 29, 2024 License: Apache-2.0 Imports: 14 Imported by: 1

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 WithNamespace

func WithNamespace(ns string) Option

func WithRegistry

func WithRegistry(r registry.Registry) Option

func WithResolver

func WithResolver(r resolver.Resolver) Option

type Options

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

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)
	// Route returns an api.Service route
	Route(r *http.Request) (*api.Service, error)
}

Router is used to determine an endpoint for a request

func NewRouter

func NewRouter(opts ...Option) Router

NewRouter returns the default router

Jump to

Keyboard shortcuts

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