Exemple #1
0
 public static void Encode(IByteWriter stream, PublicKey encodedPublicKey)
 {
     XdrEncoding.EncodeInt32((int)encodedPublicKey.Discriminant.InnerValue, stream);
     switch (encodedPublicKey.Discriminant.InnerValue)
     {
     case CryptoKeyType.CryptoKeyTypeEnum.KEY_TYPE_ED25519:
         Uint256.Encode(stream, encodedPublicKey.Ed25519);
         break;
     }
 }
 public static void Encode(XdrDataOutputStream stream, PublicKey encodedPublicKey)
 {
     stream.WriteInt((int)encodedPublicKey.Discriminant.InnerValue);
     switch (encodedPublicKey.Discriminant.InnerValue)
     {
     case PublicKeyType.PublicKeyTypeEnum.PUBLIC_KEY_TYPE_ED25519:
         Uint256.Encode(stream, encodedPublicKey.Ed25519);
         break;
     }
 }
Exemple #3
0
 public static void Encode(XdrDataOutputStream stream, Hello encodedHello)
 {
     Uint32.Encode(stream, encodedHello.LedgerVersion);
     Uint32.Encode(stream, encodedHello.OverlayVersion);
     Uint32.Encode(stream, encodedHello.OverlayMinVersion);
     Hash.Encode(stream, encodedHello.NetworkID);
     stream.WriteString(encodedHello.VersionStr);
     stream.WriteInt(encodedHello.ListeningPort);
     NodeID.Encode(stream, encodedHello.PeerID);
     AuthCert.Encode(stream, encodedHello.Cert);
     Uint256.Encode(stream, encodedHello.Nonce);
 }
Exemple #4
0
 public static void Encode(IByteWriter stream, Hello encodedHello)
 {
     Uint32.Encode(stream, encodedHello.LedgerVersion);
     Uint32.Encode(stream, encodedHello.OverlayVersion);
     Uint32.Encode(stream, encodedHello.OverlayMinVersion);
     Hash.Encode(stream, encodedHello.NetworkID);
     XdrEncoding.WriteString(stream, encodedHello.VersionStr);
     XdrEncoding.EncodeInt32(encodedHello.ListeningPort, stream);
     NodeID.Encode(stream, encodedHello.PeerID);
     AuthCert.Encode(stream, encodedHello.Cert);
     Uint256.Encode(stream, encodedHello.Nonce);
 }
        public static void Encode(XdrDataOutputStream stream, MuxedAccount encodedMuxedAccount)
        {
            stream.WriteInt((int)encodedMuxedAccount.Discriminant.InnerValue);
            switch (encodedMuxedAccount.Discriminant.InnerValue)
            {
            case CryptoKeyType.CryptoKeyTypeEnum.KEY_TYPE_ED25519:
                Uint256.Encode(stream, encodedMuxedAccount.Ed25519);
                break;

            case CryptoKeyType.CryptoKeyTypeEnum.KEY_TYPE_MUXED_ED25519:
                MuxedAccountMed25519.Encode(stream, encodedMuxedAccount.Med25519);
                break;
            }
        }
Exemple #6
0
        public static void Encode(IByteWriter stream, SignerKey encodedSignerKey)
        {
            XdrEncoding.EncodeInt32((int)encodedSignerKey.Discriminant.InnerValue, stream);
            switch (encodedSignerKey.Discriminant.InnerValue)
            {
            case SignerKeyType.SignerKeyTypeEnum.SIGNER_KEY_TYPE_ED25519:
                Uint256.Encode(stream, encodedSignerKey.Ed25519);
                break;

            case SignerKeyType.SignerKeyTypeEnum.SIGNER_KEY_TYPE_PRE_AUTH_TX:
                Uint256.Encode(stream, encodedSignerKey.PreAuthTx);
                break;

            case SignerKeyType.SignerKeyTypeEnum.SIGNER_KEY_TYPE_HASH_X:
                Uint256.Encode(stream, encodedSignerKey.HashX);
                break;
            }
        }
Exemple #7
0
        public static void Encode(XdrDataOutputStream stream, SignerKey encodedSignerKey)
        {
            stream.WriteInt((int)encodedSignerKey.Discriminant.InnerValue);
            switch (encodedSignerKey.Discriminant.InnerValue)
            {
            case SignerKeyType.SignerKeyTypeEnum.SIGNER_KEY_TYPE_ED25519:
                Uint256.Encode(stream, encodedSignerKey.Ed25519);
                break;

            case SignerKeyType.SignerKeyTypeEnum.SIGNER_KEY_TYPE_PRE_AUTH_TX:
                Uint256.Encode(stream, encodedSignerKey.PreAuthTx);
                break;

            case SignerKeyType.SignerKeyTypeEnum.SIGNER_KEY_TYPE_HASH_X:
                Uint256.Encode(stream, encodedSignerKey.HashX);
                break;
            }
        }
Exemple #8
0
        public static void Encode(XdrDataOutputStream stream, TransactionV0 encodedTransactionV0)
        {
            Uint256.Encode(stream, encodedTransactionV0.SourceAccountEd25519);
            Uint32.Encode(stream, encodedTransactionV0.Fee);
            SequenceNumber.Encode(stream, encodedTransactionV0.SeqNum);
            if (encodedTransactionV0.TimeBounds != null)
            {
                stream.WriteInt(1);
                TimeBounds.Encode(stream, encodedTransactionV0.TimeBounds);
            }
            else
            {
                stream.WriteInt(0);
            }
            Memo.Encode(stream, encodedTransactionV0.Memo);
            int operationssize = encodedTransactionV0.Operations.Length;

            stream.WriteInt(operationssize);
            for (int i = 0; i < operationssize; i++)
            {
                Operation.Encode(stream, encodedTransactionV0.Operations[i]);
            }
            TransactionV0Ext.Encode(stream, encodedTransactionV0.Ext);
        }
Exemple #9
0
 public static void Encode(XdrDataOutputStream stream, DontHave encodedDontHave)
 {
     MessageType.Encode(stream, encodedDontHave.Type);
     Uint256.Encode(stream, encodedDontHave.ReqHash);
 }
        public static void Encode(XdrDataOutputStream stream, StellarMessage encodedStellarMessage)
        {
            stream.WriteInt((int)encodedStellarMessage.Discriminant.InnerValue);

            switch (encodedStellarMessage.Discriminant.InnerValue)
            {
            case MessageType.MessageTypeEnum.ERROR_MSG:
                Error.Encode(stream, encodedStellarMessage.Error);
                break;

            case MessageType.MessageTypeEnum.HELLO:
                Hello.Encode(stream, encodedStellarMessage.Hello);
                break;

            case MessageType.MessageTypeEnum.AUTH:
                Auth.Encode(stream, encodedStellarMessage.Auth);
                break;

            case MessageType.MessageTypeEnum.DONT_HAVE:
                DontHave.Encode(stream, encodedStellarMessage.DontHave);
                break;

            case MessageType.MessageTypeEnum.GET_PEERS:
                break;

            case MessageType.MessageTypeEnum.PEERS:
                int peerssize = encodedStellarMessage.Peers.Length;
                stream.WriteInt(peerssize);

                for (int i = 0; i < peerssize; i++)
                {
                    PeerAddress.Encode(stream, encodedStellarMessage.Peers[i]);
                }

                break;

            case MessageType.MessageTypeEnum.GET_TX_SET:
                Uint256.Encode(stream, encodedStellarMessage.TxSetHash);
                break;

            case MessageType.MessageTypeEnum.TX_SET:
                TransactionSet.Encode(stream, encodedStellarMessage.TxSet);
                break;

            case MessageType.MessageTypeEnum.TRANSACTION:
                TransactionEnvelope.Encode(stream, encodedStellarMessage.Transaction);
                break;

            case MessageType.MessageTypeEnum.GET_SCP_QUORUMSET:
                Uint256.Encode(stream, encodedStellarMessage.QSetHash);
                break;

            case MessageType.MessageTypeEnum.SCP_QUORUMSET:
                SCPQuorumSet.Encode(stream, encodedStellarMessage.QSet);
                break;

            case MessageType.MessageTypeEnum.SCP_MESSAGE:
                SCPEnvelope.Encode(stream, encodedStellarMessage.Envelope);
                break;

            case MessageType.MessageTypeEnum.GET_SCP_STATE:
                Uint32.Encode(stream, encodedStellarMessage.GetSCPLedgerSeq);
                break;
            }
        }
Exemple #11
0
 public static void Encode(IByteWriter stream, DontHave encodedDontHave)
 {
     MessageType.Encode(stream, encodedDontHave.Type);
     Uint256.Encode(stream, encodedDontHave.ReqHash);
 }
 public static void Encode(XdrDataOutputStream stream, MuxedAccountMed25519 encodedMuxedAccountMed25519)
 {
     Uint64.Encode(stream, encodedMuxedAccountMed25519.Id);
     Uint256.Encode(stream, encodedMuxedAccountMed25519.Ed25519);
 }