package org.elasticsearch; import com.google.common.reflect.TypeToken; import com.google.gson.Gson; import org.elasticsearch.es.JdbcSearchResponseResolver; import org.springframework.dao.DataAccessException; import java.util.List; public interface ElasticSqlMapExecutor { // statementName List queryForList(String statementName, Class clazz) throws DataAccessException; List queryForList(String statementName, Class clazz, String datePattern) throws DataAccessException; List queryForList(String statementName, TypeToken typeToken) throws DataAccessException; List queryForList(String statementName, TypeToken typeToken, String datePattern) throws DataAccessException; List queryForList(String statementName, Class clazz, Gson gson) throws DataAccessException; List queryForList(String statementName, TypeToken typeToken, Gson gson) throws DataAccessException; List queryForList(String statementName, JdbcSearchResponseResolver.ResolveStrategy resolveStrategy) throws DataAccessException; // String statementName, Object parameterObject List queryForList(String statementName, Object parameterObject, Class clazz) throws DataAccessException; List queryForList(String statementName, Object parameterObject, Class clazz, String datePattern) throws DataAccessException; List queryForList(String statementName, Object parameterObject, TypeToken typeToken) throws DataAccessException; List queryForList(String statementName, Object parameterObject, TypeToken typeToken, String datePattern) throws DataAccessException; List queryForList(String statementName, Object parameterObject, Class clazz, Gson gson) throws DataAccessException; List queryForList(String statementName, Object parameterObject, TypeToken typeToken, Gson gson) throws DataAccessException; List queryForList(String statementName, Object parameterObject, JdbcSearchResponseResolver.ResolveStrategy resolveStrategy) throws DataAccessException; // statementName T queryForObject(String statementName, Class clazz) throws DataAccessException; T queryForObject(String statementName, Class clazz, String datePattern) throws DataAccessException; T queryForObject(String statementName, TypeToken typeToken) throws DataAccessException; T queryForObject(String statementName, TypeToken typeToken, String datePattern) throws DataAccessException; T queryForObject(String statementName, Class clazz, Gson gson) throws DataAccessException; T queryForObject(String statementName, TypeToken typeToken, Gson gson) throws DataAccessException; T queryForObject(String statementName, JdbcSearchResponseResolver.ResolveStrategy resolveStrategy) throws DataAccessException; // String statementName, Object parameterObject T queryForObject(String statementName, Object parameterObject, Class clazz) throws DataAccessException; T queryForObject(String statementName, Object parameterObject, Class clazz, String datePattern) throws DataAccessException; T queryForObject(String statementName, Object parameterObject, TypeToken typeToken) throws DataAccessException; T queryForObject(String statementName, Object parameterObject, TypeToken typeToken, String datePattern) throws DataAccessException; T queryForObject(String statementName, Object parameterObject, Class clazz, Gson gson) throws DataAccessException; T queryForObject(String statementName, Object parameterObject, TypeToken typeToken, Gson gson) throws DataAccessException; T queryForObject(String statementName, Object parameterObject, JdbcSearchResponseResolver.ResolveStrategy resolveStrategy) throws DataAccessException; }