Files
SewerGenerator/WWTech_KanalSchnittstelle/Exporter/ExporterFactory.cs

40 lines
1.2 KiB
C#

using SewerStammGen.Shared;
using SewerStammGen.Shared.Domain;
using SewerStammGen.Shared.Enum;
using Shared.Contracts;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using WWTech_KanalSchnittstelle.Exporter.Kandis;
using WWTech_KanalSchnittstelle.Exporter.XML;
namespace WWTech_KanalSchnittstelle.Exporter
{
public static class ExporterFactory
{
public static IExport Export(EExportType exportType)
{
using(WWRuntime wWRuntime = new WWRuntime(21))
{
if(!wWRuntime.CheckDongleVorhanden())
{
throw new DongleNotFoundException();
}
wWRuntime.IncrementExportCounter();
wWRuntime.CleanDongle();
}
switch(exportType)
{
case EExportType.KANDIS6: return new KANDIS60();
case EExportType.XML2006: return new XML2006();
case EExportType.XML2013: return new XML2013();
case EExportType.XML2017: return new XML2017();
default: throw new NotImplementedException();
}
}
}
}