예제 #1
0
 /// <summary>
 /// The action to run when this event triggers.
 /// </summary>
 public override void Action()
 {
     _fromStation.ReleaseChannel();
     if (_toStation.ClaimChannel(true))
     {
         if (_toStation.PositionIsInRange(_data.EndPosition))
         {
             _newCallHangupEventCallBack(_data.EndTime, _data);
         }
         else
         {
             _newCallHandoverEventCallBack(_data.GetAbsoluteTimeForPosition(_toStation.EndPosition), _data);
         }
     }
     else
     {
         _dropped();
     }
 }
예제 #2
0
 /// <summary>
 /// The action to run when this event triggers.
 /// </summary>
 public override void Action()
 {
     _callstart();
     if (_baseStation.ClaimChannel(false))
     {
         if (_baseStation.PositionIsInRange(_data.EndPosition))
         {
             _newCallHangupEventCallBack(_data.EndTime, _data);
         }
         else
         {
             _newCallHandoverEventCallBack(_data.GetAbsoluteTimeForPosition(_baseStation.EndPosition), _data);
         }
     }
     else
     {
         _blocked();
     }
     _addNextCallCallBack(_data.StartTime);
 }