Class Transaction#
Defined in File Transaction.cs
Inheritance Relationships#
Base Type#
public xbe.sdk.EntityBase
(Class EntityBase)
Class Documentation#
- class xbe.sdk.Models.Transaction : xbe.sdk.EntityBase#
Describes a transfer of resources two parties, a sender and a receiver. Transactions may include resources owned by both sender and recipient.In such cases, a trade is performed.In the event that the sender or recipient are specified as
null
, the transaction will perform a populate or consume action, respectively.If the user creating the transaction is the sender, their approval is automatically implied and granted. If the recipient makes any changes to the transaction the sender must approve those changes before proceeding.In the event a transaction is created by a trusted role user and both sender/receiver approval is set as
true
, the transaction is automatically executed without notifying the affected parties.Cancelled or completed transactions cannot be modified. Cancelled transactions will not be executed. Only transactions that have been approved by both parties (or a trusted role) will be executed.
Cancelled or failed transactions may be periodically removed from the database.Transactions with any other state are permanently stored.
A note on performance.Given the sheer volume of transactions and the speed at which they must be processed, record level ACLs are not used.Instead, class-level ACLs are used with explicit permission verification implemented as code.
Properties
- TransactionApproval Approval { get; set; }#
The transaction’s current approval status for each party.
- string From { get; set; }#
The unique identifier of the persona that is sending resources to a recipient persona. If
undefined
the user must be a trusted role.
- string To { get; set; }#
The unique identifier of the persona is receiving the resources from the sender. If
undefined
the resources will be destroyed.
- PersonaResource > Resources { get; set; }#
The list of resources involved in the transaction. If one or more resource(s) are specified belonging to the recipient then it will be transferred to the sender upon execution.
- string Status { get; set; }#
The current status of the transaction.
Public Static Functions
- new Transaction Parse (string json)#
Parses the given JSON encoded string into a new StorageLocation instance.
- Param json:
- Return: