(PECL stomp >= 0.1.0)
Stomp::abort -- stomp_abort — Deshacer una transacción en curso
Estilo orientado a objetos (método):
Estilo procedimental:
Deshacer una transacción en curso.
linkEstilo procedimental únicamente: El identificador stomp devuelto por la funciónstomp_connect().
transaction_idLa transacción a abortar.
headersArray asociativo que contiene los encabezados adicionales (ejemplo: receipt).
Ejemplo #1 Estilo orientado a objetos
<?php
/* conexión */
try {
$stomp = new Stomp('tcp://localhost:61613');
} catch(StompException $e) {
die('Connection failed: ' . $e->getMessage());
}
/* iniciar una transacción */
$stomp->begin('t1');
/* enviar un mensaje a la cola */
$stomp->send('/queue/foo', 'bar', array('transaction' => 't1'));
/* deshacer/abortar */
$stomp->abort('t1');
/* cerrar la conexión */
unset($stomp);
?>
Ejemplo #2 Estilo procedimental
<?php
/* conexión */
$link = stomp_connect('tcp://localhost:61613');
/* comprobar la conexión */
if (!$link) {
die('Connection failed: ' . stomp_connect_error());
}
/* iniciar una transacción */
stomp_begin($link, 't1');
/* enviar un mensaje a la cola 'foo' */
stomp_send($link, '/queue/foo', 'bar', array('transaction' => 't1'));
/* deshacer/abortar */
stomp_abort($link, 't1');
/* cerrar la conexión */
stomp_close($link);
?>Stomp es, por naturaleza, asíncrono. Una comunicación síncrona puede ser implementada añadiendo un encabezado receipt. Esto hará que los métodos no devuelvan nada hasta que el mensaje de confirmación no haya sido recibido o hasta que el tiempo de espera no sea alcanzado.