1: <?php
2: namespace Sotr\Crypto;
3:
4: use Psr\Http\Message\RequestInterface;
5:
6: use Sotr\Crypto\TimestampNonceGenerator;
7: use Sotr\Crypto\NonceGeneratorInterface;
8:
9: abstract class AbstractRequestSigner implements RequestSignerInterface
10: {
11: 12: 13: 14: 15:
16: protected $nonceGenerator;
17:
18: public function __construct()
19: {
20: $this->nonceGenerator = new TimestampNonceGenerator();
21: }
22:
23: abstract public function sign(RequestInterface $request, $key, $secret, $customerId = null);
24:
25: 26: 27: 28: 29: 30:
31: public function setNonceGenerator(NonceGeneratorInterface $generator)
32: {
33: $this->nonceGenerator = $generator;
34: }
35: }
36: