Ejemplo n.º 1
0
        public void CreateMetadataEmbed(IMetadataConverter metadataConverter, Metadata metadata)
        {
            string result;

            if (metadataConverter.Write(metadata, out result))
            {
                string filePath;
                if (PathFormatter.IsEnabled)
                {
                    filePath = PathFormatter.GetConvertedMetadata(metadata, metadataConverter);
                }
                else
                {
                    filePath = string.Format(CultureInfo.InvariantCulture, "{0}{1}/{2}", PathFormatter.GetCacheDirectory(), metadata.Id, metadataConverter.FileName);
                }

                try
                {
                    Directory.CreateDirectory(Path.GetDirectoryName(filePath));
                    File.WriteAllText(filePath, result);
                }
                catch (Exception ex)
                {
                    Logger.ErrorLineFormat("Failed to write metadata embed: {0}", filePath);
                    Logger.ErrorLineFormat(ex.ToString());
                }
            }
        }