YoyoGo

package
v1.4.9 Latest Latest
Warning

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

Go to latest
Published: Jan 10, 2020 License: MIT Imports: 16 Imported by: 0

Documentation

Index

Constants

View Source
const (
	APPLICATION_LIFE_START = "APPLICATION_LIFE_START"
	APPLICATION_LIFE_STOP  = "APPLICATION_LIFE_STOP"
)
View Source
const (
	// DefaultAddress is used if no other is specified.
	DefaultAddress = ":8080"
)

HTTP methods

View Source
const (
	Version = "v1.4.8"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type ApplicationBuilder

type ApplicationBuilder struct {
	Profile string
	// contains filtered or unexported fields
}

application builder struct

func New

func New(handlers ...Handler) *ApplicationBuilder

create application builder when combo all handlers to middleware

func NewApplicationBuilder

func NewApplicationBuilder() *ApplicationBuilder

create new application builder

func UseClassic

func UseClassic() *ApplicationBuilder

create classic application builder

func (*ApplicationBuilder) Build

func (this *ApplicationBuilder) Build() IRequestDelegate

build and combo all middleware to request delegate (ServeHTTP(w http.ResponseWriter, r *http.Request))

func (*ApplicationBuilder) ConfigureMvcParts added in v1.4.9

func (this *ApplicationBuilder) ConfigureMvcParts(configure func(builder *Controller.ControllerBuilder)) *ApplicationBuilder

func (*ApplicationBuilder) ServeHTTP

func (app *ApplicationBuilder) ServeHTTP(w http.ResponseWriter, r *http.Request)

Middleware of Server Handler , request port.

func (*ApplicationBuilder) SetEnvironment added in v1.4.0

func (app *ApplicationBuilder) SetEnvironment(mode string)

func (*ApplicationBuilder) SetHostBuildContext added in v1.4.9

func (this *ApplicationBuilder) SetHostBuildContext(context *HostBuildContext)

func (*ApplicationBuilder) UseEndpoints added in v1.4.9

func (self *ApplicationBuilder) UseEndpoints(configure func(Router.IRouterBuilder)) *ApplicationBuilder

func (*ApplicationBuilder) UseFunc

func (app *ApplicationBuilder) UseFunc(handlerFunc HandlerFunc)

apply handler func middleware in builder

func (*ApplicationBuilder) UseHandler

func (app *ApplicationBuilder) UseHandler(handler http.Handler)

apply handler middleware in builder

func (*ApplicationBuilder) UseHandlerFunc

func (app *ApplicationBuilder) UseHandlerFunc(handlerFunc func(rw http.ResponseWriter, r *http.Request))

apply handler func middleware in builder

func (*ApplicationBuilder) UseMiddleware

func (app *ApplicationBuilder) UseMiddleware(handler Handler)

apply middleware in builder

func (*ApplicationBuilder) UseMvc

func (self *ApplicationBuilder) UseMvc() *ApplicationBuilder

after create builder , apply router and logger and recovery middleware

func (*ApplicationBuilder) UseStatic

func (app *ApplicationBuilder) UseStatic(path string)

apply static middleware in builder

type ApplicationChannel added in v1.4.0

type ApplicationChannel chan ApplicationEvent

ApplicationChannel 是一个能接收 ApplicationEvent 的 channel

type ApplicationEvent added in v1.4.0

type ApplicationEvent struct {
	Data  interface{}
	Topic string
}

type ApplicationEventPublisher added in v1.4.0

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

ApplicationEventPublisher 存储有关订阅者感兴趣的特定主题的信息

func NewEventPublisher added in v1.4.0

func NewEventPublisher() *ApplicationEventPublisher

func (*ApplicationEventPublisher) NewEvent added in v1.4.0

func (eb *ApplicationEventPublisher) NewEvent() chan ApplicationEvent

func (*ApplicationEventPublisher) Publish added in v1.4.0

func (eb *ApplicationEventPublisher) Publish(topic string, data interface{})

func (*ApplicationEventPublisher) Subscribe added in v1.4.0

func (eb *ApplicationEventPublisher) Subscribe(topic string, ch ApplicationChannel)

type ApplicationLife added in v1.3.0

type ApplicationLife struct {
	ApplicationStopped chan ApplicationEvent
	ApplicationStarted chan ApplicationEvent
	// contains filtered or unexported fields
}

func NewApplicationLife added in v1.4.0

func NewApplicationLife() *ApplicationLife

func (*ApplicationLife) StartApplication added in v1.3.0

func (life *ApplicationLife) StartApplication()

func (*ApplicationLife) StopApplication added in v1.3.0

func (life *ApplicationLife) StopApplication()

type Configuration added in v1.4.0

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

func NewConfiguration added in v1.4.0

func NewConfiguration(configContext *ConfigurationContext) *Configuration

func (*Configuration) Get added in v1.4.0

func (c *Configuration) Get(name string) interface{}

func (*Configuration) GetSection added in v1.4.0

func (c *Configuration) GetSection(name string) *Configuration

type ConfigurationBuilder added in v1.4.0

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

func NewConfigurationBuilder added in v1.4.0

func NewConfigurationBuilder() *ConfigurationBuilder

func (*ConfigurationBuilder) AddEnvironment added in v1.4.0

func (builder *ConfigurationBuilder) AddEnvironment()

func (*ConfigurationBuilder) AddFlagArgs added in v1.4.0

func (builder *ConfigurationBuilder) AddFlagArgs()

func (*ConfigurationBuilder) AddJsonFile added in v1.4.0

func (builder *ConfigurationBuilder) AddJsonFile(name string)

func (*ConfigurationBuilder) AddYamlFile added in v1.4.0

func (builder *ConfigurationBuilder) AddYamlFile(name string)

func (*ConfigurationBuilder) Build added in v1.4.0

func (builder *ConfigurationBuilder) Build() *Configuration

type ConfigurationContext added in v1.4.0

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

type DataChannelSlice added in v1.4.0

type DataChannelSlice []ApplicationChannel

DataChannelSlice 是一个包含 DataChannels 数据的切片

type FastHttpServer added in v1.3.0

type FastHttpServer struct {
	IsTLS                   bool
	Addr, CertFile, KeyFile string
	// contains filtered or unexported fields
}

func NewFastHttp added in v1.3.0

func NewFastHttp(addr string) *FastHttpServer

func NewFastHttps added in v1.3.0

func NewFastHttps(addr string, cert string, key string) FastHttpServer

func (FastHttpServer) GetAddr added in v1.3.0

func (server FastHttpServer) GetAddr() string

func (FastHttpServer) Run added in v1.3.0

func (server FastHttpServer) Run(context *HostBuildContext) (e error)

func (FastHttpServer) Shutdown added in v1.3.0

func (server FastHttpServer) Shutdown()

type Handler

type Handler interface {
	Inovke(ctx *Context.HttpContext, next func(ctx *Context.HttpContext))
}

type HandlerFunc

type HandlerFunc func(ctx *Context.HttpContext, next func(ctx *Context.HttpContext))

func (HandlerFunc) Inovke

func (h HandlerFunc) Inovke(ctx *Context.HttpContext, next func(ctx *Context.HttpContext))

type HostBuildContext added in v1.3.0

type HostBuildContext struct {
	RequestDelegate  IRequestDelegate
	ApplicationCycle *ApplicationLife
	// contains filtered or unexported fields
}

type HostBuilder

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

func CreateDefaultBuilder added in v1.4.0

func CreateDefaultBuilder(routerConfig func(router Router.IRouterBuilder)) *HostBuilder

region Create the builder of Web host

func NewWebHostBuilder

func NewWebHostBuilder() *HostBuilder

func (*HostBuilder) Build

func (self *HostBuilder) Build() WebHost

func (*HostBuilder) Configure

func (self *HostBuilder) Configure(configure func(*ApplicationBuilder)) *HostBuilder

func (*HostBuilder) ConfigureServices added in v1.3.0

func (self *HostBuilder) ConfigureServices(configure func(*DependencyInjection.ServiceCollection)) *HostBuilder

func (*HostBuilder) OnApplicationLifeEvent added in v1.4.0

func (self *HostBuilder) OnApplicationLifeEvent(lifeConfigure func(*ApplicationLife)) *HostBuilder

func (*HostBuilder) UseFastHttp added in v1.3.0

func (self *HostBuilder) UseFastHttp() *HostBuilder

func (*HostBuilder) UseFastHttpByAddr added in v1.4.0

func (self *HostBuilder) UseFastHttpByAddr(addr string) *HostBuilder

func (*HostBuilder) UseHttp added in v1.3.0

func (self *HostBuilder) UseHttp() *HostBuilder

func (*HostBuilder) UseHttpByAddr added in v1.4.0

func (self *HostBuilder) UseHttpByAddr(addr string) *HostBuilder

func (*HostBuilder) UseServer

func (self *HostBuilder) UseServer(server IServer) *HostBuilder

type HttpServer

type HttpServer struct {
	IsTLS                   bool
	Addr, CertFile, KeyFile string
	// contains filtered or unexported fields
}

func DefaultHttpServer

func DefaultHttpServer(addr string) HttpServer

func DefaultHttps added in v1.2.0

func DefaultHttps(addr string, cert string, key string) HttpServer

func (HttpServer) GetAddr

func (server HttpServer) GetAddr() string

func (HttpServer) Run

func (server HttpServer) Run(context *HostBuildContext) (e error)

func (HttpServer) Shutdown added in v1.3.0

func (server HttpServer) Shutdown()

type IConfiguration added in v1.4.0

type IConfiguration interface {
}

type IRequestDelegate

type IRequestDelegate interface {
	ServeHTTP(w http.ResponseWriter, r *http.Request)
}

type IServer

type IServer interface {
	GetAddr() string
	Run(context *HostBuildContext) (e error)
	Shutdown()
}

type NextFunc

type NextFunc func(ctx *Context.HttpContext)

type WebHost

type WebHost struct {
	HostContext *HostBuildContext
	// contains filtered or unexported fields
}

func NewWebHost

func NewWebHost(server IServer, hostContext *HostBuildContext) WebHost

func (WebHost) Run

func (host WebHost) Run()

func (WebHost) SetAppMode

func (host WebHost) SetAppMode(mode string)

func (WebHost) Shutdown added in v1.4.0

func (host WebHost) Shutdown()

Jump to

Keyboard shortcuts

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