in src/main/java/com/aliyun/openservices/paifeaturestore/domain/Project.java [40:84]
public Project(com.aliyun.openservices.paifeaturestore.model.Project project,boolean usePublicAddress) throws Exception {
this.project = project;
this.signature = project.getSignature();
switch (project.getOnlineDatasourceType()) {
case Datasource_Type_Hologres:
HologresOnlinestore hologresOnlinestore = new HologresOnlinestore();
hologresOnlinestore.setDatasource(project.getOnlineDataSource());
this.onlineStore = hologresOnlinestore;
if (null == HologresFactory.get(this.onlineStore.getDatasourceName())) {
Hologres hologres = new Hologres(hologresOnlinestore.getDatasource().generateDSN(DatasourceType.Datasource_Type_Hologres,usePublicAddress));
HologresFactory.register(this.onlineStore.getDatasourceName(), hologres);
}
break;
case Datasource_Type_IGraph:
IGraphOnlineStore iGraphOnlineStore = new IGraphOnlineStore();
iGraphOnlineStore.setDatasource(project.getOnlineDataSource());
this.onlineStore = iGraphOnlineStore;
if (null == IGraphFactory.get(this.onlineStore.getDatasourceName())) {
IGraphFactory.register(this.onlineStore.getDatasourceName(),
iGraphOnlineStore.getDatasource().generateIgraphClient(usePublicAddress));
}
break;
case Datasource_Type_TableStore:
TableStoreOnlinestore tableStoreOnlinestore = new TableStoreOnlinestore();
tableStoreOnlinestore.setDatasource(project.getOnlineDataSource());
this.onlineStore = tableStoreOnlinestore;
if (null == TableStoreFactory.get(this.onlineStore.getDatasourceName())) {
TableStoreFactory.register(this.onlineStore.getDatasourceName(),
tableStoreOnlinestore.getDatasource().generateOTSClient(usePublicAddress));
}
break;
case Datasource_Type_FeatureDB:
FeatureDBOnlinestore featureDBOnlinestore = new FeatureDBOnlinestore();
featureDBOnlinestore.setDatasource(project.getOnlineDataSource());
this.onlineStore = featureDBOnlinestore;
if (null == FeatureDBFactory.get(this.onlineStore.getDatasourceName())) {
FeatureDBClient featureDBClient = featureDBOnlinestore.getDatasource().generateFeatureDBClient(usePublicAddress);
featureDBClient.setSignature(this.signature);
FeatureDBFactory.register(featureDBOnlinestore.getDatasourceName(), featureDBClient);
}
break;
default:
throw new RuntimeException("not support onlinestore type");
}
}