internal/serving/request.go (25 lines of code) (raw):

package serving import "net/http" // Request is a type that aggregates a serving itself, project lookup path and // a request subpath based on an incoming request to serve page. type Request struct { Serving Serving // Serving chosen to serve this request LookupPath *LookupPath // LookupPath contains pages project details SubPath string // Subpath is a URL path subcomponent for this request } // ServeFileHTTP forwards serving request handler to the serving itself func (s *Request) ServeFileHTTP(w http.ResponseWriter, r *http.Request) bool { handler := Handler{ Writer: w, Request: r, LookupPath: s.LookupPath, SubPath: s.SubPath, } return s.Serving.ServeFileHTTP(handler) } // ServeNotFoundHTTP forwards serving request handler to the serving itself func (s *Request) ServeNotFoundHTTP(w http.ResponseWriter, r *http.Request) { handler := Handler{ Writer: w, Request: r, LookupPath: s.LookupPath, SubPath: s.SubPath, } s.Serving.ServeNotFoundHTTP(handler) }