MCPcopy Create free account
hub / github.com/couchbase/cbft / findCouchbaseSourceNames

Function findCouchbaseSourceNames

rest_auth.go:487–517  ·  view source on GitHub ↗
(r requestParser, indexName string,
	indexDefsByName map[string]*cbgt.IndexDef)

Source from the content-addressed store, hash-verified

485}
486
487func findCouchbaseSourceNames(r requestParser, indexName string,
488 indexDefsByName map[string]*cbgt.IndexDef) (rv []string, err error) {
489 indexDef, err := r.GetIndexDef()
490 if err != nil || indexDef == nil {
491 return nil, err
492 }
493
494 if indexDef.Type == "fulltext-index" {
495 t, reqType := r.GetRequest()
496 req := t.(*http.Request)
497 // TODO handle this for RPCs.
498 if reqType == "REST" {
499 sourceType, _ := rest.ExtractSourceTypeName(req, indexDef, indexName)
500 if sourceType == cbgt.SOURCE_GOCOUCHBASE || sourceType == cbgt.SOURCE_GOCBCORE {
501 return getSourceNamesFromIndexDef(indexDef)
502 }
503 }
504 } else if indexDef.Type == "fulltext-alias" {
505 // create a copy of indexDefNames with the new one added
506 futureIndexDefsByName := make(map[string]*cbgt.IndexDef,
507 len(indexDefsByName)+1)
508 for k, v := range indexDefsByName {
509 futureIndexDefsByName[k] = v
510 }
511 futureIndexDefsByName[indexName] = indexDef
512
513 return sourceNamesForAlias(indexName, futureIndexDefsByName, 0)
514 }
515
516 return nil, nil
517}
518
519type CBAuthBasicLogin struct {
520 mgr *cbgt.Manager

Callers 1

sourceNamesFromReqFunction · 0.85

Calls 4

sourceNamesForAliasFunction · 0.85
GetIndexDefMethod · 0.65
GetRequestMethod · 0.65

Tested by

no test coverage detected