Class: Mongo::Protocol::Compressed
- 定義:
- build/ruby-Driver-v 2.19 /lib/mongo/protocol/compressed.rb
Overview
MongoDB ワイヤプロトコルの圧縮メッセージ。
これは、別の命令コードを圧縮する双方向メッセージです。 github.com/mongodb/specions/lob/ Master/source/compression/OP_COMPRESSED.rstを参照してください
定数の概要の削減
- NOOP =
noop コンプレッサー識別子。
'noop'.freeze
- noop_byte =
メッセージが圧縮されていないことを示す バイト(テスト モード)。
0.chr.force_encoding(BSON::バイナリ).freeze
- Snappy =
Snappy コンプレッサー識別子。
' Snappy '.freeze
- SNMPY_BYTE =
メッセージが snappy で圧縮されたことを示す バイト。
1.chr.force_encoding(BSON::バイナリ).freeze
- ZLIB_BYTE =
メッセージがzlibで圧縮されたことを示す バイト。
2.chr.force_encoding(BSON::バイナリ).freeze
- zlib =
zlibコンプレッサー識別子。
'zlib'.freeze
- zstd =
zstd コンプレッサー識別子。
'zstd'.freeze
- ZSST_BYTE =
メッセージが zstd で圧縮されたことを示す バイト。
3.chr.force_encoding(BSON::バイナリ).freeze
- COMPRESSOR_ID_MAP =
バイト マップへのコンプレッサー識別子。
{ Snappy => SNMP, zstd => ZSST_BYTE, zlib => ZLIB_BYTE }.freeze
メッセージから継承された定数
メッセージ::バッチ_サイズ、メッセージ::COLLECTION 、メッセージ::LITIT 、メッセージ:MAX_MESSAGE_SIZE 、 メッセージ:: ORDER 、メッセージ::Q
インスタンス属性の概要
メッセージから継承された属性
インスタンス メソッドの概要を折りたたむ
-
#初期化(メッセージ、コンプレッサー、zlib_compression_level = nil) = 圧縮済み
コンストラクター
新しい OP_COMPRESSED メッセージを作成します。
-
#maybe_inflate ⇒ Protocol::Message
private
OP_COMRESSED メッセージを強調表示し、元のメッセージを返します。
-
応答可能かどうか= true、false
メッセージがデータベースからの応答を要求しているかどうか。
メッセージから継承されたメソッド
# =========================================================================================================
IDに含まれるメソッド
コンストラクターの詳細
#初期化(メッセージ、コンプレッサー、zlib_compression_level = nil) =圧縮済み
新しい OP_COMPRESSED メッセージを作成します。
79 80 81 82 83 84 85 86 87 |
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/protocol/compressed.rb', 行79 デフォルト 初期化(, compressor, zlib_compression_level = nil) @独自_メッセージ = @元の_op_code = .op_code @uncompressed_size = 0 @compressor_id = COMPRESSOR_ID_MAP[compressor] @compressed_message = '' @zlib_compression_level = zlib_compression_level 場合 zlib_compression_level & & zlib_compression_level != -1 @request_id = .request_id end |
インスタンス メソッドの詳細
でも、プロトコル::Message
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
OP_COMRESSED メッセージを強調表示し、元のメッセージを返します。
95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 |
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/protocol/compressed.rb', 行95 デフォルト Max_infrate = レジストリ.得る(@元の_op_code).割り当てる バッファ = 解凍(@compressed_message) .送信(:fields).各 行う |フィールド| 場合 フィールド[:multi] メッセージ.deserialize_array(, バッファ, フィールド) else メッセージ.deserialize_field(, バッファ, フィールド) end end 場合 .is_a?(Msg) .fix_ after_deserialization end end |
応答可能かどうか= true 、 false
メッセージがデータベースからの応答を要求しているかどうか。
120 121 122 |
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/protocol/compressed.rb', 行120 デフォルト 応答可能かどうか @独自_メッセージ.応答可能かどうか end |