You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

39 lines
641 B

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Factory.StaticFactoryMethod
{
public enum LoggerType
{
DB,
XML,
JSON
}
class LoggerFactory
{
public static ILogger Create(LoggerType loggerType)
{
ILogger logger = null;
switch (loggerType)
{
case LoggerType.DB:
logger = new DbLogger();
break;
case LoggerType.XML:
logger = new XmlLogger();
break;
case LoggerType.JSON:
logger = new JsonLogger();
break;
default:
throw new InvalidOperationException();
}
return logger;
}
}
}