public static Object deflateColumn(
      TableDetails tableDetails, TableDetails.ColumnDetails columnDetails, Object dataModelObject) {
    try {
      Object value = columnDetails.getColumnField().get(dataModelObject);

      if (value == null) return null;
      else return columnDetails.getColumnTypeMapping().toSqlType(value);
    } catch (IllegalAccessException e) {
      throw new QuantumFluxException(
          "Unable to access protected field, change the access level: "
              + columnDetails.getColumnName());
    }
  }