$startUploadJobResponse = $exchangeService->startUploadJob($startUploadJobRequest);
 print "Done\n";
 if (isset($startUploadJobResponse->errorMessage)) {
     foreach ($startUploadJobResponse->errorMessage->error as $error) {
         printf("%s: %s\n\n", $error->severity === BulkDataExchange\Enums\ErrorSeverity::C_ERROR ? 'Error' : 'Warning', $error->message);
     }
 }
 if ($startUploadJobResponse->ack !== 'Failure') {
     /**
      * Now wait for the job to be processed.
      */
     $getJobStatusRequest = new BulkDataExchange\Types\GetJobStatusRequest();
     $getJobStatusRequest->jobId = $createUploadJobResponse->jobId;
     $done = false;
     while (!$done) {
         $getJobStatusResponse = $exchangeService->getJobStatus($getJobStatusRequest);
         if (isset($getJobStatusResponse->errorMessage)) {
             foreach ($getJobStatusResponse->errorMessage->error as $error) {
                 printf("%s: %s\n\n", $error->severity === BulkDataExchange\Enums\ErrorSeverity::C_ERROR ? 'Error' : 'Warning', $error->message);
             }
         }
         if ($getJobStatusResponse->ack !== 'Failure') {
             printf("Status is %s\n", $getJobStatusResponse->jobProfile[0]->jobStatus);
             switch ($getJobStatusResponse->jobProfile[0]->jobStatus) {
                 case BulkDataExchange\Enums\JobStatus::C_COMPLETED:
                     $downloadFileReferenceId = $getJobStatusResponse->jobProfile[0]->fileReferenceId;
                     $done = true;
                     break;
                 case BulkDataExchange\Enums\JobStatus::C_ABORTED:
                 case BulkDataExchange\Enums\JobStatus::C_FAILED:
                     $done = true;