mirror of
https://github.com/go-gitea/gitea.git
synced 2026-03-10 11:05:50 +00:00
Principles: let the caller decide what it needs, but not let the framework (middleware) guess what it should do. Then a lot of hacky code can be removed. And some FIXMEs can be fixed. This PR introduces a new kind of middleware: "PreMiddleware", it will be executed before all other middlewares on the same routing level, then a route can declare its options for other middlewares. By the way, allow the workflow badge to be accessed by Basic or OAuth2 auth. Fixes: https://github.com/go-gitea/gitea/pull/36830 Fixes: https://github.com/go-gitea/gitea/issues/36859
29 lines
465 B
Go
29 lines
465 B
Go
// Copyright 2021 The Gitea Authors. All rights reserved.
|
|
// SPDX-License-Identifier: MIT
|
|
|
|
package routing
|
|
|
|
import (
|
|
"net/http"
|
|
"sync"
|
|
"time"
|
|
)
|
|
|
|
type requestRecord struct {
|
|
// index of the record in the records map
|
|
index uint64
|
|
|
|
// immutable fields
|
|
startTime time.Time
|
|
request *http.Request
|
|
responseWriter http.ResponseWriter
|
|
|
|
// mutex
|
|
lock sync.RWMutex
|
|
|
|
// mutable fields
|
|
isLongPolling bool
|
|
funcInfo *FuncInfo
|
|
panicError error
|
|
}
|