Exemplo n.º 1
0
/**
 * Get Transaction Action Sample
 * 
 * Returns all details of a transaction.
 *   
 * @param Amazon_FPS_Interface $service instance of Amazon_FPS_Interface
 * @param mixed $request Amazon_FPS_Model_GetTransaction or array of parameters
 */
function invokeGetTransaction(Amazon_FPS_Interface $service, $request)
{
    try {
        $response = $service->getTransaction($request);
        echo "Service Response\n";
        echo "=============================================================================\n";
        echo "        GetTransactionResponse\n";
        if ($response->isSetGetTransactionResult()) {
            echo "            GetTransactionResult\n";
            $getTransactionResult = $response->getGetTransactionResult();
            if ($getTransactionResult->isSetTransaction()) {
                echo "                Transaction\n";
                $transaction = $getTransactionResult->getTransaction();
                if ($transaction->isSetTransactionId()) {
                    echo "                    TransactionId\n";
                    echo "                        " . $transaction->getTransactionId() . "\n";
                }
                if ($transaction->isSetCallerReference()) {
                    echo "                    CallerReference\n";
                    echo "                        " . $transaction->getCallerReference() . "\n";
                }
                if ($transaction->isSetCallerDescription()) {
                    echo "                    CallerDescription\n";
                    echo "                        " . $transaction->getCallerDescription() . "\n";
                }
                if ($transaction->isSetSenderDescription()) {
                    echo "                    SenderDescription\n";
                    echo "                        " . $transaction->getSenderDescription() . "\n";
                }
                if ($transaction->isSetDateReceived()) {
                    echo "                    DateReceived\n";
                    echo "                        " . $transaction->getDateReceived() . "\n";
                }
                if ($transaction->isSetDateCompleted()) {
                    echo "                    DateCompleted\n";
                    echo "                        " . $transaction->getDateCompleted() . "\n";
                }
                if ($transaction->isSetTransactionAmount()) {
                    echo "                    TransactionAmount\n";
                    $transactionAmount = $transaction->getTransactionAmount();
                    if ($transactionAmount->isSetCurrencyCode()) {
                        echo "                        CurrencyCode\n";
                        echo "                            " . $transactionAmount->getCurrencyCode() . "\n";
                    }
                    if ($transactionAmount->isSetValue()) {
                        echo "                        Value\n";
                        echo "                            " . $transactionAmount->getValue() . "\n";
                    }
                }
                if ($transaction->isSetFPSFees()) {
                    echo "                    FPSFees\n";
                    $FPSFees = $transaction->getFPSFees();
                    if ($FPSFees->isSetCurrencyCode()) {
                        echo "                        CurrencyCode\n";
                        echo "                            " . $FPSFees->getCurrencyCode() . "\n";
                    }
                    if ($FPSFees->isSetValue()) {
                        echo "                        Value\n";
                        echo "                            " . $FPSFees->getValue() . "\n";
                    }
                }
                if ($transaction->isSetMarketplaceFees()) {
                    echo "                    MarketplaceFees\n";
                    $marketplaceFees = $transaction->getMarketplaceFees();
                    if ($marketplaceFees->isSetCurrencyCode()) {
                        echo "                        CurrencyCode\n";
                        echo "                            " . $marketplaceFees->getCurrencyCode() . "\n";
                    }
                    if ($marketplaceFees->isSetValue()) {
                        echo "                        Value\n";
                        echo "                            " . $marketplaceFees->getValue() . "\n";
                    }
                }
                if ($transaction->isSetFPSFeesPaidBy()) {
                    echo "                    FPSFeesPaidBy\n";
                    echo "                        " . $transaction->getFPSFeesPaidBy() . "\n";
                }
                if ($transaction->isSetSenderTokenId()) {
                    echo "                    SenderTokenId\n";
                    echo "                        " . $transaction->getSenderTokenId() . "\n";
                }
                if ($transaction->isSetRecipientTokenId()) {
                    echo "                    RecipientTokenId\n";
                    echo "                        " . $transaction->getRecipientTokenId() . "\n";
                }
                if ($transaction->isSetPrepaidInstrumentId()) {
                    echo "                    PrepaidInstrumentId\n";
                    echo "                        " . $transaction->getPrepaidInstrumentId() . "\n";
                }
                if ($transaction->isSetCreditInstrumentId()) {
                    echo "                    CreditInstrumentId\n";
                    echo "                        " . $transaction->getCreditInstrumentId() . "\n";
                }
                if ($transaction->isSetFPSOperation()) {
                    echo "                    FPSOperation\n";
                    echo "                        " . $transaction->getFPSOperation() . "\n";
                }
                if ($transaction->isSetPaymentMethod()) {
                    echo "                    PaymentMethod\n";
                    echo "                        " . $transaction->getPaymentMethod() . "\n";
                }
                if ($transaction->isSetTransactionStatus()) {
                    echo "                    TransactionStatus\n";
                    echo "                        " . $transaction->getTransactionStatus() . "\n";
                }
                if ($transaction->isSetStatusCode()) {
                    echo "                    StatusCode\n";
                    echo "                        " . $transaction->getStatusCode() . "\n";
                }
                if ($transaction->isSetStatusMessage()) {
                    echo "                    StatusMessage\n";
                    echo "                        " . $transaction->getStatusMessage() . "\n";
                }
                if ($transaction->isSetSenderName()) {
                    echo "                    SenderName\n";
                    echo "                        " . $transaction->getSenderName() . "\n";
                }
                if ($transaction->isSetSenderEmail()) {
                    echo "                    SenderEmail\n";
                    echo "                        " . $transaction->getSenderEmail() . "\n";
                }
                if ($transaction->isSetCallerName()) {
                    echo "                    CallerName\n";
                    echo "                        " . $transaction->getCallerName() . "\n";
                }
                if ($transaction->isSetRecipientName()) {
                    echo "                    RecipientName\n";
                    echo "                        " . $transaction->getRecipientName() . "\n";
                }
                if ($transaction->isSetRecipientEmail()) {
                    echo "                    RecipientEmail\n";
                    echo "                        " . $transaction->getRecipientEmail() . "\n";
                }
                $relatedTransactionList = $transaction->getRelatedTransaction();
                foreach ($relatedTransactionList as $relatedTransaction) {
                    echo "                    RelatedTransaction\n";
                    if ($relatedTransaction->isSetTransactionId()) {
                        echo "                        TransactionId\n";
                        echo "                            " . $relatedTransaction->getTransactionId() . "\n";
                    }
                    if ($relatedTransaction->isSetRelationType()) {
                        echo "                        RelationType\n";
                        echo "                            " . $relatedTransaction->getRelationType() . "\n";
                    }
                }
                $statusHistoryList = $transaction->getStatusHistory();
                foreach ($statusHistoryList as $statusHistory) {
                    echo "                    StatusHistory\n";
                    if ($statusHistory->isSetDate()) {
                        echo "                        Date\n";
                        echo "                            " . $statusHistory->getDate() . "\n";
                    }
                    if ($statusHistory->isSetTransactionStatus()) {
                        echo "                        TransactionStatus\n";
                        echo "                            " . $statusHistory->getTransactionStatus() . "\n";
                    }
                    if ($statusHistory->isSetStatusCode()) {
                        echo "                        StatusCode\n";
                        echo "                            " . $statusHistory->getStatusCode() . "\n";
                    }
                    if ($statusHistory->isSetAmount()) {
                        echo "                        Amount\n";
                        $amount = $statusHistory->getAmount();
                        if ($amount->isSetCurrencyCode()) {
                            echo "                            CurrencyCode\n";
                            echo "                                " . $amount->getCurrencyCode() . "\n";
                        }
                        if ($amount->isSetValue()) {
                            echo "                            Value\n";
                            echo "                                " . $amount->getValue() . "\n";
                        }
                    }
                }
            }
        }
        if ($response->isSetResponseMetadata()) {
            echo "            ResponseMetadata\n";
            $responseMetadata = $response->getResponseMetadata();
            if ($responseMetadata->isSetRequestId()) {
                echo "                RequestId\n";
                echo "                    " . $responseMetadata->getRequestId() . "\n";
            }
        }
    } catch (Amazon_FPS_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";
    }
}