TsgcWSPServer_WAMPEventos › OnBeforeCancelCall

OnBeforeCancelCall Evento

Se activa cuando un cliente solicita cancelar una llamada RPC en curso, dando al servidor la oportunidad de aceptar o rechazar la solicitud.

Sintaxis

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

Valor Predeterminado

Observaciones

Se dispara cuando llega un frame CALLCANCEL para una llamada CALL previamente despachada identificada por CallId. Cancel es True por defecto, lo que indica al broker que deje de entregar resultados de progreso para esa llamada y que espere un CallError terminal de la aplicación. Establezca Cancel en False para rechazar la cancelación — el RPC seguirá ejecutándose y su CallResult o CallError final seguirá enviándose. Los usos habituales son consultas de larga duración, trabajos por lotes o RPCs en segundo plano donde el llamante ha cambiado de opinión.

Ejemplo


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;

Volver a Eventos