package com.thoughtworks.winstonwolfe.datasource;
import com.thoughtworks.winstonwolfe.config.WinstonConfig;
import java.util.Map;
public class DataSourceFactory {
private WinstonConfig config;
public DataSourceFactory(WinstonConfig config) {
this.config = config;
}
public DataSource buildDataSource() {
FileDataSource fileDataSource = new FileDataSource("read", config);
if (config.exists("apply_changes")) {
Map<String, String> selectors = config.getSubConfig("request_selectors").getFlatStringMap();
Map<String, String> changes = config.getSubConfig("apply_changes").getFlatStringMap();
return new ApplyChangesDataSource(selectors, changes, fileDataSource);
} else {
return fileDataSource;
}
}
}