示例#1
0
            public static LedgerKeyAccount Decode(XdrDataInputStream stream)
            {
                var decodedLedgerKeyAccount = new LedgerKeyAccount();

                decodedLedgerKeyAccount.AccountID = AccountID.Decode(stream);
                return(decodedLedgerKeyAccount);
            }
示例#2
0
        public static LedgerKey Decode(XdrDataInputStream stream)
        {
            var decodedLedgerKey = new LedgerKey();
            var discriminant     = LedgerEntryType.Decode(stream);

            decodedLedgerKey.Discriminant = discriminant;
            switch (decodedLedgerKey.Discriminant.InnerValue)
            {
            case LedgerEntryType.LedgerEntryTypeEnum.ACCOUNT:
                decodedLedgerKey.Account = LedgerKeyAccount.Decode(stream);
                break;

            case LedgerEntryType.LedgerEntryTypeEnum.TRUSTLINE:
                decodedLedgerKey.TrustLine = LedgerKeyTrustLine.Decode(stream);
                break;

            case LedgerEntryType.LedgerEntryTypeEnum.OFFER:
                decodedLedgerKey.Offer = LedgerKeyOffer.Decode(stream);
                break;

            case LedgerEntryType.LedgerEntryTypeEnum.DATA:
                decodedLedgerKey.Data = LedgerKeyData.Decode(stream);
                break;
            }
            return(decodedLedgerKey);
        }
示例#3
0
        public static void Encode(XdrDataOutputStream stream, LedgerKey encodedLedgerKey)
        {
            stream.WriteInt((int)encodedLedgerKey.Discriminant.InnerValue);
            switch (encodedLedgerKey.Discriminant.InnerValue)
            {
            case LedgerEntryType.LedgerEntryTypeEnum.ACCOUNT:
                LedgerKeyAccount.Encode(stream, encodedLedgerKey.Account);
                break;

            case LedgerEntryType.LedgerEntryTypeEnum.TRUSTLINE:
                LedgerKeyTrustLine.Encode(stream, encodedLedgerKey.TrustLine);
                break;

            case LedgerEntryType.LedgerEntryTypeEnum.OFFER:
                LedgerKeyOffer.Encode(stream, encodedLedgerKey.Offer);
                break;

            case LedgerEntryType.LedgerEntryTypeEnum.DATA:
                LedgerKeyData.Encode(stream, encodedLedgerKey.Data);
                break;

            case LedgerEntryType.LedgerEntryTypeEnum.CLAIMABLE_BALANCE:
                LedgerKeyClaimableBalance.Encode(stream, encodedLedgerKey.ClaimableBalance);
                break;
            }
        }
示例#4
0
            public static LedgerKeyAccount Decode(IByteReader stream)
            {
                LedgerKeyAccount decodedLedgerKeyAccount = new LedgerKeyAccount();

                decodedLedgerKeyAccount.AccountID = AccountID.Decode(stream);
                return(decodedLedgerKeyAccount);
            }
示例#5
0
        public static void Encode(IByteWriter stream, LedgerKey encodedLedgerKey)
        {
            XdrEncoding.EncodeInt32((int)encodedLedgerKey.Discriminant.InnerValue, stream);
            switch (encodedLedgerKey.Discriminant.InnerValue)
            {
            case LedgerEntryType.LedgerEntryTypeEnum.ACCOUNT:
                LedgerKeyAccount.Encode(stream, encodedLedgerKey.Account);
                break;

            case LedgerEntryType.LedgerEntryTypeEnum.TRUSTLINE:
                LedgerKeyTrustLine.Encode(stream, encodedLedgerKey.TrustLine);
                break;

            case LedgerEntryType.LedgerEntryTypeEnum.OFFER:
                LedgerKeyOffer.Encode(stream, encodedLedgerKey.Offer);
                break;

            case LedgerEntryType.LedgerEntryTypeEnum.DATA:
                LedgerKeyData.Encode(stream, encodedLedgerKey.Data);
                break;
            }
        }
示例#6
0
 public static void Encode(XdrDataOutputStream stream, LedgerKeyAccount encodedLedgerKeyAccount)
 {
     AccountID.Encode(stream, encodedLedgerKeyAccount.AccountID);
 }
示例#7
0
 public static void Encode(IByteWriter stream, LedgerKeyAccount encodedLedgerKeyAccount)
 {
     AccountID.Encode(stream, encodedLedgerKeyAccount.AccountID);
 }
 public static LedgerKeyAccount Decode(IByteReader stream) {
   LedgerKeyAccount decodedLedgerKeyAccount = new LedgerKeyAccount();
   decodedLedgerKeyAccount.AccountID = AccountID.Decode(stream);
   return decodedLedgerKeyAccount;
 }
 public static void Encode(IByteWriter stream, LedgerKeyAccount encodedLedgerKeyAccount) {
   AccountID.Encode(stream, encodedLedgerKeyAccount.AccountID);
 }