Esempio n. 1
0
        public static Memo Decode(XdrDataInputStream stream)
        {
            Memo     decodedMemo  = new Memo();
            MemoType discriminant = MemoType.Decode(stream);

            decodedMemo.Discriminant = discriminant;
            switch (decodedMemo.Discriminant.InnerValue)
            {
            case MemoType.MemoTypeEnum.MEMO_NONE:
                break;

            case MemoType.MemoTypeEnum.MEMO_TEXT:
                decodedMemo.Text = stream.ReadString();
                break;

            case MemoType.MemoTypeEnum.MEMO_ID:
                decodedMemo.Id = Uint64.Decode(stream);
                break;

            case MemoType.MemoTypeEnum.MEMO_HASH:
                decodedMemo.Hash = Hash.Decode(stream);
                break;

            case MemoType.MemoTypeEnum.MEMO_RETURN:
                decodedMemo.RetHash = Hash.Decode(stream);
                break;
            }
            return(decodedMemo);
        }
Esempio n. 2
0
        public static Error Decode(XdrDataInputStream stream)
        {
            Error decodedError = new Error();

            decodedError.Code = ErrorCode.Decode(stream);
            decodedError.Msg  = stream.ReadString();
            return(decodedError);
        }
Esempio n. 3
0
        public static Hello Decode(XdrDataInputStream stream)
        {
            Hello decodedHello = new Hello();

            decodedHello.LedgerVersion     = Uint32.Decode(stream);
            decodedHello.OverlayVersion    = Uint32.Decode(stream);
            decodedHello.OverlayMinVersion = Uint32.Decode(stream);
            decodedHello.NetworkID         = Hash.Decode(stream);
            decodedHello.VersionStr        = stream.ReadString();
            decodedHello.ListeningPort     = stream.ReadInt();
            decodedHello.PeerID            = NodeID.Decode(stream);
            decodedHello.Cert  = AuthCert.Decode(stream);
            decodedHello.Nonce = Uint256.Decode(stream);
            return(decodedHello);
        }
Esempio n. 4
0
        public static PeerStats Decode(XdrDataInputStream stream)
        {
            PeerStats decodedPeerStats = new PeerStats();

            decodedPeerStats.Id                        = NodeID.Decode(stream);
            decodedPeerStats.VersionStr                = stream.ReadString();
            decodedPeerStats.MessagesRead              = Uint64.Decode(stream);
            decodedPeerStats.MessagesWritten           = Uint64.Decode(stream);
            decodedPeerStats.BytesRead                 = Uint64.Decode(stream);
            decodedPeerStats.BytesWritten              = Uint64.Decode(stream);
            decodedPeerStats.SecondsConnected          = Uint64.Decode(stream);
            decodedPeerStats.UniqueFloodBytesRecv      = Uint64.Decode(stream);
            decodedPeerStats.DuplicateFloodBytesRecv   = Uint64.Decode(stream);
            decodedPeerStats.UniqueFetchBytesRecv      = Uint64.Decode(stream);
            decodedPeerStats.DuplicateFetchBytesRecv   = Uint64.Decode(stream);
            decodedPeerStats.UniqueFloodMessageRecv    = Uint64.Decode(stream);
            decodedPeerStats.DuplicateFloodMessageRecv = Uint64.Decode(stream);
            decodedPeerStats.UniqueFetchMessageRecv    = Uint64.Decode(stream);
            decodedPeerStats.DuplicateFetchMessageRecv = Uint64.Decode(stream);
            return(decodedPeerStats);
        }