bouncer/internal/queue/queue.go

33 lines
517 B
Go

package queue
import (
"net/http"
"forge.cadoles.com/Cadoles/go-proxy"
)
type Queue struct {
repository Repository
}
func (q *Queue) Middleware() proxy.Middleware {
return func(next http.Handler) http.Handler {
fn := func(w http.ResponseWriter, r *http.Request) {
next.ServeHTTP(w, r)
}
return http.HandlerFunc(fn)
}
}
func New(repository Repository, funcs ...OptionFunc) *Queue {
opts := defaultOptions()
for _, fn := range funcs {
fn(opts)
}
return &Queue{
repository: repository,
}
}