TsgcWSPServer_WAMPEventos › OnBeforeCancelCall

OnBeforeCancelCall Event

Disparado quando um cliente pede para cancelar uma RPC em andamento, dando ao servidor a chance de honrar ou recusar a requisição.

Sintaxe

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

Valor Padrão

Observações

Gerado quando um quadro CALLCANCEL chega para uma CALL previamente despachada identificada por CallId. Cancel é True por padrão, o que informa ao broker para parar de entregar resultados de progresso para aquela chamada e esperar um CallError terminal da aplicação. Defina Cancel como False para recusar o cancelamento — o RPC continuará em execução e seu CallResult ou CallError final ainda será enviado de volta. Usos típicos são consultas de longa duração, jobs em batch ou RPCs em segundo plano em que o chamador mudou de ideia.

Exemplo


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;

Voltar para Eventos