/**
 * Get Feed Submission List Action Sample
 * returns a list of feed submission identifiers and their associated metadata
 *   
 * @param MarketplaceWebService_Interface $service instance of MarketplaceWebService_Interface
 * @param mixed $request MarketplaceWebService_Model_GetFeedSubmissionList or array of parameters
 */
function invokeGetFeedSubmissionList(MarketplaceWebService_Interface $service, $request)
{
    try {
        $response = $service->getFeedSubmissionList($request);
        echo "<h1>Service Response</h1>\n";
        if ($response->isSetGetFeedSubmissionListResult()) {
            $getFeedSubmissionListResult = $response->getGetFeedSubmissionListResult();
            $feedSubmissionInfoList = $getFeedSubmissionListResult->getFeedSubmissionInfoList();
            foreach ($feedSubmissionInfoList as $feedSubmissionInfo) {
                echo "<h2>FeedSubmissionInfo</h2>\n";
                if ($feedSubmissionInfo->isSetFeedSubmissionId()) {
                    echo "<p>FeedSubmissionId:\n";
                    echo " " . $feedSubmissionInfo->getFeedSubmissionId() . "</p>\n";
                }
                if ($feedSubmissionInfo->isSetFeedType()) {
                    echo "<p>FeedType:\n";
                    echo " " . $feedSubmissionInfo->getFeedType() . "</p>\n";
                }
                if ($feedSubmissionInfo->isSetSubmittedDate()) {
                    echo "<p>SubmittedDate:\n";
                    echo " " . $feedSubmissionInfo->getSubmittedDate()->format(DATE_FORMAT) . "</p>\n";
                }
                if ($feedSubmissionInfo->isSetFeedProcessingStatus()) {
                    echo "<p>FeedProcessingStatus:\n";
                    echo " " . $feedSubmissionInfo->getFeedProcessingStatus() . "</p>\n";
                }
                if ($feedSubmissionInfo->isSetStartedProcessingDate()) {
                    echo "<p>StartedProcessingDate:\n";
                    echo " " . $feedSubmissionInfo->getStartedProcessingDate()->format(DATE_FORMAT) . "</p>\n";
                }
                if ($feedSubmissionInfo->isSetCompletedProcessingDate()) {
                    echo "<p>CompletedProcessingDate:\n";
                    echo " " . $feedSubmissionInfo->getCompletedProcessingDate()->format(DATE_FORMAT) . "</p>\n";
                }
            }
        }
    } catch (MarketplaceWebService_Exception $ex) {
        echo "Caught Exception: " . $ex->getMessage() . "\n";
        echo "Response Status Code: " . $ex->getStatusCode() . "\n";
        echo "Error Code: " . $ex->getErrorCode() . "\n";
        echo "Error Type: " . $ex->getErrorType() . "\n";
        echo "Request ID: " . $ex->getRequestId() . "\n";
        echo "XML: " . $ex->getXML() . "\n";
    }
}
/**
 * Get Feed Submission List Action Sample
 * returns a list of feed submission identifiers and their associated metadata
 *   
 * @param MarketplaceWebService_Interface $service instance of MarketplaceWebService_Interface
 * @param mixed $request MarketplaceWebService_Model_GetFeedSubmissionList or array of parameters
 */
function invokeGetFeedSubmissionList(MarketplaceWebService_Interface $service, $request)
{
    try {
        $response = $service->getFeedSubmissionList($request);
        echo "Service Response\n";
        echo "=============================================================================\n";
        echo "        GetFeedSubmissionListResponse\n";
        if ($response->isSetGetFeedSubmissionListResult()) {
            echo "            GetFeedSubmissionListResult\n";
            $getFeedSubmissionListResult = $response->getGetFeedSubmissionListResult();
            if ($getFeedSubmissionListResult->isSetNextToken()) {
                echo "                NextToken\n";
                echo "                    " . $getFeedSubmissionListResult->getNextToken() . "\n";
            }
            if ($getFeedSubmissionListResult->isSetHasNext()) {
                echo "                HasNext\n";
                echo "                    " . $getFeedSubmissionListResult->getHasNext() . "\n";
            }
            $feedSubmissionInfoList = $getFeedSubmissionListResult->getFeedSubmissionInfoList();
            foreach ($feedSubmissionInfoList as $feedSubmissionInfo) {
                echo "                FeedSubmissionInfo\n";
                if ($feedSubmissionInfo->isSetFeedSubmissionId()) {
                    echo "                    FeedSubmissionId\n";
                    echo "                        " . $feedSubmissionInfo->getFeedSubmissionId() . "\n";
                }
                if ($feedSubmissionInfo->isSetFeedType()) {
                    echo "                    FeedType\n";
                    echo "                        " . $feedSubmissionInfo->getFeedType() . "\n";
                }
                if ($feedSubmissionInfo->isSetSubmittedDate()) {
                    echo "                    SubmittedDate\n";
                    echo "                        " . $feedSubmissionInfo->getSubmittedDate()->format(DATE_FORMAT) . "\n";
                }
                if ($feedSubmissionInfo->isSetFeedProcessingStatus()) {
                    echo "                    FeedProcessingStatus\n";
                    echo "                        " . $feedSubmissionInfo->getFeedProcessingStatus() . "\n";
                }
                if ($feedSubmissionInfo->isSetStartedProcessingDate()) {
                    echo "                    StartedProcessingDate\n";
                    echo "                        " . $feedSubmissionInfo->getStartedProcessingDate()->format(DATE_FORMAT) . "\n";
                }
                if ($feedSubmissionInfo->isSetCompletedProcessingDate()) {
                    echo "                    CompletedProcessingDate\n";
                    echo "                        " . $feedSubmissionInfo->getCompletedProcessingDate()->format(DATE_FORMAT) . "\n";
                }
            }
        }
        if ($response->isSetResponseMetadata()) {
            echo "            ResponseMetadata\n";
            $responseMetadata = $response->getResponseMetadata();
            if ($responseMetadata->isSetRequestId()) {
                echo "                RequestId\n";
                echo "                    " . $responseMetadata->getRequestId() . "\n";
            }
        }
    } catch (MarketplaceWebService_Exception $ex) {
        echo "Caught Exception: " . $ex->getMessage() . "\n";
        echo "Response Status Code: " . $ex->getStatusCode() . "\n";
        echo "Error Code: " . $ex->getErrorCode() . "\n";
        echo "Error Type: " . $ex->getErrorType() . "\n";
        echo "Request ID: " . $ex->getRequestId() . "\n";
        echo "XML: " . $ex->getXML() . "\n";
    }
}
 /**
  * Get Feed Submission List
  * returns a list of feed submission identifiers and their associated metadata
  *   
  * @param MarketplaceWebService_Interface $service instance of MarketplaceWebService_Interface
  * @param mixed $request MarketplaceWebService_Model_GetFeedSubmissionList or array of parameters
  */
 function invokeGetFeedSubmissionList(MarketplaceWebService_Interface $service, $request)
 {
     $feeds = array();
     try {
         $response = $service->getFeedSubmissionList($request);
         if ($response->isSetGetFeedSubmissionListResult()) {
             $getFeedSubmissionListResult = $response->getGetFeedSubmissionListResult();
             // if ($getFeedSubmissionListResult->isSetNextToken())
             // if ($getFeedSubmissionListResult->isSetHasNext())
             $feedSubmissionInfoList = $getFeedSubmissionListResult->getFeedSubmissionInfoList();
             foreach ($feedSubmissionInfoList as $feedSubmissionInfo) {
                 $feed = new stdClass();
                 $feed->FeedSubmissionId = $feedSubmissionInfo->getFeedSubmissionId();
                 $feed->FeedType = $feedSubmissionInfo->getFeedType();
                 $feed->FeedProcessingStatus = $feedSubmissionInfo->getFeedProcessingStatus();
                 if ($feedSubmissionInfo->isSetSubmittedDate()) {
                     $feed->SubmittedDate = $feedSubmissionInfo->getSubmittedDate()->format(DATE_FORMAT);
                 }
                 if ($feedSubmissionInfo->isSetStartedProcessingDate()) {
                     $feed->StartedProcessingDate = $feedSubmissionInfo->getStartedProcessingDate()->format(DATE_FORMAT);
                 }
                 if ($feedSubmissionInfo->isSetCompletedProcessingDate()) {
                     $feed->CompletedProcessingDate = $feedSubmissionInfo->getCompletedProcessingDate()->format(DATE_FORMAT);
                 }
                 $feeds[] = $feed;
             }
         }
     } catch (MarketplaceWebService_Exception $ex) {
         // echo("Caught Exception: " . $ex->getMessage() . "\n");
         // echo("Response Status Code: " . $ex->getStatusCode() . "\n");
         // echo("Error Code: " . $ex->getErrorCode() . "\n");
         // echo("Error Type: " . $ex->getErrorType() . "\n");
         // echo("Request ID: " . $ex->getRequestId() . "\n");
         // echo("XML: " . $ex->getXML() . "\n");
         // echo("ResponseHeaderMetadata: " . $ex->getResponseHeaderMetadata() . "\n");
         $error = new stdClass();
         $error->ErrorMessage = $ex->getMessage();
         $error->ErrorCode = $ex->getErrorCode();
         $error->StatusCode = $ex->getStatusCode();
         return $error;
     }
     // log to db - parsed request
     $this->dblogger->updateLog(array('result' => json_encode($feeds), 'success' => 'Success'));
     return $feeds;
 }