public static void loadProperties(String configPath) throws IOException {

		properties = new Properties();
		
		String path = (configPath == null) ? Constants.PROP_FILENAME : configPath;
		
		try {
			properties.load(new FileInputStream(path));
			validateProperties();
			logger.info("config.properties file loaded.");
		} catch (IOException e) {
			// properties file does not exist
			Logger.getLogger(Properties.class.getName()).warn("Properties file not found.");

			validateProperties();

			properties.store(new FileOutputStream(path), null);
			Logger.getLogger(Properties.class.getName()).info("New properties file created with default values.");
		}
		displayConfiguration();
	}