/**
  * Pretty prints the provided XML.
  * @param string $xml XML Blob
  */
 public static function printXML($xml)
 {
     $dom = DOMUtils::createDOM($xml);
     self::printDOM($dom);
 }
 */
function writeZipFile($bytes, $zipFilename)
{
    echo "<p><b>Writing File to {$zipFilename} : ";
    $handler = fopen($zipFilename, 'wb') or die("Failed. Cannot Open {$zipFilename} to Write!</b></p>");
    fwrite($handler, $bytes);
    fclose($handler);
    echo 'Success.</b></p>';
}
if (isset($_POST['taskReferenceId']) && isset($_POST['fileReferenceId'])) {
    $session = new LargeMerchantServiceSession('XML', 'XML', ENV_SANDBOX);
    $request = createDownloadRequest($_POST['taskReferenceId'], $_POST['fileReferenceId']);
    $response = $session->sendFileTransferServiceDownloadRequest($request);
    //$debug = $response;
    $responseXML = parseForResponseXML($response);
    $responseDOM = DOMUtils::createDOM($responseXML);
    PrintUtils::printDOM($responseDOM);
    $uuid = parseForXopIncludeUUID($responseDOM);
    $fileBytes = parseForFileBytes($uuid, $response);
    writeZipFile($fileBytes, 'DownloadFile.zip');
}
?>
<hr />
<a href="./../index.php">Index</a>
<?php 
if (!empty($debug)) {
    ?>
<pre>
<?php 
    echo htmlspecialchars($debug);
    ?>