package com.alibaba.doris.dataserver.store.mysql; import java.util.Properties; import javax.sql.DataSource; import org.apache.commons.dbcp.BasicDataSourceFactory; import com.alibaba.doris.common.config.ConfigTools; import com.alibaba.doris.dataserver.store.Storage; import com.alibaba.doris.dataserver.store.StorageConfig; import com.alibaba.doris.dataserver.store.StorageDriver; import com.alibaba.doris.dataserver.store.StorageType; /** * @author ajun Email:jack.yuj@alibaba-inc.com */ public class MysqlStorageDriver implements StorageDriver { private DataSource datasource; private String tableName; public Storage createStorage() { return new MysqlDatabase(tableName, datasource); } public StorageType getStorageType() { return MysqlStorageType.MYSQL; } public void init(StorageConfig config) { Properties properties = ConfigTools.loadProperties(config.getPropertiesFile()); if (properties == null) { throw new RuntimeException("load file from " + config.getPropertiesFile() + " failed "); } tableName = properties.getProperty("doris_mysql.table", "doris_store"); try { datasource = BasicDataSourceFactory.createDataSource(properties); } catch (Exception e) { throw new RuntimeException("data source init error" + e.getMessage(), e); } } }