001package org.itsallcode.jdbc.dialect;
002
003import org.itsallcode.jdbc.resultset.generic.ColumnMetaData;
004
005/**
006 * A generic {@link DbDialect} without any special handling.
007 */
008public final class GenericDialect implements DbDialect {
009    /** Singleton instance of the generic DB dialect. */
010    public static final DbDialect INSTANCE = new GenericDialect();
011
012    private GenericDialect() {
013        // Nothing to do
014    }
015
016    @Override
017    public boolean supportsUrl(final String jdbcUrl) {
018        return true;
019    }
020
021    @Override
022    public ColumnValueExtractor createExtractor(final ColumnMetaData column) {
023        return Extractors.generic();
024    }
025
026    @Override
027    public <T> ColumnValueSetter<T> createSetter(final Class<T> type) {
028        return Setters.generic();
029    }
030}