in rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ResultSetShape.java [82:118]
protected ResultSetShape(List resultDescriptor, Config model) {
TypeHelper helper = TypeHelper.INSTANCE;
int size = resultDescriptor.size();
columns = new String[size];
tables = new String[size];
types = new Type[size];
schema = new String[size];
for (int i = 0; i < size; i++) {
ResultDescriptor desc = (ResultDescriptor) resultDescriptor.get(i);
if(model.isDatabaseSchemaNameSupported()){
if(desc.getSchemaName() != null && !desc.getSchemaName().equals("")){
tables[i] = desc.getTableName();
schema[i] = desc.getSchemaName();
}else{
tables[i] = desc.getTableName();
schema[i] = "";
}
}else{
tables[i] = desc.getTableName();
schema[i] = "";
}
columns[i] = desc.getColumnName();
int idx = desc.getColumnType().lastIndexOf('.');
String uri = desc.getColumnType().substring(0, idx);
String typeName = desc.getColumnType().substring(idx + 1);
types[i] = helper.getType(uri, typeName);
if (types[i] == null) {
throw new RuntimeException("Could not find type " + desc.getColumnType()
+ " for column " + desc.getColumnName());
}
}
}