@Override
  public int getColumnType(int index) {
    String runtimeTypeName =
        provider.getStringValue(adjustColumn(index), ResultsMetadataConstants.DATA_TYPE);

    JcrType typeInfo = JcrType.typeInfo(runtimeTypeName);
    return typeInfo != null ? typeInfo.getJdbcType() : Types.VARCHAR;
  }
 @Override
 public String getColumnClassName(int index) {
   JcrType typeInfo = JcrType.typeInfo(getColumnTypeName(index));
   return typeInfo != null ? typeInfo.getRepresentationClass().getName() : String.class.getName();
 }