示例#1
0
        private DbSetSettings GetSettings(bool cached)
        {
            if (cached)
            {
                if (_settingsCached == null)
                {
                    _settingsCached = GetSettings(false);
                }
                return(_settingsCached);
            }

            var fileName = _fileManager.CombineDirectories(_inDir, FileEngineDefaults.SetSettingsName);

            if (!_fileManager.FileExists(fileName))
            {
                ChangeSettings(new DbSetSettings(), false);
            }
            try {
                var serializer = new XmlSerializer(typeof(DbSetSettings));
                var settings   = new XmlReaderSettings();
                using (var textReader = new StreamReader(_fileManager.FileReadStream(fileName)))
                {
                    var xmlReader = XmlReader.Create(textReader, settings);
                    return((serializer.Deserialize(xmlReader) as DbSetSettings) ?? new DbSetSettings());
                }
            }
            catch (InvalidOperationException)  // XML niet in juiste format
            {
                //ChangeSettings(nieuw, false);
                return(new DbSetSettings());
            }
        }
 private ZipArchive GetZip()
 {
     if (_archiveStream == null)
     {
         _archiveStream = _fileManager.FileReadStream(_fileManager.CombineDirectories(_atDir, _setName));
     }
     return(_archive ?? (_archive = new ZipArchive(_archiveStream, ZipArchiveMode.Read)));
 }
        private static Instellingen LoadFromXmlFile(IFileOperations fileManager, string instellingenFile, string maskFile)
        {
            Instellingen instellingen;

            if (!fileManager.FileExists(instellingenFile))
                return null;

            var serializer = new XmlSerializer(typeof(Instellingen));
            var settings = new XmlReaderSettings();

            using (var textReader = new StreamReader(fileManager.FileReadStream(instellingenFile)))
            {
                using (var xmlReader = XmlReader.Create(textReader, settings))
                {
                    instellingen = serializer.Deserialize(xmlReader) as Instellingen;
                }
            }
            if (instellingen == null)
                return null;

            if (!fileManager.FileExists(maskFile))
                return instellingen;

            using (var maskStream = fileManager.FileReadStream(maskFile))
            {
                var xdoc = new XmlDocument();
                xdoc.Load(maskStream);
                var root = xdoc.DocumentElement;

                if (root == null)
                    return instellingen;
                var masklist = root.GetElementsByTagName("Mask");
                foreach (XmlNode mask in masklist)
                {
                    var nameNode = mask.SelectSingleNode("Name");
                    var realnameNode = mask.SelectSingleNode("RealName");
                    if (nameNode != null && realnameNode != null)
                        instellingen.AddMask(new Mapmask(nameNode.InnerText, realnameNode.InnerText));
                }
            }

            return instellingen;
        }
示例#4
0
 private Stream ReadFile(string filePath)
 {
     // Open a new stream and return the stream
     return(_fileManager.FileReadStream(filePath));
 }
 public StreamTokenHolder(IFileOperations fileManager, string url)
 {
     Stream = fileManager.FileReadStream(url);
     ID = Guid.NewGuid();
 }
        private static Instellingen LoadFromJsonFile(IFileOperations fileManager, string instellingenFile, string maskFile)
        {
            try {
                SaveInstellingen saveInstellingen;

                if (!fileManager.FileExists(instellingenFile))
                {
                    return(null);
                }

                using (var file = new StreamReader(fileManager.FileReadStream(instellingenFile)))
                {
                    var serializer = new JsonSerializer();
                    saveInstellingen = (SaveInstellingen)serializer.Deserialize(file, typeof(SaveInstellingen));
                }
                if (saveInstellingen == null)
                {
                    return(null);
                }
                var instellingen = new Instellingen()
                {
                    DatabasePad                       = saveInstellingen.DatabasePad ?? Instellingen.Default.DatabasePad,
                    BijbelPad                         = saveInstellingen.BijbelPad ?? Instellingen.Default.BijbelPad,
                    TemplateTheme                     = saveInstellingen.TemplateTheme ?? Instellingen.Default.TemplateTheme,
                    TemplateLied                      = saveInstellingen.TemplateLied ?? Instellingen.Default.TemplateLied,
                    TemplateBijbeltekst               = saveInstellingen.TemplateBijbeltekst ?? Instellingen.Default.TemplateBijbeltekst,
                    TekstChar_a_OnARow                = saveInstellingen.TekstChar_a_OnARow ?? Instellingen.Default.TekstChar_a_OnARow,
                    TekstFontName                     = saveInstellingen.TekstFontName ?? Instellingen.Default.TekstFontName,
                    TekstFontPointSize                = saveInstellingen.TekstFontPointSize ?? Instellingen.Default.TekstFontPointSize,
                    RegelsPerLiedSlide                = saveInstellingen.RegelsPerLiedSlide ?? Instellingen.Default.RegelsPerLiedSlide,
                    RegelsPerBijbeltekstSlide         = saveInstellingen.RegelsPerBijbeltekstSlide ?? Instellingen.Default.RegelsPerBijbeltekstSlide,
                    Een2eCollecte                     = saveInstellingen.Een2eCollecte ?? Instellingen.Default.Een2eCollecte,
                    DeTekstVraag                      = saveInstellingen.DeTekstVraag ?? Instellingen.Default.DeTekstVraag,
                    DeLezenVraag                      = saveInstellingen.DeLezenVraag ?? Instellingen.Default.DeLezenVraag,
                    GebruikDisplayNameVoorZoeken      = saveInstellingen.GebruikDisplayNameVoorZoeken ?? Instellingen.Default.GebruikDisplayNameVoorZoeken,
                    ToonBijbeltekstenInLiturgie       = saveInstellingen.ToonBijbeltekstenInLiturgie ?? Instellingen.Default.ToonBijbeltekstenInLiturgie,
                    ToonGeenVersenBijVolledigeContent = saveInstellingen.ToonGeenVersenBijVolledigeContent ?? Instellingen.Default.ToonGeenVersenBijVolledigeContent,
                    StandaardTeksten                  = saveInstellingen.StandaardTeksten ?? Instellingen.Default.StandaardTeksten,
                    VersOnderbrekingOverSlidesHeen    = saveInstellingen.VersOnderbrekingOverSlidesHeen ?? Instellingen.Default.VersOnderbrekingOverSlidesHeen,
                    ToonAlsLiedOnderbrokenWordt       = saveInstellingen.ToonAlsLiedOnderbrokenWordt ?? Instellingen.Default.ToonAlsLiedOnderbrokenWordt,
                };

                if (!fileManager.FileExists(maskFile))
                {
                    return(instellingen);
                }

                using (var file = new StreamReader(fileManager.FileReadStream(maskFile)))
                {
                    var serializer = new JsonSerializer();
                    foreach (var mask in (SaveMask[])serializer.Deserialize(file, typeof(SaveMask[])))
                    {
                        instellingen.AddMask(new Mapmask(mask.Name, mask.RealName));
                    }
                }

                return(instellingen);
            }
            catch (Exception exc)
            {
                FoutmeldingSchrijver.Log(exc);
            }
            return(null);
        }