package controllers.origo.core; import models.origo.core.Settings; import models.origo.core.SettingsKeys; import org.apache.commons.lang.StringUtils; import origo.listeners.DefaultFormProvider; import origo.listeners.DefaultSubmitHandler; import play.jobs.Job; import play.jobs.OnApplicationStart; @OnApplicationStart public class CoreBootStrap extends Job { public void doJob() { Settings settings = Settings.load(); setValueIfMissing(settings, SettingsKeys.Core.DEFAULT_FORM_TYPE, DefaultFormProvider.TYPE); setValueIfMissing(settings, SettingsKeys.Core.SUBMIT_HANDLER, DefaultSubmitHandler.class.getName()); settings.save(); } private void setValueIfMissing(Settings settings, String settingKey, String newValue) { if (StringUtils.isBlank(settings.getValue(settingKey))) { settings.setValue(settingKey, newValue); } } }