func main()

in go/showcase/pkg/showcase/part6/serving.go [49:70]


func main() {

	// register the functions that you want to serve...
	builder := statefun.StatefulFunctionsBuilder()
	if err := builder.WithSpec(UserFnSpec()); err != nil {
		log.Fatalf("failed to register user function: %s", err)
	}

	if err := builder.WithSpec(GreetingSpec()); err != nil {
		log.Fatalf("failed to register greeting function: %s", err)
	}

	// ... and build a request-reply handler for the registered functions, which understands how to
	// decode invocation requests dispatched from StateFun / encode side-effects (e.g. state storage
	// updates, or invoking other functions) as responses to be handled by StateFun.
	handler := builder.AsHandler()

	// Use the request-reply handler along with your favorite HTTP web server framework
	// to serve the functions!
	http.Handle("/", handler)
	_ = http.ListenAndServe(":8000", nil)
}