モジュール: Mongo::Operation::Executable Private
Overview
このモジュールはプライベート API の一部です。 このモジュールは将来削除または変更される可能性があるため、可能な限り使用しないでください。
操作の共有実行可能な動作。
インスタンス属性の概要を折りたたむ
-
#context ⇒ Operation::Context | nil
private
この操作の実行に使用される操作コンテキスト 。
インスタンス メソッドの概要を折りたたむ
インスタンス属性の詳細
#context ⇒ Operation::Context | nil
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
この操作 の実行に使用される操作コンテキストを返します。
33 34 35 |
# ファイル 'lib/mongo/操作/shared/executable.rb' 行 33 デフォルト context @context end |
インスタンス メソッドの詳細
# do_execute (接続、コンテキスト、オプション = {}) =オブジェクト
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 |
# ファイル 'lib/mongo/操作/shared/executable.rb' 行 35 デフォルト do_execute(接続, context, = {}) :インスタンスにコンテキストを保存し、それを として渡す必要がないようにします。 すべての単一メソッドへの#パラメーター。 次のレガシーメソッドが多数あります: # は、それをパラメーターとして引き続き受け入れます。これらは一時的に残ります # この変更の影響を最小限に抑えるには を行います。 将来的には、次のようになります # はデータをリファクタリングするのに適しているため、代わりにこの保存された参照が使用されます。 @context = context セッション&.マテリアライズドの場合 unping_maybe(セッション, 接続) 行う add_error_ labels(接続, context) 行う checkpoint_for_network_error 行う add_server_iagnostics(接続) 行う get_result(接続, context, ).タップ 行う |結果| 場合 セッション 場合 セッション.in_transaction? & & 接続.説明.load_ balancer? 次に 場合 セッション.ピン留め_接続_グローバル_id ただし、 セッション.ピン留め_接続_グローバル_id == 接続.global_id 発生( エラー::internalDriverError, " 接続を使用する操作は 想定されていましたが、 #{ session . Connector global_id } は、 #{ connection . global_id } を 使用し まし た 。 ) end else セッション.point_to_ connection(接続.global_id) 接続.ピン end end 場合 セッション.スナップショット & & !セッション. セッション. = 結果. end end 場合 結果.has_cursor_id? & & 接続.説明.load_ balancer? 次に 場合 結果.cursor_id == 0 接続.unpin else 接続.ピン end end Process_result(結果, 接続) end end end end end end |
#実行(接続、コンテキスト 、オプション: {}) =オブジェクト
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
88 89 90 91 92 93 94 95 96 97 98 |
# ファイル 'lib/mongo/操作/shared/executable.rb' 行 88 デフォルト 実行する(接続, context:, 次のオプションがあります。 {}) 場合 Lint.有効か ただし、 接続.is_a?(mongo::サーバー::接続) 発生 エラー::LintError, "接続引数のタイプが正しくありません: #{ connection } " end end do_execute(接続, context, ).タップ 行う |結果| validate_result(結果, 接続, context) end end |