예제 #1
0
        private static Content KrijgDirecteContent(IDbItemContent metItem, string possibleNummer)
        {
            int?nummer = null;
            int parseNummer;

            if (int.TryParse(possibleNummer ?? "", out parseNummer))
            {
                nummer = parseNummer;
            }
            switch (metItem.Type)
            {
            case "txt":
                using (var fs = metItem.GetContentStream())
                {
                    var rdr = new StreamReader(fs, Encoding.Default);
                    // geef de inhoud als tekst terug
                    return(new Content {
                        Inhoud = rdr.ReadToEnd(), InhoudType = InhoudType.Tekst, Nummer = nummer
                    });
                }

            case "ppt":
            case "pptx":
                // geef de inhoud als link terug
                return(new Content {
                    Inhoud = metItem.PersistentLink, InhoudType = InhoudType.PptLink, Nummer = nummer
                });
            }
            // Geef een leeg item terug als we het niet konden verwerken
            return(null);
        }
        internal FileZipBundledItem(IZipArchiveDirectory archiveDir, bool cached)
        {
            var inDir = archiveDir;

            Name = new DbItemName
            {
                Name     = inDir.Name,
                SafeName = FileEngineDefaults.CreateSafeName(inDir.Name)
            };
            Content = new DirContent(inDir.Entries, cached);
        }
예제 #3
0
        public FileItem(IFileOperations fileManager, string filePath)
        {
            _fileManager = fileManager;

            var dirPath = Path.GetFileNameWithoutExtension(filePath);

            Name = new DbItemName
            {
                Name     = dirPath,
                SafeName = FileEngineDefaults.CreateSafeName(dirPath),
            };
            Content = new FileContent(_fileManager, filePath);
        }
        public FileZipItem(ZipArchiveEntry entry)
        {
            var entry1 = entry;

            var entryName = Path.GetFileNameWithoutExtension(entry1.Name);

            Name = new DbItemName
            {
                Name     = entryName,
                SafeName = FileEngineDefaults.CreateSafeName(entryName),
            };
            Content = new FileContent(entry1);
        }
예제 #5
0
        internal FileBundledItem(IFileOperations fileManager, string dirPath, bool cached)
        {
            _fileManager = fileManager;

            var dirName = FileEngineDefaults.ClosestPathName(dirPath);

            Name = new DbItemName
            {
                Name     = dirName,
                SafeName = FileEngineDefaults.CreateSafeName(dirName),
            };

            Content = new DirContent(_fileManager, dirPath, cached);
        }
예제 #6
0
 public ContentDelayed(string possibleNummer, IDbItemContent dbItem)
 {
     PossibleNummer = possibleNummer;
     _dbItem        = dbItem;
 }
 public ContentDelayed(string name, IDbItemContent dbItem)
 {
     Name = name;
     _dbItem = dbItem;
 }
 private static Content KrijgDirecteContent(IDbItemContent metItem, string possibleNummer)
 {
     int? nummer = null;
     int parseNummer;
     if (int.TryParse(possibleNummer ?? "", out parseNummer))
         nummer = parseNummer;
     switch (metItem.Type)
     {
         case "txt":
             using (var fs = metItem.Content)
             {
                 using (var rdr = new StreamReader(fs, Encoding.Default))
                 {
                     // geef de inhoud als tekst terug
                     return new Content { Inhoud = rdr.ReadToEnd(), InhoudType = InhoudType.Tekst, Nummer = nummer };
                 }
             }
         case "ppt":
         case "pptx":
             // geef de inhoud als link terug
             return new Content { Inhoud = metItem.PersistentLink, InhoudType = InhoudType.PptLink, Nummer = nummer };
     }
     // Geef een leeg item terug als we het niet konden verwerken
     return null;
 }