Exemplo n.º 1
0
        public async Task <int> CommitToServer(Signal signal)
        {
            var signalDto = Mapper.Map <Signal, SignalService.SignalDto>(signal);

            try
            {
                var client = new SignalService.SignalServiceClient();
                var result = await client.SaveAsync(signalDto);

                if (_SuspendedSignals.Count > 0)
                {
                    Task.Run(() =>
                    {
                        TransferSuspended();
                    });
                }
                return(result);
            }
            catch (CommunicationException ex)
            {
                signal.Errors.Add(ex.Message);
            }
            catch (Exception ex)
            {
                signal.Errors.Add("Can´t connect to server.");
            }

            SuspendedSignals.Add(signalDto);

            return(-1);
        }
Exemplo n.º 2
0
        private void TransferSuspended()
        {
            var tDel    = new List <SignalDto>();
            var tclient = new SignalService.SignalServiceClient();

            foreach (var tSignal in _SuspendedSignals)
            {
                try
                {
                    var tresult = tclient.SaveAsync(tSignal);
                    tDel.Add(tSignal);
                }
                catch
                { }
            }
            foreach (var tSignal in tDel)
            {
                _SuspendedSignals.Remove(tSignal);
            }
            tDel.Clear();
        }