Main Content

putData

クラス: matlab.net.http.io.MultipartConsumer
名前空間: matlab.net.http.io

MultipartConsumer のデータの次のバッファーを処理する

構文

[length,stop] = putData(consumer,data)

説明

[length,stop] = putData(consumer,data) は、マルチパート メッセージのパート全体の編成が完了するまで data のバッファーを蓄積します。そのうえで、パートのヘッダーの Content-Type フィールドを使用してそのタイプを処理できる適切な ContentConsumer デリゲートを特定し、そのデリゲートの Header プロパティをパートのヘッダーに設定して、そのデリゲートで initialize および start を呼び出します。その後、1 つ以上の putData 呼び出しでパートのペイロードを渡し、ペイロードの終了を示す putData(uint8.empty) を呼び出します。

このメソッドは、デリゲートの putData の最後の呼び出しの後、パートのヘッダーとデリゲートの Response.Body からコピーした Body を含む ResponseMessage を作成します (Body には、デリゲートに応じて、データが含まれる場合と含まれない場合があります)。新しい ResponseMessage は、このコンシューマーの Response.Body.Data プロパティの ResponseMessage オブジェクトの配列に追加され、メッセージの末尾に達した時点で各パートに対応する ResponseMessage が 1 つ格納されることになります。

このメソッドは putData のオーバーライドされたメソッドです。メッセージの末尾に達する前に受信を終了するために、このメソッドをオーバーライドしてメッセージの末尾 (data が空でない場合) よりも前に stop=true を返す場合は、このスーパークラス メソッドを stop の設定後に MATLAB® で通常呼び出される後続の putData(uint8.empty) で呼び出さないようにしてください。そうしないと、メッセージが途中で終了したことが原因で MultipartConsumer から無効なメッセージの例外が返されます。

入力引数

すべて展開する

コンテンツ コンシューマー。matlab.net.http.io.MultipartConsumer オブジェクトとして指定します。

matlab.net.http.ResponseMessage オブジェクトの生データのバッファー。空でない uint8 ベクトル、uint8.empty、または [] として指定します。これらの値の詳細については、ContentConsumer.putData メソッドのdata入力引数を参照してください。

data が、メッセージが終了したこととデリゲートがあったことを示す [] である場合、このオブジェクトの Response プロパティにデリゲートの Response がコピーされます。

出力引数

すべて展開する

処理したデータの長さ。double または空の double として返されます。詳細については、ContentConsumer.putDatasize引数を参照してください。

このメッセージの以降のデータを受信するかどうかを示します。true または false として返されます。詳細については、ContentConsumer.putDatastop引数を参照してください。

属性

Accesspublic

バージョン履歴

R2018a で導入