/** * */ package at.gv.egiz.pdfas.framework.config; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import at.gv.egiz.pdfas.framework.vfilter.VerificationFilterParameters; import at.gv.egiz.pdfas.impl.vfilter.VerificationFilterParametersImpl; import at.knowcenter.wag.egov.egiz.cfg.SettingsReader; import at.knowcenter.wag.egov.egiz.exceptions.SettingsException; /** * Contains helpful Settings functions. * * @author wprinz */ public final class SettingsHelper { /** * The log. */ private static final Log log = LogFactory.getLog(SettingsHelper.class); public static VerificationFilterParameters readVerificationFilterParametersFromSettings() throws SettingsException { boolean binaryOnly = getFlag("binary_only"); boolean assumeOnlySB = getAssumeSB(); boolean checkOld = getFlag("check_old_textual_sigs"); VerificationFilterParameters vfp = new VerificationFilterParametersImpl(binaryOnly, assumeOnlySB, checkOld); return vfp; } protected static boolean getFlag(String settingsKey) throws SettingsException { String flag = SettingsReader.getInstance().getSetting(settingsKey, "false"); boolean b = true; if (flag.equals("false")) { b = false; } return b; } protected static boolean getAssumeSB() throws SettingsException { // backward compatibility for typo String setting_with_typo = SettingsReader.getInstance().getSetting("assume_only_signauture_blocks", null); if (setting_with_typo != null) { log.warn("You still have the typo in your configuration file. Please change 'assume_only_signauture_blocks' to 'assume_only_signature_blocks'. Thanks."); boolean assumeOnlySB_typo = getFlag("assume_only_signauture_blocks"); return assumeOnlySB_typo; } boolean assumeOnlySB = getFlag("assume_only_signature_blocks"); return assumeOnlySB; } }