Documentation ¶
Index ¶
Constants ¶
const ( Origin = "Origin" Vary = "Vary" AccessControlRequestMethod = "Access-Control-Request-Method" AccessControlExposeHeaders = "Access-Control-Expose-Headers" AccessControlAllowCredentials = "Access-Control-Allow-Credentials" AccessControlAllowOrigin = "Access-Control-Allow-Origin" AccessControlAllowMethods = "Access-Control-Allow-Methods" AccessControlAllowHeaders = "Access-Control-Allow-Headers" AccessControlMaxAge = "Access-Control-Max-Age" )
Variables ¶
This section is empty.
Functions ¶
func HandlePreflight ¶ added in v2.1.0
func HandlePreflight(corsInfo config.CORSConfigurationInfo) func(w http.ResponseWriter, r *http.Request)
HandlePreflight returns a http handler function that process CORS preflight responses and sets CORS headers.
func ProcessCORS ¶ added in v2.1.0
ProcessCORS is a middleware function that enables CORS responses and sets CORS headers.
Types ¶
type HttpServer ¶
type HttpServer struct {
// contains filtered or unexported fields
}
HttpServer contains references to dependencies required by the http server implementation.
func NewHttpServer ¶
func NewHttpServer(router *mux.Router, doListenAndServe bool) *HttpServer
NewHttpServer is a factory method that returns an initialized HttpServer receiver struct.
func (*HttpServer) BootstrapHandler ¶
func (b *HttpServer) BootstrapHandler( ctx context.Context, wg *sync.WaitGroup, _ startup.Timer, dic *di.Container) bool
BootstrapHandler fulfills the BootstrapHandler contract. It creates two go routines -- one that executes ListenAndServe() and another that waits on closure of a context's done channel before calling Shutdown() to cleanly shut down the http server.
func (*HttpServer) IsRunning ¶
func (b *HttpServer) IsRunning() bool
IsRunning returns whether or not the http server is running. It is provided to support delayed shutdown of any resources required to successfully process http requests until after all outstanding requests have been processed (e.g. a database connection).
type Ready ¶
type Ready struct {
// contains filtered or unexported fields
}
Ready contains references to dependencies required by the testing implementation.
func (*Ready) BootstrapHandler ¶
func (r *Ready) BootstrapHandler( _ context.Context, _ *sync.WaitGroup, startupTimer startup.Timer, _ *di.Container) bool
BootstrapHandler fulfills the BootstrapHandler contract. During normal production execution, a nil stream will be supplied. A non-nil stream indicates we're running within the test runner context and that we should wait for the httpServer to start running before sending confirmation over the stream. If the httpServer doesn't start running within the defined startup time, no confirmation is sent over the stream and the application bootstrapping is aborted.
type StartMessage ¶
type StartMessage struct {
// contains filtered or unexported fields
}
StartMessage contains references to dependencies required by the start message handler.
func NewStartMessage ¶
func NewStartMessage(serviceKey, version string) *StartMessage
NewStartMessage is a factory method that returns an initialized StartMessage receiver struct.
func (StartMessage) BootstrapHandler ¶
func (h StartMessage) BootstrapHandler( _ context.Context, _ *sync.WaitGroup, startupTimer startup.Timer, dic *di.Container) bool
BootstrapHandler fulfills the BootstrapHandler contract. It creates no go routines. It logs a "standard" set of messages when the service first starts up successfully.