2020-05-03 12:12:09 +02:00
using System.IO ;
using System.Text ;
using ChanSort.Api ;
2014-05-25 16:13:15 +02:00
namespace ChanSort.Loader.GlobalClone
{
public class GcSerializerPlugin : ISerializerPlugin
{
2017-10-28 13:20:39 +02:00
public string DllName { get ; set ; }
2019-11-11 16:06:11 +01:00
public string PluginName = > "LG GlobalClone" ;
public string FileFilter = > "*Clone*.tll;xx*.xml;xx*.tll" ;
2014-05-25 16:13:15 +02:00
public SerializerBase CreateSerializer ( string inputFile )
{
2020-05-03 12:12:09 +02:00
// files with <TLLDATA><ModelInfo><CloneVersion><MajorVersion>200</MajorVersion> .... contain all the actual channel data in JSON format inside a <legacybroadcast> element
var content = File . ReadAllText ( inputFile , Encoding . UTF8 ) ;
2020-05-03 18:07:28 +02:00
if ( content . Contains ( "<legacybroadcast>" ) )
2020-05-03 12:12:09 +02:00
return new GcJsonSerializer ( inputFile , content ) ;
return new GcXmlSerializer ( inputFile ) ;
2014-05-25 16:13:15 +02:00
}
}
}