forked from TrueCloudLab/restic
location: make genericBackendFactory private
This commit is contained in:
parent
3325a7c862
commit
19ac12d95b
1 changed files with 9 additions and 9 deletions
|
@ -36,35 +36,35 @@ type Factory interface {
|
|||
Open(ctx context.Context, cfg interface{}, rt http.RoundTripper, lim limiter.Limiter) (restic.Backend, error)
|
||||
}
|
||||
|
||||
type GenericBackendFactory[C any, T restic.Backend] struct {
|
||||
type genericBackendFactory[C any, T restic.Backend] struct {
|
||||
parseConfigFn func(s string) (*C, error)
|
||||
stripPasswordFn func(s string) string
|
||||
createFn func(ctx context.Context, cfg C, rt http.RoundTripper, lim limiter.Limiter) (T, error)
|
||||
openFn func(ctx context.Context, cfg C, rt http.RoundTripper, lim limiter.Limiter) (T, error)
|
||||
}
|
||||
|
||||
func (f *GenericBackendFactory[C, T]) ParseConfig(s string) (interface{}, error) {
|
||||
func (f *genericBackendFactory[C, T]) ParseConfig(s string) (interface{}, error) {
|
||||
return f.parseConfigFn(s)
|
||||
}
|
||||
func (f *GenericBackendFactory[C, T]) StripPassword(s string) string {
|
||||
func (f *genericBackendFactory[C, T]) StripPassword(s string) string {
|
||||
if f.stripPasswordFn != nil {
|
||||
return f.stripPasswordFn(s)
|
||||
}
|
||||
return s
|
||||
}
|
||||
func (f *GenericBackendFactory[C, T]) Create(ctx context.Context, cfg interface{}, rt http.RoundTripper, lim limiter.Limiter) (restic.Backend, error) {
|
||||
func (f *genericBackendFactory[C, T]) Create(ctx context.Context, cfg interface{}, rt http.RoundTripper, lim limiter.Limiter) (restic.Backend, error) {
|
||||
return f.createFn(ctx, *cfg.(*C), rt, lim)
|
||||
}
|
||||
func (f *GenericBackendFactory[C, T]) Open(ctx context.Context, cfg interface{}, rt http.RoundTripper, lim limiter.Limiter) (restic.Backend, error) {
|
||||
func (f *genericBackendFactory[C, T]) Open(ctx context.Context, cfg interface{}, rt http.RoundTripper, lim limiter.Limiter) (restic.Backend, error) {
|
||||
return f.openFn(ctx, *cfg.(*C), rt, lim)
|
||||
}
|
||||
|
||||
func NewHTTPBackendFactory[C any, T restic.Backend](parseConfigFn func(s string) (*C, error),
|
||||
stripPasswordFn func(s string) string,
|
||||
createFn func(ctx context.Context, cfg C, rt http.RoundTripper) (T, error),
|
||||
openFn func(ctx context.Context, cfg C, rt http.RoundTripper) (T, error)) *GenericBackendFactory[C, T] {
|
||||
openFn func(ctx context.Context, cfg C, rt http.RoundTripper) (T, error)) Factory {
|
||||
|
||||
return &GenericBackendFactory[C, T]{
|
||||
return &genericBackendFactory[C, T]{
|
||||
parseConfigFn: parseConfigFn,
|
||||
stripPasswordFn: stripPasswordFn,
|
||||
createFn: func(ctx context.Context, cfg C, rt http.RoundTripper, _ limiter.Limiter) (T, error) {
|
||||
|
@ -79,9 +79,9 @@ func NewHTTPBackendFactory[C any, T restic.Backend](parseConfigFn func(s string)
|
|||
func NewLimitedBackendFactory[C any, T restic.Backend](parseConfigFn func(s string) (*C, error),
|
||||
stripPasswordFn func(s string) string,
|
||||
createFn func(ctx context.Context, cfg C, lim limiter.Limiter) (T, error),
|
||||
openFn func(ctx context.Context, cfg C, lim limiter.Limiter) (T, error)) *GenericBackendFactory[C, T] {
|
||||
openFn func(ctx context.Context, cfg C, lim limiter.Limiter) (T, error)) Factory {
|
||||
|
||||
return &GenericBackendFactory[C, T]{
|
||||
return &genericBackendFactory[C, T]{
|
||||
parseConfigFn: parseConfigFn,
|
||||
stripPasswordFn: stripPasswordFn,
|
||||
createFn: func(ctx context.Context, cfg C, _ http.RoundTripper, lim limiter.Limiter) (T, error) {
|
||||
|
|
Loading…
Reference in a new issue