/// <summary>
        /// Returns if the provided peer matchs this filter or not.
        /// </summary>
        /// <param name="peerData"></param>
        /// <returns></returns>
        public bool Match(LocalPeerData peerData)
        {
            if (!String.IsNullOrEmpty(peerType) && peerType != peerData.peerType)
            {
                return(false);
            }
            if (!String.IsNullOrEmpty(peerName) && peerName != peerData.peerName)
            {
                return(false);
            }
            if (passwordProtected != null && passwordProtected != peerData.passwordProtected)
            {
                return(false);
            }
            if (!String.IsNullOrEmpty(comment) && comment != peerData.comment)
            {
                return(false);
            }
            if (!String.IsNullOrEmpty(platform) && platform != peerData.platform)
            {
                return(false);
            }

            return(true);
        }
示例#2
0
 public bool Equals(LocalPeerData other)
 {
     return(other != null &&
            internalEndpoint.Equals(other.internalEndpoint) &&
            peerType == other.peerType &&
            peerName == other.peerName &&
            passwordProtected == other.passwordProtected &&
            comment == other.comment &&
            platform == other.platform);
 }
示例#3
0
 public void CopyFrom(LocalPeerData data)
 {
     peerType          = data.peerType;
     peerName          = data.peerName;
     passwordProtected = data.passwordProtected;
     comment           = data.comment;
     platform          = data.platform;
     internalEndpoint  = data.internalEndpoint;
     timestamp         = data.timestamp;
 }
示例#4
0
 public LocalPeerData(LocalPeerData data)
     : this(data.peerType, data.peerName, data.passwordProtected, data.comment, data.platform, data.timestamp, data.internalEndpoint)
 {
 }
 public PeerData(LocalPeerData localPeerData, NetworkEndPoint externalEndpoint, int ping)
     : base(localPeerData)
 {
     this.externalEndpoint = externalEndpoint;
     this.ping             = ping;
 }
 public void WriteLocalPeerData(LocalPeerData value)
 {
     value._Write(_buffer);
 }