File: registry.go

package info (click to toggle)
golang-github-viant-toolbox 0.33.2-4
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, forky, sid, trixie
  • size: 1,280 kB
  • sloc: makefile: 16
file content (22 lines) | stat: -rw-r--r-- 450 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
package storage

type registry struct {
	Registry map[string]Provider
}

func (p *registry) Get(namespace string) func(credentialFile string) (Service, error) {
	return p.Registry[namespace]
}

var registrySingleton *registry

//Registry returns new provider
func Registry() *registry {
	if registrySingleton != nil {
		return registrySingleton
	}
	registrySingleton = &registry{
		Registry: make(map[string]Provider),
	}
	return registrySingleton
}