static void Main(string[] args) { logger = Log4NetLogger.GetDefaultLogger(typeof(Program)); try { logger.Info("Ebla Started"); Console.WriteLine("Ebla version 3.0.0.0"); Console.WriteLine("Enter \"{0}\" for instructions", commandHelp); artistCache = new EntityCache <IArtist>(); workCache = new EntityCache <IWork>(); artistStore = new SQLiteArtistDatabase(); workStore = new SQLiteWorkDatabase(artistCache, workCache); repository = new EntityRepository(logger, artistCache, artistStore, workCache, workStore); repository.Initialize(); tagger = new Tagger(); mediaFactory = new MediaFactory(logger); mediaImporter = new MediaImporter(logger, mediaFactory, repository, tagger); var exit = false; while (!exit) { Console.Write(prompt); exit = Execute(Console.ReadLine()); } } catch (Exception ex) { logger.Error("Program.Main", ex); Console.WriteLine("ERROR"); Console.WriteLine(ex.Message); Console.WriteLine(ex.StackTrace); Console.ReadLine(); } }