Beispiel #1
0
 public void TestIPv6EndPoint()
 {
     var newTarget = new TcpIpTargetInfo();
     newTarget.IPEndPoint = TcpIpTargetInfo.TryParseIPEndPoint(@"2001:740:8deb:0::1:12345");
     Assert.IsNotNull(newTarget.IPEndPoint);
     Assert.AreEqual(newTarget.IPEndPoint.Port, 12345);
 }
Beispiel #2
0
 public void TestFixedPort_IPAddressOnlyEndpoint()
 {
     var newTarget = new TcpIpTargetInfo();
     newTarget.FixedPort = 3001;
     newTarget.IPEndPoint = TcpIpTargetInfo.TryParseEndPointUsingPort(@"192.168.0.1", newTarget.FixedPort);
     Assert.IsNotNull(newTarget.IPEndPoint);
     Assert.AreEqual(newTarget.IPEndPoint.Port, newTarget.FixedPort);
 }
Beispiel #3
0
 public void TestFixedPort_FullyQualifiedEndpoint()
 {
     var newTarget = new TcpIpTargetInfo();
     newTarget.FixedPort = 3001;
     newTarget.IPEndPoint = TcpIpTargetInfo.TryParseEndPointUsingPort(@"192.168.0.1:12345", newTarget.FixedPort);
     Assert.IsNotNull(newTarget.IPEndPoint);
     Assert.AreEqual(newTarget.IPEndPoint.Port, newTarget.FixedPort);
 }
Beispiel #4
0
        public void TestIPv4EndPoint()
        {
            var newTarget = new TcpIpTargetInfo();
            newTarget.IPEndPoint = TcpIpTargetInfo.TryParseIPEndPoint(@"192.168.0.1:12345");
            Assert.IsNotNull(newTarget.IPEndPoint);
            Assert.AreEqual(newTarget.IPEndPoint.Port, 12345);

            var fromEndpointString = new TcpIpTargetInfo();
            fromEndpointString.Endpoint = @"192.168.0.1:12345";
            Assert.AreEqual(newTarget.IPEndPoint, fromEndpointString.IPEndPoint);
        }
Beispiel #5
0
        /// <summary>
        /// Deserializes target objects from a string value</summary>
        /// <param name="value">String representation of targets</param>
        /// <param name="scope">Target scope</param>
        protected virtual void DeserializeTargets(string value, TargetScope scope)
        {
            XmlDocument xmlDoc = new XmlDocument();

            xmlDoc.LoadXml(value);
            XmlNodeList nodes = xmlDoc.DocumentElement.SelectNodes("TcpTargets/TcpTarget");

            if (nodes == null || nodes.Count == 0)
            {
                return;
            }

            foreach (XmlElement elem in nodes)
            {
                if (scope != TargetScope.PerApp)
                {
                    var provider = elem.GetAttribute("provider");
                    if (provider != Id)
                    {
                        continue;
                    }
                }
                var tcpTarget = new TcpIpTargetInfo
                {
                    Name     = elem.GetAttribute("name"),
                    Platform = elem.GetAttribute("platform"),
                    Endpoint = elem.GetAttribute("endpoint"),
                    Protocol = elem.GetAttribute("protocol"),
                    Scope    = scope,
                };
                int fixedPort = 0;
                if (int.TryParse(elem.GetAttribute("fixedport"), out fixedPort))
                {
                    tcpTarget.FixedPort = fixedPort;
                }
                m_targets.Add(tcpTarget);
            }

            foreach (var targetConsumer in TargetConsumers)
            {
                targetConsumer.TargetsChanged(this, m_targets);
            }
        }
Beispiel #6
0
 /// <summary>
 /// Creates a new target</summary>
 /// <remarks>Creates and returns a TargetInfo, but does not add it to the watched list</remarks>
 /// <returns>New target</returns>
 public virtual TargetInfo CreateNew()
 {
     var newTarget = new TcpIpTargetInfo();
     return newTarget;
 }
Beispiel #7
0
        /// <summary>
        /// Deserializes target objects from a string value</summary>
        /// <param name="value">String representation of targets</param>
        /// <param name="scope">Target scope</param>
        protected virtual void DeserializeTargets(string value, TargetScope scope)
        {
            XmlDocument xmlDoc = new XmlDocument();
            xmlDoc.LoadXml(value);
            XmlNodeList nodes = xmlDoc.DocumentElement.SelectNodes("TcpTargets/TcpTarget");
            if (nodes == null || nodes.Count == 0)
                return;

            foreach (XmlElement elem in nodes)
            {
               
                if (scope != TargetScope.PerApp)
                {
                    var provider = elem.GetAttribute("provider");
                    if (provider != Id)
                        continue;
                }
                var tcpTarget = new TcpIpTargetInfo
                                    {
                                        Name = elem.GetAttribute("name"),
                                        Platform = elem.GetAttribute("platform"),
                                        Endpoint = elem.GetAttribute("endpoint"),
                                        Protocol = elem.GetAttribute("protocol"),
                                        Scope = scope,
                                    };
                int fixedPort = 0;
                if (int.TryParse(elem.GetAttribute("fixedport"), out fixedPort))
                {
                    tcpTarget.FixedPort = fixedPort;
                }
                m_targets.Add(tcpTarget);
            }

            foreach (var targetConsumer in TargetConsumers)
                targetConsumer.TargetsChanged(this, m_targets);
 
        }
Beispiel #8
0
        /// <summary>
        /// Creates a new target</summary>
        /// <remarks>Creates and returns a TargetInfo, but does not add it to the watched list</remarks>
        /// <returns>New target</returns>
        public virtual TargetInfo CreateNew()
        {
            var newTarget = new TcpIpTargetInfo();

            return(newTarget);
        }