Exemple #1
0
        private bool GenerarePartTransaqList(List <ITransaq> currentEtherTransaqs,
                                             ref bool IsNewTransaq, ref EtherTransaq etherTransaqTemp, int page)
        {
            RestRequest         request       = RequestGenerator.GetTxListReq(etherData, page, _offset);
            List <EtherTransaq> etherTransaqs = ExecuteAs <List <EtherTransaq> >(_restClient, request);

            if (etherTransaqs == null || etherTransaqs.Count == 0)
            {
                return(true);
            }

            foreach (EtherTransaq etherTransaq in etherTransaqs)
            {
                if (etherTransaq.DateTime > _lastEtherTransaq.DateTime)
                {
                    currentEtherTransaqs.Add(etherTransaq);

                    if (IsNewTransaq == false)
                    {
                        etherTransaqTemp = etherTransaq;
                        IsNewTransaq     = true;
                    }
                }
                else
                {
                    _lastEtherTransaq = etherTransaqTemp;
                    return(true);
                }
            }
            return(false);
        }
Exemple #2
0
        public void StartWatching(int interval)
        {
            _lastEtherTransaq = GetLastTransaq(etherData.Adress);


            TimerCallback tm = new TimerCallback(Scan);

            timer = new Timer(tm, null, 0, interval);
        }
Exemple #3
0
        private void GenerateNewTransaqList(List <ITransaq> currentEtherTransaqs)
        {
            //currentEtherTransaqs = new List<ITransaq>();
            Monitor.Enter(synclock);

            bool         IsNewTransaq     = false;
            EtherTransaq etherTransaqTemp = new EtherTransaq();

            etherTransaqTemp = _lastEtherTransaq;
            bool isDone = false;
            int  page   = 1;

            do
            {
                isDone = GenerarePartTransaqList(currentEtherTransaqs, ref IsNewTransaq, ref etherTransaqTemp, page);
                page++;
            }while (isDone == false);

            Monitor.Exit(synclock);
        }