class DataSourceManager implements AutoCloseable {

    @Override
    public void close() {
        for (DataSourceWrapper each : cachedDataSources.values()) {
            try {
                each.close();
            } catch (final IOException ex) {
                log.error("An exception occurred while closing the data source", ex);
            }
        }
        cachedDataSources.clear();
        sourceDataSources.clear();
    }

    public  DataSourceManager(final List<SyncConfiguration> syncConfigs);

}