public function setRecipientDataParam($recipient_folder, $recipient_list, RecipientIdentifier $recipientIdentifier, array $recipient_ids, array $transientData) { $recipientDataArray = array(); $optionalDataArray = array(); $recipientCount = count($recipient_ids); for ($cnt = 0; $cnt < $recipientCount; $cnt++) { $optionalDataArray = null; $recipient = null; $recipient = new Recipient(); $recipient->setListName($recipient_folder, $recipient_list); $recipient->setEmailFormat(EmailFormat::NO_FORMAT); $recipient->{"set" . $recipientIdentifier->getValue()}($recipient_ids[$cnt]); // Build optionalData array foreach ($transientData[$cnt] as $name => $value) { $optionalData = null; $optionalData = new optionalData(); $optionalData->setName($name); $optionalData->setValue($value); $optionalDataArray[] = $optionalData; } $recipientDataObj = new RecipientData(); $recipientDataObj->setRecipient($recipient); $recipientDataObj->setOptionalData($optionalDataArray); $this->params['recipientData'][] = $recipientDataObj; } }