Skip to content

Commit

Permalink
TEIID-2524 adding a property to trim column names
Browse files Browse the repository at this point in the history
  • Loading branch information
shawkins committed Jun 4, 2013
1 parent 4e07cab commit c44e250
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 16 deletions.
Expand Up @@ -23,19 +23,15 @@

import static org.teiid.translator.TypeFacility.RUNTIME_NAMES.*;

import java.sql.Connection;
import java.sql.SQLException;
import java.sql.Time;
import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

import org.teiid.core.util.PropertiesUtils;
import org.teiid.language.Command;
import org.teiid.language.Function;
import org.teiid.language.Limit;
import org.teiid.metadata.MetadataFactory;
import org.teiid.translator.ExecutionContext;
import org.teiid.translator.SourceSystemFunctions;
import org.teiid.translator.Translator;
Expand All @@ -45,6 +41,7 @@
import org.teiid.translator.jdbc.ConvertModifier;
import org.teiid.translator.jdbc.FunctionModifier;
import org.teiid.translator.jdbc.JDBCExecutionFactory;
import org.teiid.translator.jdbc.JDBCMetdataProcessor;
import org.teiid.translator.jdbc.ModFunctionModifier;
import org.teiid.translator.jdbc.SQLConversionVisitor;

Expand Down Expand Up @@ -319,15 +316,9 @@ public List<String> getSupportedFunctions() {
return supportedFunctions;
}

@Override
public void getMetadata(MetadataFactory metadataFactory, Connection conn) throws TranslatorException {
try {
HiveMetadataProcessor metadataProcessor = new HiveMetadataProcessor();
PropertiesUtils.setBeanProperties(metadataProcessor, metadataFactory.getModelProperties(), "importer"); //$NON-NLS-1$
metadataProcessor.getConnectorMetadata(conn, metadataFactory);
} catch (SQLException e) {
throw new TranslatorException(e);
}
}
@Override
protected JDBCMetdataProcessor createMetadataProcessor() {
return new HiveMetadataProcessor();
}

}
Expand Up @@ -36,6 +36,8 @@

public class HiveMetadataProcessor extends JDBCMetdataProcessor {

private boolean trimColumnNames;

@Override
public void getConnectorMetadata(Connection conn, MetadataFactory metadataFactory) throws SQLException {
List<String> tables = getTables(conn);
Expand Down Expand Up @@ -91,7 +93,10 @@ private void addTable(String tableName, Connection conn, MetadataFactory metadat
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("DESCRIBE "+tableName); //$NON-NLS-1$
while (rs.next()){
String name = rs.getString(1);
String name = rs.getString(1);
if (trimColumnNames) {
name = name.trim();
}
String type = rs.getString(2);
String runtimeType = getRuntimeType(type);

Expand All @@ -100,5 +105,9 @@ private void addTable(String tableName, Connection conn, MetadataFactory metadat
column.setUpdatable(true);
}
rs.close();
}
}

public void setTrimColumNames(boolean trimColumnNames) {
this.trimColumnNames = trimColumnNames;
}
}

0 comments on commit c44e250

Please sign in to comment.