Beispiel #1
0
        public TransportTrackerResult GetNext()
        {
            TransportTrackerAction action    = TransportTrackerAction.ItIsAllOver;
            TransportBase          transport = null;

            if (!String.IsNullOrEmpty(lastTransport) && (retries > 0))
            {
                action = TransportTrackerAction.RetryExistingTransport;

                retries--;
            }
            else if (IsStalled)
            {
                action = TransportTrackerAction.ItIsAllOver;
            }
            else
            {
                transport = FindNextTransport();

                if (transport == null)
                {
                    action = TransportTrackerAction.ItIsAllOver;
                }
                else
                {
                    action = TransportTrackerAction.LoadNewTransport;
                }
            }

            return(new TransportTrackerResult(action, transport));
        }
Beispiel #2
0
 public TransportTrackerResult(TransportTrackerAction action, TransportBase transport = null)
     : this()
 {
     Action    = action;
     Transport = transport;
 }