package com.revolsys.jdbc.io; import java.sql.ResultSetMetaData; import com.revolsys.identifier.Identifier; import com.revolsys.io.PathName; import com.revolsys.jdbc.JdbcConnection; import com.revolsys.record.schema.RecordDefinition; import com.revolsys.record.schema.RecordStore; public interface JdbcRecordStore extends RecordStore { String getDatabaseQualifiedTableName(PathName typePath); String getDatabaseSchemaName(final PathName schemaPath); String getDatabaseTableName(final PathName typePath); String getGeneratePrimaryKeySql(RecordDefinition recordDefinition); JdbcConnection getJdbcConnection(); JdbcConnection getJdbcConnection(boolean autoCommit); default Identifier getNextPrimaryKey(final RecordDefinition recordDefinition) { final String sequenceName = getSequenceName(recordDefinition); return getNextPrimaryKey(sequenceName); } Identifier getNextPrimaryKey(String typePath); RecordDefinition getRecordDefinition(String tableName, ResultSetMetaData resultSetMetaData); String getSequenceName(RecordDefinition recordDefinition); }