OctoTorrent.Client.Messages.PeerMessage.PeerMessage C# (CSharp) Method

PeerMessage() static private method

static private PeerMessage ( ) : System
return System
        static PeerMessage()
        {
            MessageDict = new Dictionary<byte, CreateMessage>();

            // Note - KeepAlive messages aren't registered as they have no payload or ID and are never 'decoded'
            //      - Handshake messages aren't registered as they are always the first message sent/received
            Register(AllowedFastMessage.MessageId, manager => new AllowedFastMessage());
            Register(BitfieldMessage.MessageId, manager => new BitfieldMessage(manager.Torrent.Pieces.Count));
            Register(CancelMessage.MessageId, manager => new CancelMessage());
            Register(ChokeMessage.MessageId, manager => new ChokeMessage());
            Register(HaveAllMessage.MessageId, manager => new HaveAllMessage());
            Register(HaveMessage.MessageId, manager => new HaveMessage());
            Register(HaveNoneMessage.MessageId, manager => new HaveNoneMessage());
            Register(InterestedMessage.MessageId, manager => new InterestedMessage());
            Register(NotInterestedMessage.MessageId, manager => new NotInterestedMessage());
            Register(PieceMessage.MessageId, manager => new PieceMessage());
            Register(PortMessage.MessageId, manager => new PortMessage());
            Register(RejectRequestMessage.MessageId, manager => new RejectRequestMessage());
            Register(RequestMessage.MessageId, manager => new RequestMessage());
            Register(SuggestPieceMessage.MessageId, manager => new SuggestPieceMessage());
            Register(UnchokeMessage.MessageId, manager => new UnchokeMessage());

            // We register this solely so that the user cannot register their own message with this ID.
            // Actual decoding is handled with manual detection
            Register(ExtensionMessage.MessageId, manager => { throw new MessageException("Shouldn't decode extension message this way"); });
        }