コード例 #1
0
        public Terminal(PhoneNumber PhoneNumber)
        {
            this.PhoneNumber = PhoneNumber;

            this.Online += (sender, e) => { Console.WriteLine("Terminal {0} turned to online mode!", this.PhoneNumber); };
            this.OffLine += (sender, e) => { Console.WriteLine("Terminal {0} turned to offline mode!", this.PhoneNumber); };

            this.IncomingRequest += (sender, e) => { Console.WriteLine("Terminal {0} received request from {1}!", this.PhoneNumber, (e.Request as IncomingRequest).Source); };
        }
コード例 #2
0
ファイル: Response.cs プロジェクト: Demenovich-A-J/ATS
 public Response(ResponseState state, PhoneNumber source)
 {
     State = state;
     Source = source;
 }
コード例 #3
0
ファイル: Station.cs プロジェクト: ADudar/EpamSystemsTraining
        protected void SetPortStateAfterConnectionInterrupted(PhoneNumber Source, PhoneNumber target)
        {
            IPort SourcePort = GetPortByNumber(Source);

            if (SourcePort != null)
                SourcePort.State = PortState.Free;

            IPort targetPort = GetPortByNumber(target);

            if (targetPort != null)
                targetPort.State = PortState.Free;
        }
コード例 #4
0
ファイル: Station.cs プロジェクト: ADudar/EpamSystemsTraining
 protected ITerminal GetTerminalByNumber(PhoneNumber PhoneNumber)
 {
     return this.m_terminals.FirstOrDefault(x => x.PhoneNumber == PhoneNumber);
 }
コード例 #5
0
ファイル: Station.cs プロジェクト: ADudar/EpamSystemsTraining
 protected IPort GetPortByNumber(PhoneNumber PhoneNumber)
 {
     return this.m_portMapping[PhoneNumber];
 }
コード例 #6
0
ファイル: Station.cs プロジェクト: ADudar/EpamSystemsTraining
 protected CallInfo GetConnectionInfo(PhoneNumber PhoneNumber)
 {
     return this.m_connectionCollection.FirstOrDefault(x => (x.Source == PhoneNumber || x.Target == PhoneNumber));
 }
コード例 #7
0
ファイル: Station.cs プロジェクト: ADudar/EpamSystemsTraining
 protected bool CheckOnCorrectness(PhoneNumber Source, PhoneNumber target)
 {
     return (Source != default(PhoneNumber) && target != default(PhoneNumber));
 }
コード例 #8
0
 public CallInfo(PhoneNumber source, PhoneNumber target, DateTime start, TimeSpan duration)
     : this(source, target, start)
 {
     this.Duration = duration;
 }
コード例 #9
0
 public CallInfo(PhoneNumber source, PhoneNumber target, DateTime start)
 {
     this.Source = source;
     this.Target = target;
     this.Started = start;
 }
コード例 #10
0
ファイル: CallInfo.cs プロジェクト: Demenovich-A-J/ATS
 public CallInfo(PhoneNumber target, PhoneNumber source, TerminalState state)
 {
     Target = target;
     Source = source;
     State = state;
 }
コード例 #11
0
        public void Call(PhoneNumber target)
        {
            if (!IsOnline)
                OnOutgoingRequest(this, target);

            if (m_serverRequest != null)
                OnOnline(this, EventArgs.Empty);
        }
コード例 #12
0
 protected virtual void OnOutgoingRequest(object sender, PhoneNumber target)
 {
     if (OutgoingConnection != null)
     {
         this.m_serverRequest = new OutgoingRequest(this.PhoneNumber, target);
         OutgoingConnection(sender, new RequestEventArgs(this.m_serverRequest));
     }
 }
コード例 #13
0
 public void IncomingRequestFrom(PhoneNumber Source)
 {
     OnIncomingRequest(this, new IncomingRequest(Source));
 }