Вопрос такой. Есть конфиг с указанием того, какие функции в приложении должны быть запущены. Я пока не придумал ничего умнее, чем обертывать все в if (проверка ключа).
Может есть какой-то более правильный способ? Сейчас все выглядит так:
if(parseconfig.usgs_load == "true")
{
if (checkLink(parseconfig.usgs)) // if link in config is alive processing it
{
//auto db = new DBConnect(parseconfig); // already exists
auto seismodownload = new SeismoDownload(parseconfig);
seismodownload.parseusgs();
db.EQInsert(seismodownload.eqs);
//scope(exit) db.stmt.close(); //now we can close connection
}
else
cwritefln("Look like link is dead: %s", parseconfig.emsc_csem.color(fg.red));
}
if(parseconfig.kakiokajma_load == "true")
{
auto kakiokajma = new Kakiokajma(db);
kakiokajma.kakiokajma();
}
if(parseconfig.solarindex_load == "true")
{
auto solarindex = new SolarIndex(parseconfig, db);
solarindex.parse();
core.thread.Thread.sleep( dur!("seconds")(1) );
}