1 16 17 package org.pentaho.data.connection.sql; 18 19 import java.sql.ResultSetMetaData ; 20 import java.sql.SQLException ; 21 22 import org.pentaho.core.connection.AbstractPentahoMetaData; 23 24 30 public class SQLMetaData extends AbstractPentahoMetaData { 31 ResultSetMetaData nativeMetaData = null; 32 private Object [][] columnHeaders; 33 34 public SQLMetaData(ResultSetMetaData nativeMetaData) { 35 this.nativeMetaData = nativeMetaData; 36 } 37 38 45 public Object [][] getColumnHeaders() { 46 if (columnHeaders == null) { 47 try { 48 int rowCount = 1; 49 int columnCount = nativeMetaData.getColumnCount(); 50 Object [][] result = new Object [rowCount][columnCount]; 51 for (int column = 0; column < columnCount; column++) { 52 result[0][column] = nativeMetaData.getColumnLabel(column + 1); 53 } 54 this.columnHeaders = result; 55 } catch (SQLException e) { 56 e.printStackTrace(); 58 } 59 } 60 return columnHeaders; 61 } 62 63 public int getColumnCount() { 64 try { 65 return nativeMetaData.getColumnCount(); 66 } catch (SQLException ex) { 67 ex.printStackTrace(); 68 } 69 return -1; 71 } 72 73 public Object [][] getRowHeaders() { 74 return null; 75 } 76 } 77 | Popular Tags |