Interface ReactivePreparedStatementCreator
- All Known Subinterfaces:
ReactiveCassandraTemplate.ReactivePreparedStatementHandler
- All Known Implementing Classes:
ReactiveCassandraTemplate.PreparedStatementHandler
- Functional Interface:
- This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
One of the two central callback interfaces used by the
ReactiveCqlTemplate
class. This interface creates a
PreparedStatement
given a ReactiveSession
, provided by the ReactiveCqlTemplate
class.
Implementations may either create new prepared statements or reuse cached instances. Implementations do not need to
concern themselves with DriverException
s that may be thrown from operations they attempt. The
ReactiveCqlTemplate
class will catch and handle DriverException
s appropriately.
Classes implementing this interface should also implement the CqlProvider
interface if it is able to provide
the CQL it uses for PreparedStatement
creation. This allows for better contextual information in case of
exceptions.
- Since:
- 2.0
- Author:
- Mark Paluch
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionreactor.core.publisher.Mono<com.datastax.oss.driver.api.core.cql.PreparedStatement>
createPreparedStatement
(ReactiveSession session) Create a statement in this session.
-
Method Details
-
createPreparedStatement
reactor.core.publisher.Mono<com.datastax.oss.driver.api.core.cql.PreparedStatement> createPreparedStatement(ReactiveSession session) throws com.datastax.oss.driver.api.core.DriverException Create a statement in this session. Allows implementations to usePreparedStatement
s. TheReactiveCqlTemplate
will attempt to cache thePreparedStatement
s for future use without the overhead of re-preparing on the entire cluster.- Parameters:
session
- Session to use to create statement, must not be null.- Returns:
- a prepared statement.
- Throws:
com.datastax.oss.driver.api.core.DriverException
- there is no need to catch DriverException that may be thrown in the implementation of this method. TheReactiveCqlTemplate
class will handle them.
-