Exemple #1
0
        public void OnProcessing(FeedDataSet Feed)
        {
            var localTemp = StaticUtilities.GetDataPath() + "\\" + CurrentSessionParams.LocalDirName + "\\" + CurrentSessionParams.FilesToExtract[Feed];

            if (File.Exists(localTemp))
            {
                //var observableCharactersSeq=Observable.Using<char,StreamReader>(()=>new StreamReader(new FileStream(localTemp,FileMode.Open)),
                //                    s=>(from c in s.ReadToEnd().ToCharArray() select c).ToObservable(NewThreadScheduler.Default));

                if (FeedDataSet.SUB == Feed)   //this needs to be removed later
                {
                    File.ReadLines(localTemp)
                    .Skip(1)
                    .ToObservable()
                    .ObserveOn(Scheduler.Default)
                    .Subscribe(l => OnLineProcessing(l, Feed), onError: OnError, onCompleted: OnImportFinished);
                }
            }
            else
            {
                Console.WriteLine("path Not Found");
            }
        }
Exemple #2
0
        public void OnLineProcessing(string line, FeedDataSet Feed)
        {
            try
            {
                //TagHandler.DoImport(Feed,obj);
                switch (Feed)
                {
                case FeedDataSet.TAG:  TagRepository.Add(line.MapString <tag>(), context.tags); break;

                case FeedDataSet.SUB:
                {
                    var sub = line.MapString <submission>();
                    if (sub.IsNotNull() && !context.submissions.Any(x => x.adsh == sub.adsh))
                    {
                        SubRepository.Add(sub, context.submissions);
                    }
                    break;
                }

                case FeedDataSet.PRE:
                {
                    PreRepository.Add(line.MapString <pre>(), context.pres); break;
                }

                case FeedDataSet.NUM:
                {
                    NumRepository.Add(line.MapString <num>(), context.nums); break;
                }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("***Exception********");
                Console.WriteLine(ex.Message);
                Console.WriteLine(ex.StackTrace);
            }
        }