(name string, config *ClientConfig)
| 31 | } |
| 32 | |
| 33 | func (f *FactoryManager) GetClient(name string, config *ClientConfig) (IClientDriver, error) { |
| 34 | factory, ok := f.factory.Get(name) |
| 35 | if !ok { |
| 36 | return nil, fmt.Errorf("client driver %s not found", name) |
| 37 | } |
| 38 | driver, err := factory.Create(config) |
| 39 | if err != nil { |
| 40 | return nil, fmt.Errorf("create client driver error: %w", err) |
| 41 | } |
| 42 | return driver, nil |
| 43 | } |
| 44 | |
| 45 | type IFactory interface { |
| 46 | Create(config *ClientConfig) (IClientDriver, error) |