Search in sources :

Example 1 with IDBWriter

use of org.apache.tika.eval.io.IDBWriter in project tika by apache.

the class EvalConsumerBuilder method populateRefTables.

public void populateRefTables() throws IOException, SQLException {
    //test for one ref table.  If it exists, don't populate ref tables
    //TODO: test one at a time
    boolean tableExists = false;
    try (Connection connection = dbUtil.getConnection()) {
        Set<String> tables = dbUtil.getTables(connection);
        if (tables.contains(AbstractProfiler.REF_PARSE_ERROR_TYPES.getName().toLowerCase(Locale.US))) {
            tableExists = true;
        }
    } catch (SQLException e) {
    //swallow
    }
    if (tableExists) {
        return;
    }
    IDBWriter writer = getDBWriter(getRefTableInfos());
    Map<Cols, String> m = new HashMap<>();
    for (AbstractProfiler.PARSE_ERROR_TYPE t : AbstractProfiler.PARSE_ERROR_TYPE.values()) {
        m.clear();
        m.put(Cols.PARSE_ERROR_ID, Integer.toString(t.ordinal()));
        m.put(Cols.PARSE_ERROR_DESCRIPTION, t.name());
        writer.writeRow(AbstractProfiler.REF_PARSE_ERROR_TYPES, m);
    }
    for (AbstractProfiler.EXCEPTION_TYPE t : AbstractProfiler.EXCEPTION_TYPE.values()) {
        m.clear();
        m.put(Cols.PARSE_EXCEPTION_ID, Integer.toString(t.ordinal()));
        m.put(Cols.PARSE_EXCEPTION_DESCRIPTION, t.name());
        writer.writeRow(AbstractProfiler.REF_PARSE_EXCEPTION_TYPES, m);
    }
    for (ExtractReaderException.TYPE t : ExtractReaderException.TYPE.values()) {
        m.clear();
        m.put(Cols.EXTRACT_EXCEPTION_ID, Integer.toString(t.ordinal()));
        m.put(Cols.EXTRACT_EXCEPTION_DESCRIPTION, t.name());
        writer.writeRow(AbstractProfiler.REF_EXTRACT_EXCEPTION_TYPES, m);
    }
    writer.close();
}
Also used : SQLException(java.sql.SQLException) HashMap(java.util.HashMap) IDBWriter(org.apache.tika.eval.io.IDBWriter) Connection(java.sql.Connection) ExtractReaderException(org.apache.tika.eval.io.ExtractReaderException) Cols(org.apache.tika.eval.db.Cols) AbstractProfiler(org.apache.tika.eval.AbstractProfiler)

Aggregations

Connection (java.sql.Connection)1 SQLException (java.sql.SQLException)1 HashMap (java.util.HashMap)1 AbstractProfiler (org.apache.tika.eval.AbstractProfiler)1 Cols (org.apache.tika.eval.db.Cols)1 ExtractReaderException (org.apache.tika.eval.io.ExtractReaderException)1 IDBWriter (org.apache.tika.eval.io.IDBWriter)1