クラス: Mongo::Grid::FSBbucket::Stream::Write
- 継承:
-
オブジェクト
- オブジェクト
- Mongo::Grid::FSBbucket::Stream::Write
- 定義:
- build/ruby-Driver-v 2.19 /lib/mongo/ Grid/stream/write.rb
Overview
FS バケットにファイルを書込むストリーム。
インスタンス属性の概要を折りたたむ
-
#file_id ⇒ Object
readOnly
ファイル_id アップロードされるファイルの ID。
-
#ファイル名= string
readOnly
ファイル名 アップロードされるファイルの名前。
-
#fs ⇒ FSBucket
readOnly
Fs このストリームが書き込む fs バケット。
-
#options ⇒ Hash
readOnly
オプション 書込みストリーム オプション。
インスタンス メソッドの概要を折りたたむ
-
#abort ⇒ true
すでに挿入されているすべてのチャンクを削除して、アップロードを中止します。
-
#閉じる= BSON::ObjectId, オブジェクト
書込みストリームを閉じます。
-
#閉じました= true、false
ストリームが閉じられているかどうか。
-
#初期化(fs, オプション) = 書込み
コンストラクター
FS バケットにファイルを書き込むためのストリームを作成します。
-
書込み ( write ) (io) = ストリーム::書込み (write)
ソース ストリームまたは string から GridFS バケットに書き込みます。
-
#write_concern = Mongo::WriteConcern
アップロード時に使用される書込み保証 (write concern) を取得します。
コンストラクターの詳細
#初期化(fs, オプション) =書込み
FS バケットにファイルを書き込むためのストリームを作成します。
70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 |
# File 'build/ruby-driver-v2.19/lib/mongo/grid/stream/write.rb', 行70 デフォルト 初期化(fs, ) @fs = fs @Length = 0 @n = 0 @file_id = [:file_id] || BSON::ObjectId.新着情報 @options = .dup =開始 WriteConcern オブジェクト サポート の場合 @options[:write_concern].is_a?(WriteConcern::Base) # インスタンスをキャッシュして、不必要に再構築されないようにします。 @write_concern = @options[:write_concern] @options[:write_concern] = @write_concern.options end =end @options.freeze @filename = @options[:filename] @open = true end |
インスタンス属性の詳細
# file_id =オブジェクト(読み取り専用)
アップロードされるファイルのIDを返します。
36 37 38 |
# File 'build/ruby-driver-v2.19/lib/mongo/grid/stream/write.rb', 行36 デフォルト file_id @file_id end |
#ファイル名= string (読み取り専用)
アップロードされるファイルの名前を返します。
41 42 43 |
# File 'build/ruby-driver-v2.19/lib/mongo/grid/stream/write.rb', 行41 デフォルト ファイル名 @filename end |
# fs → FSbucket (読み取り専用)
fs このストリームが書き込む fs バケットを返します。
31 32 33 |
# File 'build/ruby-driver-v2.19/lib/mongo/grid/stream/write.rb', 行31 デフォルト fs @fs end |
オプション=ハッシュ(読み取り専用)
オプション 書込みストリーム オプション。
46 47 48 |
# File 'build/ruby-driver-v2.19/lib/mongo/grid/stream/write.rb', 行46 デフォルト @options end |
インスタンス メソッドの詳細
#abort ⇒ true
すでに挿入されているすべてのチャンクを削除して、アップロードを中止します。
168 169 170 171 |
# File 'build/ruby-driver-v2.19/lib/mongo/grid/stream/write.rb', 行168 デフォルト 中止 fs.chunks_collection.find({ :files_id => file_id }, @options).delete_many (@open = false) || true end |
#閉じる= BSON::ObjectId 、オブジェクト
書込みストリームを閉じます。
124 125 126 127 128 129 130 |
# File 'build/ruby-driver-v2.19/lib/mongo/grid/stream/write.rb', 行124 デフォルト 閉じる concern_open. update_Length ファイル_コレクション.insert_one(file_info, @options) @open = false file_id end |
#閉じました= true 、 false
ストリームが閉じられているかどうか。
156 157 158 |
# File 'build/ruby-driver-v2.19/lib/mongo/grid/stream/write.rb', 行156 デフォルト 閉じましたか !@open end |
書込み ( write ) (io) =ストリーム::書込み (write)
ソース ストリームまたは string から GridFS バケットに書き込みます。
98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 |
# File 'build/ruby-driver-v2.19/lib/mongo/grid/stream/write.rb', 行98 デフォルト 書込み (write)(io) concern_open. @indexes ||= ensure_indexes! @Length += 場合 io.respond_to?(:bytesize) stringオブジェクト数 io.bytesize else # IO オブジェクト io.サイズ end チャンク = ファイル::チャンク.分裂(io, file_info, @n) @n += チャンク.サイズ chunks_collection.insert_many(チャンク) ただし、 チャンク.空の場合 自己 end |
#write_concern = Mongo::WriteConcern
アップロード時に使用される書込み保証 (write concern) を取得します。
140 141 142 143 144 145 146 |
# File 'build/ruby-driver-v2.19/lib/mongo/grid/stream/write.rb', 行140 デフォルト write_concern @write_concern ||= 場合 wco = @options[:write_concern] || @options[:write] WriteConcern.得る(wco) else fs.write_concern end end |