SQLIngester extends DataIngester { protected Map<String, String> getJDBCProperties() { return conf.getMap(MacroBaseConf.JDBC_PROPERTIES); } SQLIngester(MacroBaseConf conf);  SQLIngester(MacroBaseConf conf, Connection connection); abstract String getDriverClass(); abstract String getJDBCUrlPrefix(); void connect(); Schema getSchema(String baseQuery); String getRowsSql(String baseQuery,
                             Map<String, String> preds,
                             int limit,
                             int offset); @Override RowSet getRows(String baseQuery,
                          Map<String, String> preds,
                          int limit,
                          int offset); @Override MBStream<Datum> getStream();  }
@Test public void testJDBCProperties() throws Exception { MacroBaseConf conf = new MacroBaseConf(); conf.set(MacroBaseConf.ATTRIBUTES, new ArrayList<>()); conf.set(MacroBaseConf.METRICS, new ArrayList<>()); conf.set(MacroBaseConf.BASE_QUERY, "SELECT * FROM test;"); conf.set(MacroBaseConf.JDBC_PROPERTIES, "{sslfactory=org.postgresql.ssl.NonValidatingFactory, ssl=true}"); Map<String, String> properties = new PostgresIngester(conf).getJDBCProperties(); assertEquals("org.postgresql.ssl.NonValidatingFactory", properties.get("sslfactory")); assertEquals("true", properties.get("ssl")); }