TsgcWSPServer_WAMPEventi › OnBeforeCancelCall

OnBeforeCancelCall Event

Si attiva quando un client chiede di annullare un RPC in corso, dando al server la possibilità di onorare o rifiutare la richiesta.

Sintassi

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

Valore predefinito

Note

Generato quando arriva un frame CALLCANCEL per una CALL precedentemente inoltrata identificata da CallId. Cancel è True per impostazione predefinita, il che indica al broker di interrompere la consegna dei risultati progressivi per quella chiamata e di aspettarsi un CallError terminale dall'applicazione. Impostare Cancel su False per rifiutare la cancellazione — la RPC continuerà a essere eseguita e il suo CallResult o CallError finale verrà comunque inviato indietro. Utilizzi tipici sono query a lungo termine, batch job o RPC in background in cui il chiamante ha cambiato idea.

Esempio


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;

Torna agli Eventi