getter.go 709 B

1234567891011121314151617181920212223242526272829303132333435
  1. package app
  2. import (
  3. "errors"
  4. "fmt"
  5. "github.com/zu1k/proxypool/config"
  6. "github.com/zu1k/proxypool/getter"
  7. )
  8. var Getters = make([]getter.Getter, 0)
  9. func InitConfigAndGetters(path string) (err error) {
  10. c, err := config.Parse(path)
  11. if err != nil {
  12. return err
  13. }
  14. if c == nil {
  15. return errors.New("no sources")
  16. }
  17. InitGetters(c.Sources)
  18. return nil
  19. }
  20. func InitGetters(sources []config.Source) {
  21. Getters = make([]getter.Getter, 0)
  22. for _, source := range sources {
  23. g, err := getter.NewGetter(source.Type, source.Options)
  24. if err == nil && g != nil {
  25. Getters = append(Getters, g)
  26. fmt.Println("init getter:", source.Type, source.Options)
  27. }
  28. }
  29. fmt.Println("Getter count:", len(Getters))
  30. }