Skip to content

Commit

Permalink
Merge pull request #13 from yuu-nkjm/develop
Browse files Browse the repository at this point in the history
Split interface and impl
  • Loading branch information
yuu-nkjm authored Mar 5, 2021
2 parents 8c360d4 + 4edb82f commit 5ed64e6
Show file tree
Hide file tree
Showing 84 changed files with 1,784 additions and 1,320 deletions.
14 changes: 14 additions & 0 deletions src/main/java/org/nkjmlab/sorm4j/ConnectionSource.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
package org.nkjmlab.sorm4j;

import java.sql.Connection;
import java.sql.SQLException;
import javax.sql.DataSource;

public interface ConnectionSource {

Connection getConnection() throws SQLException;

DataSource getDataSource();


}
34 changes: 34 additions & 0 deletions src/main/java/org/nkjmlab/sorm4j/OrmConfigStoreBuilder.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
package org.nkjmlab.sorm4j;

import org.nkjmlab.sorm4j.mapping.OrmConfigStore;
import org.nkjmlab.sorm4j.mapping.extension.ColumnFieldMapper;
import org.nkjmlab.sorm4j.mapping.extension.ResultSetConverter;
import org.nkjmlab.sorm4j.mapping.extension.SqlParameterSetter;
import org.nkjmlab.sorm4j.mapping.extension.TableNameMapper;


public interface OrmConfigStoreBuilder {

OrmConfigStore build();

OrmConfigStoreBuilder setColumnFieldMapper(ColumnFieldMapper fieldNameMapper);

OrmConfigStoreBuilder setTableNameMapper(TableNameMapper tableNameMapper);

OrmConfigStoreBuilder setResultSetConverter(ResultSetConverter resultSetValueGetter);

OrmConfigStoreBuilder setSqlParameterSetter(SqlParameterSetter sqlParameterSetter);

OrmConfigStoreBuilder setMultiRowProcessorType(MultiRowProcessorType multiRowProcessorType);

OrmConfigStoreBuilder setBatchSize(int size);

OrmConfigStoreBuilder setMultiRowSize(int size);

OrmConfigStoreBuilder setBatchSizeWithMultiRow(int size);

public enum MultiRowProcessorType {
SIMPLE_BATCH, MULTI_ROW, MULTI_ROW_AND_BATCH
}

}
2 changes: 1 addition & 1 deletion src/main/java/org/nkjmlab/sorm4j/OrmConnection.java
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
import java.io.Closeable;
import java.util.function.Consumer;
import java.util.function.Function;
import org.nkjmlab.sorm4j.config.OrmConfigStore;
import org.nkjmlab.sorm4j.mapping.OrmConfigStore;

public interface OrmConnection extends OrmMapper, TransactionFunction, Closeable, AutoCloseable {

Expand Down
20 changes: 10 additions & 10 deletions src/main/java/org/nkjmlab/sorm4j/OrmMapReader.java
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@
import java.sql.ResultSet;
import java.util.List;
import java.util.Map;
import org.nkjmlab.sorm4j.config.PreparedStatementParametersSetter;
import org.nkjmlab.sorm4j.config.ResultSetValueGetter;
import org.nkjmlab.sorm4j.mapping.extension.ResultSetConverter;
import org.nkjmlab.sorm4j.mapping.extension.SqlParameterSetter;
import org.nkjmlab.sorm4j.result.LazyResultSet;
import org.nkjmlab.sorm4j.sqlstatement.SqlStatement;

Expand All @@ -17,10 +17,10 @@ public interface OrmMapReader {
* {@link java.util.Map}.
* <p>
* Types returned from the database will be converted to Java types in the map according with the
* correspondence defined in {@link ResultSetValueGetter#getValueBySqlType(ResultSet, int, int)}.
* correspondence defined in {@link ResultSetConverter#getValueBySqlType(ResultSet, int, int)}.
* <p>
* Parameters will be set according with the correspondence defined in
* {@link PreparedStatementParametersSetter#setParameters(PreparedStatement, int[], Object[])}
* {@link SqlParameterSetter#setParameters(PreparedStatement, Object... )}
*
*/

Expand All @@ -29,14 +29,14 @@ public interface OrmMapReader {
Map<String, Object> readMapOne(String sql, Object... parameters);

/**
* Returns an {@link org.nkjmlab.sorm4j.result.LazyResultSet} instance containing data from the execution
* of the provided parametrized SQL and convert it to Stream, List, and so on.
* Returns an {@link org.nkjmlab.sorm4j.mapping.LazyResultSetImpl} instance containing data from
* the execution of the provided parametrized SQL and convert it to Stream, List, and so on.
* <p>
* Types returned from the database will be converted to Java types in the map according with the
* correspondence defined in {@link ResultSetValueGetter#getValueBySqlType(ResultSet, int, int)}.
* correspondence defined in {@link ResultSetConverter#getValueBySqlType(ResultSet, int, int)}.
* <p>
* Parameters will be set according with the correspondence defined in
* {@link PreparedStatementParametersSetter#setParameters(PreparedStatement, int[], Object[])}
* {@link SqlParameterSetter#setParameters(PreparedStatement, Object... )}
*
*/
LazyResultSet<Map<String, Object>> readMapLazy(String sql, Object... parameters);
Expand All @@ -46,10 +46,10 @@ public interface OrmMapReader {
* {@link java.util.Map} containing data from the execution of the provided parametrized SQL and
* <p>
* Types returned from the database will be converted to Java types in the map according with the
* correspondence defined in {@link ResultSetValueGetter#getValueBySqlType(ResultSet, int, int)}.
* correspondence defined in {@link ResultSetConverter#getValueBySqlType(ResultSet, int, int)}.
* <p>
* Parameters will be set according with the correspondence defined in
* {@link JavaTOSqlDataConverter#setParameters(PreparedStatement, int[], Object[])}
* {@link SqlParameterSetter#setParameters(PreparedStatement, Object... )}
*
*/
List<Map<String, Object>> readMapList(String sql, Object... parameters);
Expand Down
12 changes: 5 additions & 7 deletions src/main/java/org/nkjmlab/sorm4j/OrmReader.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import java.sql.PreparedStatement;
import java.util.List;
import org.nkjmlab.sorm4j.config.PreparedStatementParametersSetter;
import org.nkjmlab.sorm4j.mapping.extension.SqlParameterSetter;
import org.nkjmlab.sorm4j.result.LazyResultSet;
import org.nkjmlab.sorm4j.sqlstatement.SqlStatement;

Expand Down Expand Up @@ -67,8 +67,7 @@ public interface OrmReader {
<T> T readFirst(Class<T> objectClass, String sql, Object... parameters);

/**
* Returns an {@link org.nkjmlab.sorm4j.result.LazyResultSet}. It is able to convert to Stream, List, and
* so on.
* Returns an {@link LazyResultSet}. It is able to convert to Stream, List, and so on.
*
* @param <T>
* @param objectClass
Expand All @@ -78,11 +77,10 @@ public interface OrmReader {
<T> LazyResultSet<T> readLazy(Class<T> objectClass, SqlStatement sql);

/**
* Returns an {@link org.nkjmlab.sorm4j.result.LazyResultSet}. It is able to convert to Stream, List, and
* so on.
* Returns an {@link LazyResultSet}. It is able to convert to Stream, List, and so on.
* <p>
* Parameters will be set according with the correspondence defined in
* {@link PreparedStatementParametersSetter#setParameters(PreparedStatement,Object[])}
* {@link SqlParameterSetter#setParameters(PreparedStatement,Object[])}
*
*
*/
Expand All @@ -107,7 +105,7 @@ public interface OrmReader {
* set into the object instance.
* <p>
* Parameters will be set according with the correspondence defined in
* {@link PreparedStatementParametersSetter#setParameters(PreparedStatement, Object[])}
* {@link SqlParameterSetter#setParameters(PreparedStatement, Object[])}
*
*/
<T> List<T> readList(Class<T> objectClass, String sql, Object... parameters);
Expand Down
Loading

0 comments on commit 5ed64e6

Please sign in to comment.