コード例 #1
0
        protected static bool ExtractGoodMergeData(string path, IDictionary <Guid, IList <MediaItemAspect> > extractedAspectData)
        {
            List <string> items;

            using (IExtractor extractor = ExtractorFactory.Create(path))
            {
                if (!extractor.IsArchive())
                {
                    return(false);
                }
                items = extractor.GetArchiveFiles();
            }
            if (items != null && items.Count > 0)
            {
                Logger.Debug("GoodMergeMetadataExtractor: Found {0} items in archive '{1}'", items.Count, path);
                MediaItemAspect.SetCollectionAttribute(extractedAspectData, GoodMergeAspect.ATTR_GOODMERGE_ITEMS, items);
                return(true);
            }
            else
            {
                Logger.Warn("GoodMergeMetadataExtractor: File '{0}' is empty or not a valid archive", path);
            }
            return(false);
        }