Bump sigs.k8s.io/controller-runtime to v0.14.4 (#5507)

* Bump sigs.k8s.io/controller-runtime to v0.14.4

* Update gofmt
This commit is contained in:
hongming
2023-02-08 14:06:15 +08:00
committed by GitHub
parent 129e6fbec3
commit 1c49fcd57e
1404 changed files with 141422 additions and 47769 deletions

View File

@@ -19,15 +19,19 @@ package cached
import (
"sync"
openapi_v3 "github.com/google/gnostic/openapiv3"
"k8s.io/client-go/openapi"
)
type groupversion struct {
delegate openapi.GroupVersion
once sync.Once
doc *openapi_v3.Document
err error
lock sync.Mutex
docs map[string]docInfo
}
type docInfo struct {
data []byte
err error
}
func newGroupVersion(delegate openapi.GroupVersion) *groupversion {
@@ -36,10 +40,19 @@ func newGroupVersion(delegate openapi.GroupVersion) *groupversion {
}
}
func (g *groupversion) Schema() (*openapi_v3.Document, error) {
g.once.Do(func() {
g.doc, g.err = g.delegate.Schema()
})
func (g *groupversion) Schema(contentType string) ([]byte, error) {
g.lock.Lock()
defer g.lock.Unlock()
return g.doc, g.err
cachedInfo, ok := g.docs[contentType]
if !ok {
if g.docs == nil {
g.docs = make(map[string]docInfo)
}
cachedInfo.data, cachedInfo.err = g.delegate.Schema(contentType)
g.docs[contentType] = cachedInfo
}
return cachedInfo.data, cachedInfo.err
}