/**
  * Poll the API for the status of the Refund Request, and continue
  * once the status has been updated
  * Throw an error if the status is not equal to OPEN
  *
  * @param string $amazonRefundReferenceId
  *        	refund transaction to query
  *        	
  * @return No value
  */
 private function _waitForProviderCreditReversalSummaryList($amazonRefundReferenceId)
 {
     $response = null;
     $providerCreditReversalSummaryList = null;
     $maxSleepTime = 60;
     while (is_null($providerCreditReversalSummaryList) && $maxSleepTime > 0) {
         sleep(5);
         $maxSleepTime -= 5;
         $response = $this->callStepAndCheckForException('getRefundDetails', array($amazonRefundReferenceId));
         $providerCreditReversalSummaryList = $response->getGetRefundDetailsResult()->getRefundDetails()->getProviderCreditReversalSummaryList();
     }
     printGetRefundDetailsResponse($response);
     validateThatRefundIsCompleted($response->getGetRefundDetailsResult()->getRefundDetails());
     if (is_null($providerCreditReversalSummaryList)) {
         throw new ErrorException("No providerCreditReversalSummaryList found in getRefundDetails response");
     }
     return $providerCreditReversalSummaryList;
 }
 /**
  * Poll the API for the status of the Refund Request, and continue
  * once the status has been updated
  * Throw an error if the status is not equal to OPEN
  *
  * @param string $amazonRefundReferenceId refund transaction to query
  *
  * @return No value
  */
 private function _waitUntilRefundProcessingIsCompleted($amazonRefundReferenceId)
 {
     $response = $this->callStepAndCheckForException('waitUntilRefundProcessingIsCompleted', array($amazonRefundReferenceId));
     printGetRefundDetailsResponse($response);
     validateThatRefundIsCompleted($response->getGetRefundDetailsResult()->getRefundDetails());
 }