<commit_before>package net.sourceforge.mayfly.jdbc;

import net.sourceforge.mayfly.MayflyConnection;
import net.sourceforge.mayfly.UnimplementedException;

import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.ResultSet;
import java.sql.SQLException;

public class JdbcMetaData implements DatabaseMetaData {

    private final MayflyConnection mayflyConnection;

    public JdbcMetaData(MayflyConnection mayflyConnection) {
        this.mayflyConnection = mayflyConnection;
    }

    public boolean allProceduresAreCallable() throws SQLException {
        throw new UnimplementedException();
    }

    public boolean allTablesAreSelectable() throws SQLException {
        throw new UnimplementedException();
    }

    public boolean dataDefinitionCausesTransactionCommit() throws SQLException {
        throw new UnimplementedException();
    }

    public boolean dataDefinitionIgnoredInTransactions() throws SQLException {
        throw new UnimplementedException();
    }

    public boolean deletesAreDetected(int arg0) throws SQLException {
        throw new UnimplementedException();
    }

    public boolean doesMaxRowSizeIncludeBlobs() throws SQLException {
        throw new UnimplementedException();
    }

    public ResultSet getAttributes(String arg0, String arg1, String arg2, String arg3) throws SQLException {
        throw new UnimplementedException();
    }

    public ResultSet getBestRowIdentifier(String arg0, String arg1, String arg2, int arg3, boolean arg4) throws SQLException {
        throw new UnimplementedException();
    }

    public String getCatalogSeparator() throws SQLException {
        throw new UnimplementedException();
    }

    public String getCatalogTerm() throws SQLException {
        throw new UnimplementedException();
    }

    public ResultSet getCatalogs() throws SQLException {
        throw new UnimplementedException();
    }

    public ResultSet getColumnPrivileges(String arg0, String arg1, String arg2, String arg3) throws SQLException {
        throw new UnimplementedException();
    }

    public ResultSet getColumns(
        String catalog, String schemaPattern, String table, String column) 
    throws SQLException {
        return mayflyConnection.getColumns(table, column);
    }

    public Connection getConnection() throws SQLException {
        throw new UnimplementedException();
    }

    public ResultSet getCrossReference(String arg0, String arg1, String arg2, String arg3, String arg4, String arg5)
        throws SQLException {
        throw new UnimplementedException();
    }

    public int getDatabaseMajorVersion() throws SQLException {
        throw new UnimplementedException();
    }

    public int getDatabaseMinorVersion() throws SQLException {
        throw new UnimplementedException();
    }

    public String getDatabaseProductName() throws SQLException {
        return "Mayfly";
    }

    public String getDatabaseProductVersion() throws SQLException {
        throw new UnimplementedException();
    }

    public int getDefaultTransactionIsolation() throws SQLException {
        throw new UnimplementedException();
    }

    public int getDriverMajorVersion() {
        throw new UnimplementedException();
    }

    public int getDriverMinorVersion() {
        throw new UnimplementedException();
    }

    public String getDriverName() throws SQLException {
        throw new UnimplementedException();
    }

    public String getDriverVersion() throws SQLException {
        throw new UnimplementedException();
    }

    public ResultSet getExportedKeys(String arg0, String arg1, String arg2) throws SQLException {
        throw new UnimplementedException();
    }
<commit_msg>Define various meta data methods which Hibernate wants. As these are mostly versions and names and such, I'm not sure adding tests is particularly interesting, although for at least some it could be potentially fruitful.<commit_after>package net.sourceforge.mayfly.jdbc;

import net.sourceforge.mayfly.MayflyConnection;
import net.sourceforge.mayfly.UnimplementedException;

import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.ResultSet;
import java.sql.SQLException;

public class JdbcMetaData implements DatabaseMetaData {

    private final MayflyConnection mayflyConnection;

    public JdbcMetaData(MayflyConnection mayflyConnection) {
        this.mayflyConnection = mayflyConnection;
    }

    public boolean allProceduresAreCallable() throws SQLException {
        throw new UnimplementedException();
    }

    public boolean allTablesAreSelectable() throws SQLException {
        throw new UnimplementedException();
    }

    public boolean dataDefinitionCausesTransactionCommit() throws SQLException {
        return false;
    }

    public boolean dataDefinitionIgnoredInTransactions() throws SQLException {
        return false;
    }

    public boolean deletesAreDetected(int arg0) throws SQLException {
        throw new UnimplementedException();
    }

    public boolean doesMaxRowSizeIncludeBlobs() throws SQLException {
        throw new UnimplementedException();
    }

    public ResultSet getAttributes(String arg0, String arg1, String arg2, String arg3) throws SQLException {
        throw new UnimplementedException();
    }

    public ResultSet getBestRowIdentifier(String arg0, String arg1, String arg2, int arg3, boolean arg4) throws SQLException {
        throw new UnimplementedException();
    }

    public String getCatalogSeparator() throws SQLException {
        throw new UnimplementedException();
    }

    public String getCatalogTerm() throws SQLException {
        throw new UnimplementedException();
    }

    public ResultSet getCatalogs() throws SQLException {
        throw new UnimplementedException();
    }

    public ResultSet getColumnPrivileges(String arg0, String arg1, String arg2, String arg3) throws SQLException {
        throw new UnimplementedException();
    }

    public ResultSet getColumns(
        String catalog, String schemaPattern, String table, String column) 
    throws SQLException {
        return mayflyConnection.getColumns(table, column);
    }

    public Connection getConnection() throws SQLException {
        throw new UnimplementedException();
    }

    public ResultSet getCrossReference(String arg0, String arg1, String arg2, String arg3, String arg4, String arg5)
        throws SQLException {
        throw new UnimplementedException();
    }

    public int getDatabaseMajorVersion() throws SQLException {
        return 0;
    }

    public int getDatabaseMinorVersion() throws SQLException {
        return 0;
    }

    public String getDatabaseProductName() throws SQLException {
        return "Mayfly";
    }

    public String getDatabaseProductVersion() throws SQLException {
        return "";
    }

    public int getDefaultTransactionIsolation() throws SQLException {
        throw new UnimplementedException();
    }

    public int getDriverMajorVersion() {
        return 0;
    }

    public int getDriverMinorVersion() {
        return 0;
    }

    public String getDriverName() throws SQLException {
        return "Mayfly JDBC Driver";
    }

    public String getDriverVersion() throws SQLException {
        return "";
    }

    public ResultSet getExportedKeys(String arg0, String arg1, String arg2) throws SQLException {
        throw new UnimplementedException();
    }

{'fraction_non_alphanumeric': 0.06177658142664872, 'fraction_numerical': 0.006729475100942127, 'mean_word_length': 3.4765060240963854, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '928746', 'n_tokens_mistral': 1852, 'n_tokens_neox': 1788, 'n_words': 567}