Exemplo n.º 1
0
        public async Task ExportToFile(BandEventBase eventBase, string filePath)
        {
            if (!(eventBase is RunEvent))
            {
                throw new ArgumentException("eventBase must be of type SleepEvent to use the RunToCSVExporter");
            }

            var runEvent = eventBase as RunEvent;

            await Task.Run(() =>
            {
                var dataDump = new List <Dictionary <string, object> >();

                foreach (var sequence in runEvent.Sequences)
                {
                    var runSequence  = sequence as RunEventSequenceItem;
                    var sequenceData = new Dictionary <string, object>(BaseSequenceDumper.Dump(sequence))
                    {
                        { "Total Distance", runSequence.TotalDistance },
                        { "Split Distance", runSequence.SplitDistance },
                        { "Split Pace", runSequence.SplitPace },
                        { "Overall Pace", runSequence.OverallPace },
                        { "Actual Distance", runSequence.ActualDistance },
                        { "Paused Time", runSequence.PausedTime },
                    };

                    dataDump.Add(sequenceData);
                }

                // TODO: pass through convertDateTimeToLocal
                CSVExporter.ExportToFile(dataDump, filePath);
            });
        }
Exemplo n.º 2
0
        public async Task ExportToFile(BandEventBase eventBase, string filePath)
        {
            if (!(eventBase is SleepEvent))
            {
                throw new ArgumentException("eventBase must be of type SleepEvent to use the SleepToCSVExporter");
            }

            var sleepEvent = eventBase as SleepEvent;

            await Task.Run(() =>
            {
                var dataDump = new List <Dictionary <string, object> >();

                foreach (var sequence in sleepEvent.Sequences)
                {
                    var sleepSequence = sequence as SleepEventSequenceItem;
                    var sequenceData  = new Dictionary <string, object>(BaseSequenceDumper.Dump(sequence));

                    sequenceData.Add("Sequence Type", sleepSequence.SequenceType);
                    sequenceData.Add("Sleep Time", sleepSequence.SleepTime);
                    sequenceData.Add("Day Id", sleepSequence.DayId);
                    sequenceData.Add("Sleep Type", sleepSequence.SleepType);

                    dataDump.Add(sequenceData);
                }

                // TODO: pass through convertDateTimeToLocal
                CSVExporter.ExportToFile(dataDump, filePath);
            });
        }