Beispiel #1
0
        static void Main(string[] args)
        {
            var phoneNumbers = new int[] { 111, 222 };
            var phones       = phoneNumbers.Select(numb => new Phone(numb)).ToList();

            var portNumbers = new List <int>()
            {
                10, 20
            };
            var ports = portNumbers.Select(numb => new Port(numb));

            var exchange = new TelephoneExchange(new HashSet <IPort>(ports), new HashSet <Phone>(phones), null);

            var callReceiveDelay = TimeSpan.FromMilliseconds(5000);
            var senderTerminal   = new Terminal(phones[0], exchange, null, callReceiveDelay);
            var reciverTerminal  = new Terminal(phones[1], exchange, null, callReceiveDelay);

            Console.WriteLine(senderTerminal.ConnectToExchange());
            Console.WriteLine(reciverTerminal.ConnectToExchange());

            var callStatus       = senderTerminal.MakeCall(reciverTerminal.PhoneNumber);
            var disconnectStatus = reciverTerminal.CloseCall();

            Console.WriteLine(senderTerminal.DisconnectFromExchange());
            Console.WriteLine(reciverTerminal.DisconnectFromExchange());
        }
Beispiel #2
0
        public void Init()
        {
            var phoneNumbers = new int[] { 111, 222 };

            _phones = phoneNumbers.Select(numb => new Phone(numb)).ToList();

            var portNumbers = new List <int>()
            {
                10, 20
            };
            var ports = portNumbers.Select(numb => new Port(numb));

            var exchangeBilling = new Mocks.ExchangeBillingMock(p => true);

            var exchange = new TelephoneExchange(new HashSet <IPort>(ports), new HashSet <Phone>(_phones), exchangeBilling);

            _callReceivingDelay = TimeSpan.FromMilliseconds(10000);
            _senderTerminal     = new ATS.Terminal(_phones[0], exchange, null, _callReceivingDelay);
            _reciverTerminal    = new ATS.Terminal(_phones[1], exchange, null, _callReceivingDelay);
        }