MCPcopy
hub / github.com/NVIDIA/aistore / _parseReqTry

Method _parseReqTry

ais/proxy.go:342–359  ·  view source on GitHub ↗

http /bucket and /objects handlers // parse request + init/lookup bucket (combo)

(w http.ResponseWriter, r *http.Request, bckArgs *bckInitArgs)

Source from the content-addressed store, hash-verified

340
341// parse request + init/lookup bucket (combo)
342func (p *proxy) _parseReqTry(w http.ResponseWriter, r *http.Request, bckArgs *bckInitArgs) (bck *cluster.Bck,
343 objName string, err error) {
344 apireq := apiReqAlloc(2, apc.URLPathObjects.L, false)
345 if err = p.parseReq(w, r, apireq); err != nil {
346 apiReqFree(apireq)
347 return
348 }
349 bckArgs.bck, bckArgs.query = apireq.bck, apireq.query
350 // both ais package caller and remote user
351 bckArgs.headRemB = bckArgs.headRemB && shouldHeadRemB()
352
353 bck, err = bckArgs.initAndTry(apireq.bck.Name)
354 objName = apireq.items[1]
355
356 apiReqFree(apireq)
357 freeInitBckArgs(bckArgs) // caller does alloc
358 return
359}
360
361// verb /v1/buckets/
362func (p *proxy) bucketHandler(w http.ResponseWriter, r *http.Request) {

Callers 3

httpobjdeleteMethod · 0.95
httpobjheadMethod · 0.95
httpobjpatchMethod · 0.95

Calls 6

apiReqAllocFunction · 0.85
apiReqFreeFunction · 0.85
shouldHeadRemBFunction · 0.85
freeInitBckArgsFunction · 0.85
parseReqMethod · 0.80
initAndTryMethod · 0.80

Tested by

no test coverage detected