TsgcWSPServer_WAMPEvents › OnBeforeCancelCall

OnBeforeCancelCall Zdarzenie

Wywoływane, gdy klient prosi o anulowanie trwającego wywołania RPC, dając serwerowi szansę na spełnienie lub odrzucenie żądania.

Składnia

property OnBeforeCancelCall: TsgcWSBeforeCancelCallEvent;
// TsgcWSBeforeCancelCallEvent = procedure(Connection: TsgcWSConnection; const CallId: string; var Cancel: Boolean) of object

Wartość domyślna

Uwagi

Wywoływane po nadejściu ramki CALLCANCEL dla wcześniej wysłanego wywołania CALL identyfikowanego przez CallId. Wartość Cancel jest domyślnie ustawiona na True, co informuje brokera o konieczności zaprzestania dostarczania wyników pośrednich dla danego wywołania i oczekiwania na końcowy komunikat CallError od aplikacji. Ustawienie wartości Cancel na False powoduje odrzucenie anulowania. Wywołanie RPC będzie kontynuowane, a jego końcowy CallResult lub CallError zostanie mimo to odesłany. Typowe zastosowania obejmują długo trwające zapytania, zadania wsadowe lub wywołania RPC w tle, gdy wywołujący zmienił zdanie.

Przykład


procedure TForm1.WAMPServerBeforeCancelCall(Connection: TsgcWSConnection;
  const CallId: string; var Cancel: Boolean);
begin
  // honour the cancel and respond with an error so the caller resolves
  Cancel := True;
  WSPServerWAMP1.CallError(Connection, CallId,
    'http://example.com/errors/cancelled', 'call cancelled by client');
end;

Powrót do Zdarzeń