package org.dashbuilder.client.widgets.dataset.editor.driver;
import com.google.gwt.core.client.GWT;
import javax.enterprise.context.ApplicationScoped;
import javax.enterprise.inject.Produces;
/**
* <p>Factory for the different gwt editor drivers for a DataSetDef. Drivers must be created at compile time via deferred binding.</p>
*/
@ApplicationScoped
public class DataSetEditorDriverFactory {
final DataSetDefProviderTypeDriver dataSetDefProviderTypeDriver = GWT.create(DataSetDefProviderTypeDriver.class);
final DataSetDefBasicAttributesDriver dataSetDefBasicAttributesDriver = GWT.create(DataSetDefBasicAttributesDriver.class);
final SQLDataSetDefAttributesDriver sqlDataSetDefAttributesDriver = GWT.create(SQLDataSetDefAttributesDriver.class);
final BeanDataSetDefAttributesDriver beanDataSetDefAttributesDriver = GWT.create(BeanDataSetDefAttributesDriver.class);
final ElasticSearchDataSetDefAttributesDriver elasticSearchDataSetDefAttributesDriver = GWT.create(ElasticSearchDataSetDefAttributesDriver.class);
final CSVDataSetDefAttributesDriver csvDataSetDefAttributesDriver = GWT.create(CSVDataSetDefAttributesDriver.class);
final SQLDataSetDefDriver sqlDataSetDefDriver = GWT.create(SQLDataSetDefDriver.class);
final BeanDataSetDefDriver beanDataSetDefDriver = GWT.create(BeanDataSetDefDriver.class);
final CSVDataSetDefDriver csvDataSetDefDriver = GWT.create(CSVDataSetDefDriver.class);
final ElasticSearchDataSetDefDriver elasticSearchDataSetDefDriver = GWT.create(ElasticSearchDataSetDefDriver.class);
final DataColumnDefDriver dataColumnDefDriver = GWT.create(DataColumnDefDriver.class);
@Produces
public DataSetDefProviderTypeDriver dataSetDefProviderTypeDriver() {
return dataSetDefProviderTypeDriver;
}
@Produces
public SQLDataSetDefDriver sqlDataSetDefDriver() {
return sqlDataSetDefDriver;
}
@Produces
public DataColumnDefDriver dataColumnDefDriver() {
return dataColumnDefDriver;
}
@Produces
public SQLDataSetDefAttributesDriver sqlDataSetDefAttributesDriver() { return sqlDataSetDefAttributesDriver; }
@Produces
public DataSetDefBasicAttributesDriver dataSetDefBasicAttributesDriver() {
return dataSetDefBasicAttributesDriver;
}
@Produces
public BeanDataSetDefAttributesDriver beanDataSetDefAttributesDriver() {
return beanDataSetDefAttributesDriver;
}
@Produces
public CSVDataSetDefAttributesDriver csvDataSetDefAttributesDriver() {
return csvDataSetDefAttributesDriver;
}
@Produces
public CSVDataSetDefDriver csvDataSetDefDriver() {
return csvDataSetDefDriver;
}
@Produces
public BeanDataSetDefDriver beanDataSetDefDriver() {
return beanDataSetDefDriver;
}
@Produces
public ElasticSearchDataSetDefAttributesDriver elasticSearchDataSetDefAttributesDriver() {
return elasticSearchDataSetDefAttributesDriver;
}
@Produces
public ElasticSearchDataSetDefDriver elasticSearchDataSetDefDriver() {
return elasticSearchDataSetDefDriver;
}
}