Skip to content

Commit 8bed10a

Browse files
committed
fix: Adding register mux for renderer to simplify usage
Signed-off-by: Vincent Boutour <[email protected]>
1 parent ad6473d commit 8bed10a

File tree

6 files changed

+18
-10
lines changed

6 files changed

+18
-10
lines changed

Diff for: cmd/http/http.go

+1-3
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,8 @@ import (
55
"syscall"
66

77
"github.com/ViBiOh/httputils/v4/pkg/alcotest"
8-
"github.com/ViBiOh/httputils/v4/pkg/cors"
98
"github.com/ViBiOh/httputils/v4/pkg/httputils"
109
"github.com/ViBiOh/httputils/v4/pkg/logger"
11-
"github.com/ViBiOh/httputils/v4/pkg/owasp"
1210
"github.com/ViBiOh/httputils/v4/pkg/server"
1311
)
1412

@@ -34,7 +32,7 @@ func main() {
3432
services := newServices(config)
3533
port := newPort(config, clients, adapters)
3634

37-
go services.server.Start(ctxEnd, httputils.Handler(port, clients.health, clients.telemetry.Middleware("http"), owasp.New(config.owasp).Middleware, cors.New(config.cors).Middleware))
35+
go services.server.Start(ctxEnd, httputils.Handler(port, clients.health, clients.telemetry.Middleware("http"), services.owasp.Middleware, services.cors.Middleware))
3836

3937
clients.health.WaitForTermination(services.server.Done(), syscall.SIGTERM, syscall.SIGINT)
4038
server.GracefulWait(services.server.Done(), adapters.amqp.Done())

Diff for: cmd/http/port.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ import (
1717
func newPort(config configuration, client clients, adapter adapters) http.Handler {
1818
mux := http.NewServeMux()
1919

20-
mux.Handle(config.renderer.PathPrefix+"/", adapter.renderer.NewServeMux(getDefaultRenderer(config, client, adapter)))
20+
adapter.renderer.RegisterMux(mux, getDefaultRenderer(config, client, adapter))
2121

2222
return mux
2323
}

Diff for: cmd/http/services.go

+6
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,21 @@
11
package main
22

33
import (
4+
"github.com/ViBiOh/httputils/v4/pkg/cors"
5+
"github.com/ViBiOh/httputils/v4/pkg/owasp"
46
"github.com/ViBiOh/httputils/v4/pkg/server"
57
)
68

79
type services struct {
810
server *server.Server
11+
cors cors.Service
12+
owasp owasp.Service
913
}
1014

1115
func newServices(config configuration) services {
1216
return services{
1317
server: server.New(config.server),
18+
cors: cors.New(config.cors),
19+
owasp: owasp.New(config.owasp),
1420
}
1521
}

Diff for: go.mod

+2-2
Original file line numberDiff line numberDiff line change
@@ -49,8 +49,8 @@ require (
4949
golang.org/x/sync v0.7.0 // indirect
5050
golang.org/x/sys v0.21.0 // indirect
5151
golang.org/x/text v0.16.0 // indirect
52-
google.golang.org/genproto/googleapis/api v0.0.0-20240617180043-68d350f18fd4 // indirect
53-
google.golang.org/genproto/googleapis/rpc v0.0.0-20240617180043-68d350f18fd4 // indirect
52+
google.golang.org/genproto/googleapis/api v0.0.0-20240624140628-dc46fd24d27d // indirect
53+
google.golang.org/genproto/googleapis/rpc v0.0.0-20240624140628-dc46fd24d27d // indirect
5454
google.golang.org/grpc v1.64.0 // indirect
5555
google.golang.org/protobuf v1.34.2 // indirect
5656
gopkg.in/yaml.v3 v3.0.1 // indirect

Diff for: go.sum

+4-4
Original file line numberDiff line numberDiff line change
@@ -105,10 +105,10 @@ golang.org/x/sys v0.21.0 h1:rF+pYz3DAGSQAxAu1CbC7catZg4ebC4UIeIhKxBZvws=
105105
golang.org/x/sys v0.21.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
106106
golang.org/x/text v0.16.0 h1:a94ExnEXNtEwYLGJSIUxnWoxoRz/ZcCsV63ROupILh4=
107107
golang.org/x/text v0.16.0/go.mod h1:GhwF1Be+LQoKShO3cGOHzqOgRrGaYc9AvblQOmPVHnI=
108-
google.golang.org/genproto/googleapis/api v0.0.0-20240617180043-68d350f18fd4 h1:MuYw1wJzT+ZkybKfaOXKp5hJiZDn2iHaXRw0mRYdHSc=
109-
google.golang.org/genproto/googleapis/api v0.0.0-20240617180043-68d350f18fd4/go.mod h1:px9SlOOZBg1wM1zdnr8jEL4CNGUBZ+ZKYtNPApNQc4c=
110-
google.golang.org/genproto/googleapis/rpc v0.0.0-20240617180043-68d350f18fd4 h1:Di6ANFilr+S60a4S61ZM00vLdw0IrQOSMS2/6mrnOU0=
111-
google.golang.org/genproto/googleapis/rpc v0.0.0-20240617180043-68d350f18fd4/go.mod h1:Ue6ibwXGpU+dqIcODieyLOcgj7z8+IcskoNIgZxtrFY=
108+
google.golang.org/genproto/googleapis/api v0.0.0-20240624140628-dc46fd24d27d h1:Aqf0fiIdUQEj0Gn9mKFFXoQfTTEaNopWpfVyYADxiSg=
109+
google.golang.org/genproto/googleapis/api v0.0.0-20240624140628-dc46fd24d27d/go.mod h1:Od4k8V1LQSizPRUK4OzZ7TBE/20k+jPczUDAEyvn69Y=
110+
google.golang.org/genproto/googleapis/rpc v0.0.0-20240624140628-dc46fd24d27d h1:k3zyW3BYYR30e8v3x0bTDdE9vpYFjZHK+HcyqkrppWk=
111+
google.golang.org/genproto/googleapis/rpc v0.0.0-20240624140628-dc46fd24d27d/go.mod h1:Ue6ibwXGpU+dqIcODieyLOcgj7z8+IcskoNIgZxtrFY=
112112
google.golang.org/grpc v1.64.0 h1:KH3VH9y/MgNQg1dE7b3XfVK0GsPSIzJwdF617gUSbvY=
113113
google.golang.org/grpc v1.64.0/go.mod h1:oxjF8E3FBnjp+/gVFYdWacaLDx9na1aqy9oovLpxQYg=
114114
google.golang.org/protobuf v1.34.2 h1:6xV6lTsCfpGD21XK49h7MhtcApnLqkfYgPcdHftf6hg=

Diff for: pkg/renderer/renderer.go

+4
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,10 @@ func New(ctx context.Context, config *Config, filesystem fs.FS, funcMap template
115115
return &instance, nil
116116
}
117117

118+
func (s *Service) RegisterMux(mux *http.ServeMux, templateFunc TemplateFunc) {
119+
mux.Handle(s.pathPrefix+"/", http.StripPrefix(s.pathPrefix, s.NewServeMux(templateFunc)))
120+
}
121+
118122
func (s *Service) NewServeMux(templateFunc TemplateFunc) *http.ServeMux {
119123
mux := http.NewServeMux()
120124

0 commit comments

Comments
 (0)