@cryptotaxi247 / kubo / commits / 16ed07b99

Close reprovider in the provider system

License: MIT Signed-off-by: Michael Avila <davidmichaelavila@gmail.com>

Michael Avila committed May 6, 2019 at 11:46 UTC 16ed07b995c1183e47bae2e41a1b35c107c50a8d
2 files changed +16 -2
provider/provider.go
+2
@@ -30,4 +30,6 @@ type Reprovider interface {
30 Run()
31 // Trigger a reprovide
32 Trigger(context.Context) error
33 + // Close stops the reprovider
34 + Close() error
35 }
provider/system.go
+14 -2
@@ -32,8 +32,20 @@ func (s *system) Run() {
32
33 // Close the provider and reprovider
34 func (s *system) Close() error {
35 - // TODO: Close reprovider here
36 - return s.provider.Close()
35 + var errs []error
36 +
37 + if err := s.provider.Close(); err != nil {
38 + errs = append(errs, err)
39 + }
40 +
41 + if err := s.reprovider.Close(); err != nil {
42 + errs = append(errs, err)
43 + }
44 +
45 + if len(errs) > 0 {
46 + return errs[0]
47 + }
48 + return nil
49 }
50
51 // Provide a value