クラス ObservableReactiveSession
- 実装されたすべてのインターフェース:
CloseableSE
、AutoCloseableSE
、ReactiveSession
ReactiveSession
を装備しました。- 導入:
- 4.0
- 作成者:
- Mark Paluch, Marcin Grzejszczak
メソッドのサマリー
修飾子と型メソッド説明void
close()
このセッションインスタンスのシャットダウンを開始し、シャットダウンが完了するまでブロックします。static ReactiveSession
create
(ReactiveSession session, io.micrometer.observation.ObservationRegistry observationRegistry) ObservableReactiveSession
を作成するためのファクトリメソッド。static ReactiveSession
create
(ReactiveSession session, StringSE remoteServiceName, io.micrometer.observation.ObservationRegistry observationRegistry) ObservableReactiveSession
を作成するためのファクトリメソッド。reactor.core.publisher.Mono<ReactiveResultSet>
execute
(com.datastax.oss.driver.api.core.cql.Statement<?> statement) 提供されたクエリを実行します。reactor.core.publisher.Mono<ReactiveResultSet>
提供されたクエリを実行します。reactor.core.publisher.Mono<ReactiveResultSet>
指定された値を使用して、指定されたクエリを実行します。reactor.core.publisher.Mono<ReactiveResultSet>
指定された名前付き値を使用して、指定されたクエリを実行します。com.datastax.oss.driver.api.core.context.DriverContext
このドライバーインスタンスで使用されるすべてのポリシーへのアクセスを提供するコンテキストを返します。OptionalSE<com.datastax.oss.driver.api.core.CqlIdentifier>
このセッションが現在接続されているキースペース、またはこのセッションがどのキースペースにも接続されていない場合はOptional.empty()
です。com.datastax.oss.driver.api.core.metadata.Metadata
Cassandra クラスターのトポロジとスキーマメタデータのスナップショットを返します。boolean
isClosed()
このセッションインスタンスが閉じられているかどうか。reactor.core.publisher.Mono<com.datastax.oss.driver.api.core.cql.PreparedStatement>
prepare
(com.datastax.oss.driver.api.core.cql.SimpleStatement statement) 提供されたクエリを準備します。reactor.core.publisher.Mono<com.datastax.oss.driver.api.core.cql.PreparedStatement>
指定されたクエリ文字列を準備します。
メソッドの詳細
create
public static ReactiveSession create(ReactiveSession session, io.micrometer.observation.ObservationRegistry observationRegistry) ObservableReactiveSession
を作成するためのファクトリメソッド。- パラメーター:
session
- リアクティブセッション。observationRegistry
- 観察レジストリ。- 戻り値:
ReactiveSession
のトレースされた表現。
create
public static ReactiveSession create(ReactiveSession session, StringSE remoteServiceName, io.micrometer.observation.ObservationRegistry observationRegistry) ObservableReactiveSession
を作成するためのファクトリメソッド。- パラメーター:
session
- リアクティブセッション。observationRegistry
- 観察レジストリ。- 戻り値:
ReactiveSession
のトレースされた表現。
isClosed
public boolean isClosed()インターフェースからコピーされた説明:ReactiveSession
このセッションインスタンスが閉じられているかどうか。このメソッドは、このセッションのクローズが開始されるとすぐに true を返しますが、クローズが完了したことを保証するものではないことに注意してください。クローズが完了したことを保証したい場合は、
close()
を呼び出して、それが返されるまで待機します (または、非常に短いタイムアウトでcloseAsync()
の get メソッドを呼び出し、タイムアウトしないことを確認します)。- 次で指定:
- インターフェース
ReactiveSession
のisClosed
- 戻り値:
- このセッションインスタンスが閉じられている場合は
true
、それ以外の場合はfalse
です。
getContext
public com.datastax.oss.driver.api.core.context.DriverContext getContext()インターフェースからコピーされた説明:ReactiveSession
このドライバーインスタンスで使用されるすべてのポリシーへのアクセスを提供するコンテキストを返します。- 次で指定:
- インターフェース
ReactiveSession
のgetContext
- 戻り値:
- このドライバーインスタンスで使用されるすべてのポリシーへのアクセスを提供するコンテキスト。
getKeyspace
インターフェースからコピーされた説明:ReactiveSession
このセッションが現在接続されているキースペース、またはこのセッションがどのキースペースにも接続されていない場合はOptional.empty()
です。これを設定するには、セッションを初期化する前(構成の
session-keyspace
オプションまたはSessionBuilder.withKeyspace(CqlIdentifier)
を使用)または実行時に、クライアントがキースペースを変更するリクエスト(CQLUSE
クエリなど)を発行する場合の 2 つの方法があります。この 2 番目の方法は、古いキースペースを期待する他のリクエストが同時に実行される可能性があるため、本質的に安全ではないことに注意してください。些細なケース(リクエストが同時に実行されない cqlsh スタイルのプログラムなど)を除いて、この方法は強く推奨されません。- 次で指定:
- インターフェース
ReactiveSession
のgetKeyspace
getMetadata
public com.datastax.oss.driver.api.core.metadata.Metadata getMetadata()インターフェースからコピーされた説明:ReactiveSession
Cassandra クラスターのトポロジとスキーマメタデータのスナップショットを返します。アトミック更新を提供するために、このメソッドは不変のオブジェクトを返します。つまり、特定のインスタンスに含まれるノードリスト、トークンマップ、スキーマは常に互いに一貫性を保ちます (ただし、
Node
自体は不変ではないことに注意してください。そのプロパティの一部 (特にNode.getState()
) は動的に更新されます)。上記の結果から、メタデータの最新のビューが必要になるたびに、このメソッドを呼び出す必要があります。これは凍結されたスナップショットであり、時間の経過とともに古くなるため、一度呼び出して結果を保存しないでください。
メタデータのリフレッシュによってイベント (ノードの追加 / 削除、スキーマイベントなど) がトリガーされた場合、これらのイベントを受信するまでにメタデータの新しいバージョンが表示されることが保証されます。
- 次で指定:
- インターフェース
ReactiveSession
のgetMetadata
- 戻り値:
null
になることはありませんが、構成でメタデータが無効になっている場合は空になる可能性があります。
execute
インターフェースからコピーされた説明:ReactiveSession
提供されたクエリを実行します。これは
execute(new SimpleStatement(query))
の便利なメソッドです。- 次で指定:
- インターフェース
ReactiveSession
のexecute
- パラメーター:
cql
- 実行する CQL クエリ。- 戻り値:
- クエリの結果。その結果は null になることはありませんが、空になることがあります (SELECT 以外のクエリの場合は空になります)。
execute
インターフェースからコピーされた説明:ReactiveSession
指定された値を使用して、指定されたクエリを実行します。これは
execute(new SimpleStatement(query, values))
の便利なメソッドです。- 次で指定:
- インターフェース
ReactiveSession
のexecute
- パラメーター:
cql
- 実行する CQL クエリ。objects
-query
の実行に必要な値。詳細についてはSimpleStatement.newInstance(String, Object...)
を参照してください。- 戻り値:
- クエリの結果。その結果は null になることはありませんが、空になることがあります (SELECT 以外のクエリの場合は空になります)。
execute
public reactor.core.publisher.Mono<ReactiveResultSet> execute(StringSE cql, MapSE<StringSE, ObjectSE> map) インターフェースからコピーされた説明:ReactiveSession
指定された名前付き値を使用して、指定されたクエリを実行します。これは
execute(new SimpleStatement(query, values))
の便利なメソッドです。- 次で指定:
- インターフェース
ReactiveSession
のexecute
- パラメーター:
cql
- 実行する CQL クエリ。map
-query
の実行に必要な値。詳細についてはSimpleStatement.newInstance(String, Map)
を参照してください。- 戻り値:
- クエリの結果。その結果は null になることはありませんが、空になることがあります (SELECT 以外のクエリの場合は空になります)。
execute
public reactor.core.publisher.Mono<ReactiveResultSet> execute(com.datastax.oss.driver.api.core.cql.Statement<?> statement) インターフェースからコピーされた説明:ReactiveSession
提供されたクエリを実行します。このメソッドは、データベースから少なくとも何らかの結果が受信されるまでブロックします。ただし、SELECT クエリの場合、結果が完全に受信されたことは保証されません。ただし、データベースから何らかのレスポンスが受信されたことは保証され、特に、リクエストが無効な場合は、このメソッドによって例外がスローされることが保証されます。
- 次で指定:
- インターフェース
ReactiveSession
のexecute
- パラメーター:
statement
- 実行する CQL クエリ (任意のStatement
にすることができます)。- 戻り値:
- クエリの結果。その結果は null になることはありませんが、空になることがあります (SELECT 以外のクエリの場合は空になります)。
prepare
public reactor.core.publisher.Mono<com.datastax.oss.driver.api.core.cql.PreparedStatement> prepare(StringSE cql) インターフェースからコピーされた説明:ReactiveSession
指定されたクエリ文字列を準備します。- 次で指定:
- インターフェース
ReactiveSession
のprepare
- パラメーター:
cql
- 準備する CQL クエリ文字列- 戻り値:
query
に対応する準備されたステートメント。
prepare
public reactor.core.publisher.Mono<com.datastax.oss.driver.api.core.cql.PreparedStatement> prepare(com.datastax.oss.driver.api.core.cql.SimpleStatement statement) インターフェースからコピーされた説明:ReactiveSession
提供されたクエリを準備します。このメソッドは
ReactiveSession.prepare(String)
のように動作しますが、結果のPreparedStatement
はstatement
に設定されたクエリプロパティを継承することに注意してください。具体的には、次のコードでは次のようになります。Statement toPrepare = SimpleStatement.newInstance("SELECT * FROM test WHERE k=?") .setConsistencyLevel(ConsistencyLevel.QUORUM); PreparedStatement prepared = session.prepare(toPrepare); session.execute(prepared.bind("someValue"));
最終的な実行はクォーラム一貫性で実行されます。同じ CQL ステートメントが複数回準備された場合、このメソッドへのすべての呼び出しは同じ
PreparedStatement
オブジェクトを返しますが、メソッドは準備されたStatement
のプロパティをこのオブジェクトに適用することに注意してください。- 次で指定:
- インターフェース
ReactiveSession
のprepare
- パラメーター:
statement
- 準備する声明- 戻り値:
statement
に対応する準備されたステートメント。
close
public void close()インターフェースからコピーされた説明:ReactiveSession
このセッションインスタンスのシャットダウンを開始し、シャットダウンが完了するまでブロックします。- 次で指定:
- インターフェース
AutoCloseableSE
のclose
- 次で指定:
- インターフェース
CloseableSE
のclose
- 次で指定:
- インターフェース
ReactiveSession
のclose