コード例 #1
0
        private void MarkTransactionAsCompleted(
            SteamTransactionEntity transaction
            )
        {
            transaction.state = SteamTransactionEntity.CompletedState;
            transaction.Save();

            Log.Info("Marked transaction as completed.");
        }
コード例 #2
0
        private void MarkTransactionAsAuthorized(
            SteamTransactionEntity transaction
            )
        {
            transaction.state = SteamTransactionEntity.AuthorizedState;
            transaction.Save();

            Log.Info("Marked transaction as authorized.");
        }
コード例 #3
0
        private void MarkTransactionAsInitiated(
            SteamTransactionEntity transaction,
            Response response
            )
        {
            transaction.state         = SteamTransactionEntity.InitiatedState;
            transaction.transactionId = ulong.Parse(
                response["response"]["params"]["transid"].AsString
                );
            transaction.Save();

            Log.Info("Marked transaction as initiated.");
        }
コード例 #4
0
        private void StoreFinalizationErrorAndThrow(
            SteamTransactionEntity transaction,
            Response response
            )
        {
            transaction.state = SteamTransactionEntity.FinalizationErrorState;
            transaction.errorCode
                = response["response"]["error"]["errorcode"].AsString;
            transaction.errorDescription
                = response["response"]["error"]["errordesc"].AsString;
            transaction.Save();

            throw new SteamMicrotransactionException(
                      "Steam rejected transaction finalization.",
                      transaction.orderId,
                      transaction.errorCode,
                      transaction.errorDescription
                      );
        }
コード例 #5
0
 private void StoreNewTransaction(SteamTransactionEntity transaction)
 {
     transaction.state = SteamTransactionEntity.BeingPreparedState;
     transaction.Save();
 }