Main Content

delegateTo

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

別のプロバイダーにデリゲートする

説明

[getDataFnc,length] = delegateTo(provider,delegate,URI) は、RequestMessage の後続のすべてまたは一部のデータを delegate ContentProvider から提供するように設定します。このメソッドは、このオブジェクトのプロパティと指定されたパラメーターを使用してデリゲートのプロパティを初期化し、そのデリゲートを使用して新しいメッセージが送信されているかのように、delegatecompleteexpectedContentLengthstart の各メソッドを呼び出します。デリゲートからデータを取得するために呼び出す関数のハンドルが getDataFnc として返されます。

[data, stop] = getDataFcn(length)

引数については、getData の説明を参照してください。length の値は任意の値でかまいませんが、通常は、この呼び出しを getData メソッドで行い、メソッドに渡した値と同じ値を渡します。

メッセージの内容全体を提供するプロバイダーにデリゲートするには、start メソッドで delegateTo を呼び出します。デリゲートを使用してメッセージの内容の一部を取得する場合は、putData メソッドの適切な時点で delegateTo を呼び出します。

デリゲートからデータを取得するときは、必ず返された getDataFnc を使用します。デリゲートから他の方法でデータが返される可能性があるため、デリゲートの getData は直接呼び出さないでください。

[getDataFnc,length] = delegateTo(___,force) は、expectedContentLength メソッドでデータの長さを返すかどうかを示します。

入力引数

すべて展開する

コンテンツ プロバイダー。matlab.net.http.io.ContentProvider オブジェクトとして指定します。

後続のデータのプロバイダー。matlab.net.http.io.ContentProvider オブジェクトとして指定します。

処理中の要求の送信先。matlab.net.URI オブジェクトとして指定されます。この値は、呼び出し元の complete メソッドに対して指定された URI の値になります。

expectedContentLength メソッドでデータの長さを返すかどうか。true または false として指定します。delegateTo メソッドは、この値を expectedContentLength に渡します。

出力引数

すべて展開する

デリゲートからデータを取得する関数。関数ハンドルとして返されます。

expectedContentLength メソッドで返される値。バイト数として返されます。詳細については、ContentProvider.expectedContentLengthlength 出力引数を参照してください。

属性

Accessprotected

バージョン履歴

R2018a で導入