Main Content

delegateTo

클래스: matlab.net.http.io.ContentConsumer
네임스페이스: matlab.net.http.io

다른 소비자에게 위임

구문

[OK,bufsize] = delegateTo(consumer,delegate,header)

설명

[OK,bufsize] = delegateTo(consumer,delegate,header)delegateheader에 따라 이후 페이로드를 처리하는 소비자가 되도록 준비합니다. 여기서 consumer는 위임 주체가 되고, delegate는 대리자가 됩니다.

delegateTo는 대리자를 준비하기 위해 다음 속성을 설정합니다.

  • consumer.CurrentDelegatedelegate로 설정합니다.

  • delegate.Headerheader의 값으로 설정합니다.

  • delegate.MyDelegatorconsumer로 설정합니다.

  • Request, Response, URI와 같은 delegate 속성을 대응하는 consumer 속성으로 설정합니다.

그런 다음 delegateTo가 대리자의 initialize 메서드를 호출합니다. initializetrue를 반환하여 대리자가 메시지를 수신할 수 있음을 나타내면 delegateTostart 메서드를 호출합니다.

첫 번째 대리자에게 데이터가 종료되었음을 알리지 않은 채로 다른 대리자의 delegateTo를 호출하지 마십시오. 데이터가 종료된 첫 번째 대리자를 알리려면 delegate.putData(uint8.empty)를 호출하십시오.

대리자의 initialize 메서드는 OK를 설정하고 start 메서드는 bufsize를 설정합니다. bufsizeOKtrue인 경우에만 유효합니다. OKfalse이면 start 메서드가 호출되지 않은 것이므로 이 소비자가 해당 대리자의 putData를 호출하면 안 됩니다.

입력 인수

모두 확장

콘텐츠 소비자로, matlab.net.http.io.ContentConsumer 객체로 지정됩니다.

페이로드를 처리하는 소비자로, matlab.net.http.io.ContentConsumer 객체로 지정되거나 ContentConsumer를 반환하는 함수의 핸들로 지정됩니다. 함수의 핸들로 지정된 경우, 입력 인수는 없습니다.

현재 처리되고 있는 페이로드의 헤더로, matlab.net.http.HeaderField 객체로 지정됩니다.

출력 인수

모두 확장

소비자가 메시지 페이로드를 수신 또는 거부하는지 표시하며, truefalse로 반환됩니다. ResponseMessage의 상태 코드가 StatusCode.OK이면 디폴트 값은 true가 됩니다.

OKtrue이면 매 호출마다 또는 새 대리자로 전환하기 전에 또는 메시지의 끝에서 delegate.putData를 명시적으로 호출해야 하는데, 이는 호출자가 대리자에게 데이터를 입력하기 위해, 그리고 원하는 경우 대리자가 자신의 Response.Body에 삽입한 데이터를 호출자의 Response로 다시 복사하기 위한 것입니다.

OKfalse이거나 이전 대리자에게 데이터가 종료되었음을 알린 경우, 소비자는 delegateTo를 호출하여 동일한 메시지의 이후 데이터(또는 동일한 데이터)에 대해 다른 대리자를 호출할 수 있습니다.

최대 버퍼 크기로, double형으로 반환됩니다.

특성

Accessprotected

버전 내역

R2018a에 개발됨