github.com/filecoin-project/bacalhau@v0.3.23-0.20230228154132-45c989550ace/pkg/verifier/util/utils.go (about) 1 package util 2 3 import ( 4 "context" 5 6 "github.com/filecoin-project/bacalhau/pkg/model" 7 "github.com/filecoin-project/bacalhau/pkg/system" 8 "github.com/filecoin-project/bacalhau/pkg/verifier" 9 "github.com/filecoin-project/bacalhau/pkg/verifier/deterministic" 10 "github.com/filecoin-project/bacalhau/pkg/verifier/noop" 11 ) 12 13 func NewStandardVerifiers( 14 ctx context.Context, 15 cm *system.CleanupManager, 16 encrypter verifier.EncrypterFunction, 17 decrypter verifier.DecrypterFunction, 18 ) (verifier.VerifierProvider, error) { 19 noopVerifier, err := noop.NewNoopVerifier( 20 ctx, 21 cm, 22 ) 23 if err != nil { 24 return nil, err 25 } 26 27 deterministicVerifier, err := deterministic.NewDeterministicVerifier( 28 ctx, 29 cm, 30 encrypter, 31 decrypter, 32 ) 33 if err != nil { 34 return nil, err 35 } 36 37 return model.NewMappedProvider(map[model.Verifier]verifier.Verifier{ 38 model.VerifierNoop: noopVerifier, 39 model.VerifierDeterministic: deterministicVerifier, 40 }), nil 41 } 42 43 func NewNoopVerifiers( 44 ctx context.Context, 45 cm *system.CleanupManager, 46 ) (verifier.VerifierProvider, error) { 47 noopVerifier, err := noop.NewNoopVerifier(ctx, cm) 48 if err != nil { 49 return nil, err 50 } 51 return model.NewNoopProvider[model.Verifier, verifier.Verifier](noopVerifier), nil 52 }