Commit 4580de5f authored by Francesco Carraro's avatar Francesco Carraro
Browse files

added SpectrumLevel

parent 01411404
Loading
Loading
Loading
Loading
+9 −9
Original line number Diff line number Diff line
@@ -4,15 +4,6 @@ namespace INAF.Apps.Uwp.SLabDataManager.Constants
{
    public class Enums
    {
        public enum StorageItemType
        {
            [Description("txt")]
            Txt,
            [Description("xml")]
            Xml,
            Folder
        }

        public enum FileReadingStatus
        {
            None,
@@ -60,5 +51,14 @@ namespace INAF.Apps.Uwp.SLabDataManager.Constants
            Single,
            All,
        }

        public enum StorageItemType
        {
            [Description("txt")]
            Txt,
            [Description("xml")]
            Xml,
            Folder
        }
    }
}
+4 −2
Original line number Diff line number Diff line
@@ -22,13 +22,15 @@ namespace INAF.Apps.Uwp.SLabDataManager.Helpers.FileReaders
            this.logger = logger;
        }

        public virtual Task<(IChartSpectrumModel spectrum, string exMsg)> readFileAsync(string fileKey)
        public virtual Task<(IChartSpectrumModel spectrum, string exMsg)> readFileAsync(string fileKey,
                                                                                        SpectrumLevel spectrumLevel)
        {
            throw new NotImplementedException();
        }

        public virtual Task<(IChartSpectrumModel spectrum, string exMsg)> readFileAsync(string fileKey,
                                                                                        SpectrumType spectrumType)
                                                                                        SpectrumType spectrumType,
                                                                                        SpectrumLevel spectrumLevel)
        {
            throw new NotImplementedException();
        }
+7 −1
Original line number Diff line number Diff line
using INAF.Apps.Uwp.SLabDataManager.Models.Chart;
using System.Threading.Tasks;
using static INAF.Libraries.NetStandard.SLabCommonModels.Enums.Enums;

namespace INAF.Apps.Uwp.SLabDataManager.Helpers.FileReaders
{
    public interface IFileReader
    {
        Task<(IChartSpectrumModel spectrum, string exMsg)> readFileAsync(string fileKey);
        Task<(IChartSpectrumModel spectrum, string exMsg)> readFileAsync(string fileKey,
                                                                         SpectrumLevel spectrumLevel);

        Task<(IChartSpectrumModel spectrum, string exMsg)> readFileAsync(string fileKey,
                                                                         SpectrumType spectrumType,
                                                                         SpectrumLevel spectrumLevel);
    }
}
+9 −6
Original line number Diff line number Diff line
@@ -20,7 +20,8 @@ namespace INAF.Apps.Uwp.SLabDataManager.Helpers.FileReaders
                                     Logger logger) :base(storageItemsAccessHelper, spectraFactory, logger)
        { }

        public new async Task<(IChartSpectrumModel spectrum, string exMsg)> readFileAsync(string fileKey)
        public new async Task<(IChartSpectrumModel spectrum, string exMsg)> readFileAsync(string fileKey,
                                                                                          SpectrumLevel spectrumLevel)
        {
            SpectrumType spectrumType = fileKey.ToSpectrumType();

@@ -35,11 +36,12 @@ namespace INAF.Apps.Uwp.SLabDataManager.Helpers.FileReaders
                return (null, "SpectrumFileNotFoundMessage".GetText());
            }

            return await readFileCommonAsync(file, spectrumType);
            return await readFileCommonAsync(file, spectrumType, spectrumLevel);
        }

        public new async Task<(IChartSpectrumModel spectrum, string exMsg)> readFileAsync(string fileKey,
                                                                                          SpectrumType spectrumType)
                                                                                          SpectrumType spectrumType,
                                                                                          SpectrumLevel spectrumLevel)
        {
            /* retrieve file from storage */
            StorageFile file = (StorageFile)await storageItemsAccessHelper.getAsync(fileKey);
@@ -52,11 +54,12 @@ namespace INAF.Apps.Uwp.SLabDataManager.Helpers.FileReaders
                return (null, "SpectrumFileNotFoundMessage".GetText());
            }

            return await readFileCommonAsync(file, spectrumType);
            return await readFileCommonAsync(file, spectrumType, spectrumLevel);
        }

        private async Task<(IChartSpectrumModel spectrum, string exMsg)> readFileCommonAsync(StorageFile file,
                                                                                             SpectrumType spectrumType)
                                                                                             SpectrumType spectrumType,
                                                                                             SpectrumLevel spectrumLevel)
        {
            IChartSpectrumModel spectrum = null;
            string exMsg = string.Empty;
@@ -73,7 +76,7 @@ namespace INAF.Apps.Uwp.SLabDataManager.Helpers.FileReaders
                }

                /* ...and manage lines... */
                spectrum = spectraFactory.build(spectrumType, file.Name, file.Path);
                spectrum = spectraFactory.build(spectrumType, spectrumLevel, file.Name, file.Path);

                int linesNum = lines.Count;

+3 −0
Original line number Diff line number Diff line
@@ -14,6 +14,9 @@ namespace INAF.Apps.Uwp.SLabDataManager.Helpers.FileReaders.SpectrumFiles

        [XmlElement(ElementName = "Type")]
        public string Type { get; set; }

        [XmlElement(ElementName = "Level")]
        public string Level { get; set; }
    }

    [XmlRoot(ElementName = "ParentFiles")]
Loading