protected function addSignatureHeader(RequestInterface $request)
{
if (null === $this->privateKey) {
throw new \Exception('Please set your Private Key');
}
if (true == property_exists($this->network, 'isPortRequiredInUrl')) {
if ($this->network->isPortRequiredInUrl === true) {
$url = $request->getUriWithPort();
} else {
$url = $request->getUri();
}
} else {
$url = $request->getUri();
}
$message = sprintf('%s%s', $url, $request->getBody());
$signature = $this->privateKey->sign($message);
$request->setHeader('x-signature', $signature);
}