Class AsyncRowMapperResultSetExtractor<T>
java.lang.Object
org.springframework.data.cassandra.core.cql.AsyncRowMapperResultSetExtractor<T>
- All Implemented Interfaces:
AsyncResultSetExtractor<List<T>>
public class AsyncRowMapperResultSetExtractor<T>
extends Object
implements AsyncResultSetExtractor<List<T>>
Adapter implementation of the
ResultSetExtractor
interface that delegates to a RowMapper
which is
supposed to create an object for each row. Each object is added to the results List of this
ResultSetExtractor
.
Useful for the typical case of one object per row in the database table. The number of entries in the results will match the number of rows.
Note that a RowMapper
object is typically stateless and thus reusable.
- Since:
- 3.0
- Author:
- Mark Paluch
- See Also:
-
Constructor Summary
ConstructorDescriptionAsyncRowMapperResultSetExtractor
(RowMapper<T> rowMapper) Create a newAsyncRowMapperResultSetExtractor
. -
Method Summary
Modifier and TypeMethodDescriptionextractData
(com.datastax.oss.driver.api.core.cql.AsyncResultSet resultSet) Implementations must implement this method to process the entireAsyncResultSet
.
-
Constructor Details
-
AsyncRowMapperResultSetExtractor
Create a newAsyncRowMapperResultSetExtractor
.- Parameters:
rowMapper
- theRowMapper
which creates an object for each row, must not be null.
-
-
Method Details
-
extractData
public CompletableFuture<List<T>> extractData(com.datastax.oss.driver.api.core.cql.AsyncResultSet resultSet) throws com.datastax.oss.driver.api.core.DriverException, DataAccessException Description copied from interface:AsyncResultSetExtractor
Implementations must implement this method to process the entireAsyncResultSet
.- Specified by:
extractData
in interfaceAsyncResultSetExtractor<T>
- Parameters:
resultSet
-AsyncResultSet
to extract data from.- Returns:
- an arbitrary result object, or null if none (the extractor will typically be stateful in the latter case).
- Throws:
com.datastax.oss.driver.api.core.DriverException
- if aDriverException
is encountered getting column values or navigating (that is, there's no need to catchDriverException
)DataAccessException
- in case of custom exceptions
-