/**
* Prepares the parameters for the request
*
* @param OperationInterface $operation
*
* @return array
*/
protected function prepareRequestParams(OperationInterface $operation)
{
$baseRequestParams = array('Service' => 'AWSECommerceService', 'AWSAccessKeyId' => $this->configuration->getAccessKey(), 'AssociateTag' => $this->configuration->getAssociateTag(), 'Operation' => $operation->getName(), 'Version' => '2011-08-01', 'Timestamp' => Util::getTimeStamp());
$operationParams = $operation->getOperationParameter();
foreach ($operationParams as $key => $value) {
if (true === is_array($value)) {
$operationParams[$key] = implode(',', $value);
}
}
$fullParameterList = array_merge($baseRequestParams, $operationParams);
ksort($fullParameterList);
return $fullParameterList;
}