/// <summary> /// Initializes a new instance of the <see cref="MemberInfo"/> class. /// </summary> /// <param name="id">The unique identifier of the member.</param> /// <param name="address">The network address of the member.</param> /// <param name="version">The version of the server running the member.</param> /// <param name="isLiteMember">Whether the member is a "lite" member.</param> /// <param name="attributes">Attributes of the member.</param> public MemberInfo(Guid id, NetworkAddress address, MemberVersion version, bool isLiteMember, IDictionary <string, string> attributes) { Id = id; Address = address; Version = version; IsLiteMember = isLiteMember; Attributes = new ReadOnlyDictionary <string, string>(attributes); AddressMap = new Dictionary <EndpointQualifier, NetworkAddress>(); }
/// <summary> /// Initializes a new instance of the <see cref="MemberInfo"/> class. /// </summary> /// <param name="id">The unique identifier of the member.</param> /// <param name="address">The network address of the member.</param> /// <param name="version">The version of the server running the member.</param> /// <param name="isLiteMember">Whether the member is a "lite" member.</param> /// <param name="attributes">Attributes of the member.</param> /// <param name="addressMapExists">Whether the address map exists.</param> /// <param name="addressMap">The address map.</param> /// <remarks> /// <para>That overload of the constructor is required by generated codecs.</para> /// </remarks> internal MemberInfo(NetworkAddress address, Guid id, IDictionary <string, string> attributes, bool isLiteMember, MemberVersion version, bool addressMapExists, IDictionary <EndpointQualifier, NetworkAddress> addressMap) : this(id, address, version, isLiteMember, attributes) { // yes, this constructor could be simplified, but at the moment // it is what codecs expect, so don't simplify it! if (addressMapExists) { AddressMap = addressMap; } }