type volumeDriverRegistry … func newVolumeDriverRegistry(nameToInitFunc map[string]func(map[string]string) (VolumeDriver, error)) *volumeDriverRegistry { … } func (v *volumeDriverRegistry) Get(name string) (VolumeDriver, error) { … } func (v *volumeDriverRegistry) Add(name string, init func(map[string]string) (VolumeDriver, error)) error { … } func (v *volumeDriverRegistry) Register(name string, params map[string]string) error { … } func (v *volumeDriverRegistry) Shutdown() error { … }