コード例 #1
0
 /// <summary>
 /// Initializes a new instance of the <see cref="CommunicationAgentBase"/> class.
 /// </summary>
 /// <param name="capabilities">The agent capabilities. The default is bidirectional.</param>
 /// <param name="serializerId">The optional preferred serializer identifier.</param>
 /// <param name="compressionId">The optional preferred compression identifier.</param>
 /// <param name="encryptionId">The optional preferred encryption identifier.</param>
 protected CommunicationAgentBase(
     CommunicationAgentCapabilities capabilities = CommunicationAgentCapabilities.Bidirectional
     , SerializationHandlerId serializerId       = null
     , CompressionHandlerId compressionId        = null
     , EncryptionHandlerId encryptionId          = null) : base(capabilities, serializerId, compressionId, encryptionId)
 {
 }
コード例 #2
0
 /// <summary>
 /// Initializes a new instance of the <see cref="UdpHelperState"/> class.
 /// </summary>
 /// <param name="mode">The mode.</param>
 /// <param name="socket">The socket.</param>
 public State(CommunicationAgentCapabilities mode, Socket socket)
 {
     Mode              = mode;
     Buffer            = Mode != CommunicationAgentCapabilities.Sender ? (new byte[UDPMAXSIZE]) : null;
     Socket            = socket;
     mIPAddressExclude = new HashSet <IPAddress>();
 }
コード例 #3
0
        /// <summary>
        /// Initializes a new instance of the <see cref="UdpHelper"/> class.
        /// </summary>
        public UdpHelper(UdpConfig udp, CommunicationAgentCapabilities mode)
        {
            Config = udp;
            Mode   = mode;

            mConnectionsListener = new Dictionary <IPEndPoint, State>();
            mConnectionsSender   = new Dictionary <IPEndPoint, State>();

            mIncomingPending = new ConcurrentQueue <Message>();
        }
コード例 #4
0
 /// <summary>
 /// Initializes a new instance of the <see cref="UdpCommunicationAgent"/> class.
 /// </summary>
 /// <param name="config">The UDP endpoint configuration.</param>
 /// <param name="serializerId">The optional serializer identifier.</param>
 /// <param name="compressionId">The optional compression identifier.</param>
 /// <param name="encryptionId">The optional encryption identifier.</param>
 /// <param name="requestAddress">The optional request address.</param>
 /// <param name="responseAddress">The optional response address.</param>
 /// <param name="requestAddressPriority">The optional request address priority.</param>
 /// <param name="responseAddressPriority">The optional response address priority.</param>
 /// <param name="capabilities">The agent capabilities. The default is bidirectional.</param>
 /// <param name="maxUdpMessagePayloadSize">Maximum size of the UDP message payload.</param>
 public UdpCommunicationAgent(UdpConfig config
                              , CommunicationAgentCapabilities capabilities = CommunicationAgentCapabilities.Bidirectional
                              , SerializationHandlerId serializerId         = null
                              , CompressionHandlerId compressionId          = null
                              , EncryptionHandlerId encryptionId            = null
                              , ServiceMessageHeaderFragment requestAddress = null
                              , ServiceMessageHeader responseAddress        = null
                              , int?requestAddressPriority   = null
                              , int responseAddressPriority  = 1
                              , int?maxUdpMessagePayloadSize = UdpHelper.PacketMaxSize
                              ) : base(capabilities, serializerId, compressionId, encryptionId)
 {
     mConfig = config ?? throw new ArgumentNullException("config", "Udp configuration cannot be null.");
 }